diff --git a/LearnositySDK.sln b/LearnositySDK.sln index 22ca26b..3eda81b 100755 --- a/LearnositySDK.sln +++ b/LearnositySDK.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2013 -VisualStudioVersion = 12.0.40629.0 +# Visual Studio 14 +VisualStudioVersion = 14.0.23107.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LearnositySDK", "LearnositySDK\LearnositySDK.csproj", "{4A1F8BE2-02A2-424D-AE33-11F742E18EED}" EndProject @@ -17,6 +17,10 @@ Global {4A1F8BE2-02A2-424D-AE33-11F742E18EED}.Debug|Any CPU.Build.0 = Debug|Any CPU {4A1F8BE2-02A2-424D-AE33-11F742E18EED}.Release|Any CPU.ActiveCfg = Release|Any CPU {4A1F8BE2-02A2-424D-AE33-11F742E18EED}.Release|Any CPU.Build.0 = Release|Any CPU + {1A1FFC7A-6BBA-4B37-8734-25A4AB46E0C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1A1FFC7A-6BBA-4B37-8734-25A4AB46E0C2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1A1FFC7A-6BBA-4B37-8734-25A4AB46E0C2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1A1FFC7A-6BBA-4B37-8734-25A4AB46E0C2}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/LearnositySDK/LearnositySDK.csproj b/LearnositySDK/LearnositySDK.csproj index 80a0390..26e32c5 100755 --- a/LearnositySDK/LearnositySDK.csproj +++ b/LearnositySDK/LearnositySDK.csproj @@ -1,5 +1,5 @@  - + Debug AnyCPU @@ -10,7 +10,7 @@ Properties LearnositySDK LearnositySDK - v3.5 + v4.5.2 512 @@ -22,6 +22,7 @@ DEBUG;TRACE prompt 4 + false pdbonly @@ -30,6 +31,7 @@ TRACE prompt 4 + false diff --git a/LearnositySDK/Utils/JsonObject.cs b/LearnositySDK/Utils/JsonObject.cs index 6797f7c..0c87410 100755 --- a/LearnositySDK/Utils/JsonObject.cs +++ b/LearnositySDK/Utils/JsonObject.cs @@ -14,7 +14,7 @@ public class JsonObject : ICloneable private bool array; private int arrayIndex; private Dictionary di; - private Dictionary df; + private Dictionary dd; private Dictionary ds; private Dictionary dj; private Dictionary db; @@ -27,13 +27,13 @@ public JsonObject(bool isArray = false) this.array = isArray; this.arrayIndex = 0; // lastInsertedIndex this.di = new Dictionary(); - this.df = new Dictionary(); + this.dd = new Dictionary(); this.ds = new Dictionary(); this.dj = new Dictionary(); this.db = new Dictionary(); this.da = new Dictionary(); this.dt = new Dictionary(); - this.types = new string[7] { "int", "string", "JsonObject", "bool", "JsonArray", "float", "NULL" }; + this.types = new string[7] { "int", "string", "JsonObject", "bool", "JsonArray", "decimal", "NULL" }; } public bool isArray() @@ -55,7 +55,7 @@ public void set(int value) /// Sets/adds the value /// /// - public void set(float value) + public void set(decimal value) { this.set(this.arrayIndex, value); this.arrayIndex++; @@ -138,7 +138,7 @@ public void set(int key, int value) /// /// /// - public void set(int key, float value) + public void set(int key, decimal value) { this.set(key.ToString(), value); } @@ -208,9 +208,9 @@ public void set(string key, int value) /// /// /// - public void set(string key, float value) + public void set(string key, decimal value) { - this.set("float", key, value); + this.set("decimal", key, value); } /// @@ -268,7 +268,7 @@ public void remove(string key) { this.db.Remove(key); this.di.Remove(key); - this.df.Remove(key); + this.dd.Remove(key); this.ds.Remove(key); this.dj.Remove(key); this.da.Remove(key); @@ -325,7 +325,7 @@ public void set(string type, string key, Object value) break; case 4: this.da.Add(key, (JsonObject)value); break; - case 5: this.df.Add(key, (float)value); + case 5: this.dd.Add(key, (decimal)value); break; case 6: this.dt.Add(key, (JToken)value); break; @@ -453,10 +453,10 @@ public Object get(string key, ref string type) return this.da[key]; } - if (this.df.ContainsKey(key)) + if (this.dd.ContainsKey(key)) { - type = "float"; - return this.df[key]; + type = "decimal"; + return this.dd[key]; } if (this.dt.ContainsKey(key)) @@ -530,7 +530,7 @@ public string[] getKeys() l.Add(item.Key); } - foreach (KeyValuePair item in this.df) + foreach (KeyValuePair item in this.dd) { l.Add(item.Key); } @@ -578,7 +578,7 @@ public int count() count += this.db.Count; count += this.dj.Count; count += this.da.Count; - count += this.df.Count; + count += this.dd.Count; count += this.dt.Count; return count; @@ -625,9 +625,9 @@ public string toJson() { sb.Append(this.di[key].ToString()); } - else if (this.df.ContainsKey(key)) + else if (this.dd.ContainsKey(key)) { - sb.Append(this.df[key].ToString("R", CultureInfo.InvariantCulture)); + sb.Append(this.dd[key].ToString(CultureInfo.InvariantCulture)); } else if (this.ds.ContainsKey(key)) { @@ -671,14 +671,14 @@ public string toJson() index++; } - foreach (KeyValuePair item in this.df) + foreach (KeyValuePair item in this.dd) { if (index > 0) { sb.Append(","); } - sb.Append(Json.encode(item.Key) + ":" + item.Value.ToString("R", CultureInfo.InvariantCulture)); + sb.Append(Json.encode(item.Key) + ":" + item.Value.ToString(CultureInfo.InvariantCulture)); index++; } diff --git a/LearnositySDK/Utils/JsonObjectFactory.cs b/LearnositySDK/Utils/JsonObjectFactory.cs index 8aca1c6..8493e93 100755 --- a/LearnositySDK/Utils/JsonObjectFactory.cs +++ b/LearnositySDK/Utils/JsonObjectFactory.cs @@ -96,7 +96,7 @@ public static JsonObject fromJToken(JsonObject jsonObject, string key, JToken it jsonObject.set(key, (int)item); break; case JTokenType.Float: - jsonObject.set(key, (float)item); + jsonObject.set(key, (decimal)item); break; case JTokenType.String: jsonObject.set(key, (string)item); diff --git a/LearnositySDK/packages.config b/LearnositySDK/packages.config index 9b49c9e..64b5d8e 100644 --- a/LearnositySDK/packages.config +++ b/LearnositySDK/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/UnitTestProject1/CheckingEqualityUnitTests.cs b/UnitTestProject1/CheckingEqualityUnitTests.cs index e017531..d9e448d 100644 --- a/UnitTestProject1/CheckingEqualityUnitTests.cs +++ b/UnitTestProject1/CheckingEqualityUnitTests.cs @@ -14,7 +14,7 @@ public class CheckingEqualityUnitTests [TestMethod] public void inputJSONEqualsOutput() { - string JSON = "{\"boolean\":true,\"integer\":1,\"float\":1.2,\"string\":\"string\",\"object\":{\"property\":null},\"array\":[null,[2]]}"; + string JSON = "{\"boolean\":true,\"integer\":1,\"decimal\":1.2,\"string\":\"string\",\"object\":{\"property\":null},\"array\":[null,[2]]}"; JsonObject jo = JsonObjectFactory.fromString(JSON); string outputJSON = jo.toJson(); @@ -45,7 +45,7 @@ public void inputJSONEqualsOutput() [TestMethod] public void JSONEqualityMethodWorksProperly() { - string JSON = "{\"boolean\":true,\"integer\":1,\"float\":1.2,\"string\":\"string\",\"object\":{\"property\":null},\"array\":[null,[2]]}"; + string JSON = "{\"boolean\":true,\"integer\":1,\"decimal\":1.2,\"string\":\"string\",\"object\":{\"property\":null},\"array\":[null,[2]]}"; // building a structure for comparison purposes JsonObject jo = new JsonObject(); @@ -54,7 +54,7 @@ public void JSONEqualityMethodWorksProperly() JsonObject jaInner = new JsonObject(true); jo.set("boolean", true); jo.set("integer", 1); - jo.set("float", 1.2f); + jo.set("decimal", 1.2m); jo.set("string", "string"); jo.set("object", joInner); jo.set("array", ja); diff --git a/UnitTestProject1/LearnositySDKUnitTests.csproj b/UnitTestProject1/LearnositySDKUnitTests.csproj index 67c0e00..3809b86 100644 --- a/UnitTestProject1/LearnositySDKUnitTests.csproj +++ b/UnitTestProject1/LearnositySDKUnitTests.csproj @@ -8,7 +8,7 @@ Properties UnitTestProject1 UnitTestProject1 - v3.5 + v4.5.2 512 {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 10.0 @@ -26,6 +26,7 @@ DEBUG;TRACE prompt 4 + false pdbonly @@ -34,6 +35,7 @@ TRACE prompt 4 + false diff --git a/UnitTestProject1/MergingObjectsUnitTests.cs b/UnitTestProject1/MergingObjectsUnitTests.cs index d999c4e..bb8e809 100644 --- a/UnitTestProject1/MergingObjectsUnitTests.cs +++ b/UnitTestProject1/MergingObjectsUnitTests.cs @@ -140,7 +140,7 @@ public void RecursiveMergingJSONObjectsWorksProperly() jo1a.setNull(); jo1a.set("string"); jo1a.set(1); - jo1a.set(1.2f); + jo1a.set(1.2m); jo1a.set(jo1ao1); jo1a.set(jo1ao2); jo1ao1.set("a", "a1"); @@ -158,7 +158,7 @@ public void RecursiveMergingJSONObjectsWorksProperly() jo2a.setNull(); jo2a.set("string"); jo2a.set(1); - jo2a.set(1.2f); + jo2a.set(1.2m); jo2a.set(jo2ao1); jo2a.set(jo2ao2); jo2ao1.set("a", "a2");