You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucenenet.apache.org by sy...@apache.org on 2016/09/11 21:31:12 UTC
[41/50] [abbrv] lucenenet git commit: Fixed ugly string formatting in
the ToStringUtils.Boost code that was carried over from Luene.Net 3.0.3.
Added a test to ensure that the functionality is identical.
Fixed ugly string formatting in the ToStringUtils.Boost code that was carried over from Luene.Net 3.0.3. Added a test to ensure that the functionality is identical.
Project: http://git-wip-us.apache.org/repos/asf/lucenenet/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucenenet/commit/66ab301f
Tree: http://git-wip-us.apache.org/repos/asf/lucenenet/tree/66ab301f
Diff: http://git-wip-us.apache.org/repos/asf/lucenenet/diff/66ab301f
Branch: refs/heads/master
Commit: 66ab301f2916759160da9faf9eca0f5576b2968e
Parents: 5706931
Author: Shad Storhaug <sh...@shadstorhaug.com>
Authored: Sun Aug 7 18:02:47 2016 +0700
Committer: Shad Storhaug <sh...@shadstorhaug.com>
Committed: Fri Sep 2 22:31:14 2016 +0700
----------------------------------------------------------------------
src/Lucene.Net.Core/Util/ToStringUtils.cs | 6 +--
src/Lucene.Net.Tests/Lucene.Net.Tests.csproj | 1 +
.../core/Util/TestToStringUtils.cs | 48 ++++++++++++++++++++
3 files changed, 51 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/66ab301f/src/Lucene.Net.Core/Util/ToStringUtils.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Util/ToStringUtils.cs b/src/Lucene.Net.Core/Util/ToStringUtils.cs
index e5f5a0d..3e1f938 100644
--- a/src/Lucene.Net.Core/Util/ToStringUtils.cs
+++ b/src/Lucene.Net.Core/Util/ToStringUtils.cs
@@ -37,10 +37,8 @@ namespace Lucene.Net.Util
{
if (boost != 1.0f)
{
- float boostAsLong = (long)boost;
- if (boostAsLong == boost)
- return "^" + boost.ToString(".0").Replace(CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator, ".");
- return "^" + boost.ToString().Replace(CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator, ".");
+ // .NET compatibility fix
+ return "^" + boost.ToString(".0######", CultureInfo.InvariantCulture);
}
else
return "";
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/66ab301f/src/Lucene.Net.Tests/Lucene.Net.Tests.csproj
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/Lucene.Net.Tests.csproj b/src/Lucene.Net.Tests/Lucene.Net.Tests.csproj
index 5c148a2..4755965 100644
--- a/src/Lucene.Net.Tests/Lucene.Net.Tests.csproj
+++ b/src/Lucene.Net.Tests/Lucene.Net.Tests.csproj
@@ -589,6 +589,7 @@
<Compile Include="core\Util\TestTimSorter.cs">
<SubType>Code</SubType>
</Compile>
+ <Compile Include="core\Util\TestToStringUtils.cs" />
<Compile Include="core\Util\TestUnicodeUtil.cs">
<SubType>Code</SubType>
</Compile>
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/66ab301f/src/Lucene.Net.Tests/core/Util/TestToStringUtils.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Util/TestToStringUtils.cs b/src/Lucene.Net.Tests/core/Util/TestToStringUtils.cs
new file mode 100644
index 0000000..a48cd23
--- /dev/null
+++ b/src/Lucene.Net.Tests/core/Util/TestToStringUtils.cs
@@ -0,0 +1,48 @@
+\ufeffusing Lucene.Net.Util;
+using NUnit.Framework;
+using System.Globalization;
+using System.Threading;
+
+namespace Lucene.Net.Core.Util
+{
+ /// <summary>
+ /// This test was added for .NET compatibility
+ /// </summary>
+ public class TestToStringUtils : LuceneTestCase
+ {
+ CultureInfo originalCulture;
+ public override void SetUp()
+ {
+ base.SetUp();
+ originalCulture = Thread.CurrentThread.CurrentCulture;
+ }
+
+ public override void TearDown()
+ {
+ Thread.CurrentThread.CurrentCulture = originalCulture;
+ base.TearDown();
+ }
+
+ /// <summary>
+ /// Check to ensure that the Boost function is properly converted in every possible culture.
+ /// </summary>
+ [Test]
+ public void TestBoost()
+ {
+ float boostNormal = 1f;
+ float boostFractional = 2.5f;
+ float boostNonFractional = 5f;
+ float boostLong = 1.111111111f;
+
+ foreach (CultureInfo culture in CultureInfo.GetCultures(CultureTypes.SpecificCultures | CultureTypes.NeutralCultures))
+ {
+ Thread.CurrentThread.CurrentCulture = culture;
+
+ assertEquals("", ToStringUtils.Boost(boostNormal));
+ assertEquals("^2.5", ToStringUtils.Boost(boostFractional));
+ assertEquals("^5.0", ToStringUtils.Boost(boostNonFractional));
+ assertEquals("^1.111111", ToStringUtils.Boost(boostLong));
+ }
+ }
+ }
+}