public void TestSerializeFeguson() { double[,] a = { { 0, 1 }, { 1, 0 } }; double[] pi = { 1, 0 }; double[,] f = { { 0, 1 }, { 0, 1 } }; double[,] b = { { 1, 0 }, { 0, 1 } }; HsmFergusonModel initialModel = new HsmFergusonModel(); initialModel.A = a; initialModel.B = b; initialModel.F = f; initialModel.Pi = pi; JsonRepresentation <HsmFergusonModel> jsonSerializer = new JsonRepresentation <HsmFergusonModel>(); string serializedModel = jsonSerializer.Serialize(initialModel); Assert.IsNotNull(serializedModel); HsmFergusonModel deserializedModel = jsonSerializer.Deserialize(serializedModel); Assert.IsNotNull(deserializedModel); Assert.AreEqual(initialModel.Type, deserializedModel.Type); Assert.AreEqual(initialModel.N, deserializedModel.N); Assert.AreEqual(initialModel.Q, deserializedModel.Q); CollectionAssert.AreEqual(initialModel.A, deserializedModel.A); CollectionAssert.AreEqual(initialModel.B, deserializedModel.B); CollectionAssert.AreEqual(initialModel.F, deserializedModel.F); CollectionAssert.AreEqual(initialModel.Pi, deserializedModel.Pi); }
/// <summary> /// Save meta to file immediately(blocking) /// </summary> /// <exception cref="IOException"></exception> public void SaveForce() { var representation = new JsonRepresentation { name = Name, creationDateTime = CreationDateTime, updateDateTime = UpdateDateTime }; var json = JsonUtility.ToJson(representation, Debug.isDebugBuild); using (var streamWriter = new StreamWriter(_file, false, Encoding.UTF8)) { streamWriter.Write(json); streamWriter.Flush(); } }
public void TestSerializeHsmQp() { double[,] a = { { 0, 1 }, { 1, 0 } }; double[] pi = { 1, 0 }; double[,] f = { { 0, 1 }, { 0, 1 } }; double[,] b = { { 1, 0 }, { 0, 1 } }; double[] per = { 1, 0 }; double[][] rho = new double[2][]; rho[0] = new[] { 0.3D, 0.7D }; rho[1] = new[] { 0.3D, 0.2D, 0.5D }; HsmQpModel initialModel = new HsmQpModel(); initialModel.A = a; initialModel.B = b; initialModel.F = f; initialModel.Pi = pi; initialModel.Rho = rho; initialModel.Per = per; JsonRepresentation <HsmQpModel> jsonSerializer = new JsonRepresentation <HsmQpModel>(); string serializedModel = jsonSerializer.Serialize(initialModel); Assert.IsNotNull(serializedModel); HsmQpModel deserializedModel = jsonSerializer.Deserialize(serializedModel); Assert.IsNotNull(deserializedModel); Assert.AreEqual(initialModel.Type, deserializedModel.Type); Assert.AreEqual(initialModel.N, deserializedModel.N); Assert.AreEqual(initialModel.Q, deserializedModel.Q); CollectionAssert.AreEqual(initialModel.A, deserializedModel.A); CollectionAssert.AreEqual(initialModel.B, deserializedModel.B); CollectionAssert.AreEqual(initialModel.F, deserializedModel.F); CollectionAssert.AreEqual(initialModel.Per, deserializedModel.Per); CollectionAssert.AreEqual(initialModel.Pi, deserializedModel.Pi); Assert.AreEqual(initialModel.Rho.Length, deserializedModel.Rho.Length); CollectionAssert.AreEqual(initialModel.Rho[0], deserializedModel.Rho[0]); CollectionAssert.AreEqual(initialModel.Rho[1], deserializedModel.Rho[1]); }
internal void FLEncode(FLEncoder *enc) { var extra = Native.FLEncoder_GetExtraInfo(enc); if (extra != null) { // This blob is attached to a document, so save the full metadata var document = GCHandle.FromIntPtr((IntPtr)extra).Target as MutableDocument; var database = document.Database; try { Install(database); } catch (Exception) { WriteLog.To.Database.W(Tag, "Error installing blob to database, throwing..."); throw; } } JsonRepresentation.FLEncode(enc); }
public IHsmModel CreateModel(String json) { ModelType modelType = GetModelType(json); switch (modelType) { case ModelType.HsmFergusonModel: { var jsonRepresentation = new JsonRepresentation <HsmFergusonModel>(); return(jsonRepresentation.Deserialize(json)); } case ModelType.HsmQpModel: { var jsonRepresentation = new JsonRepresentation <HsmQpModel>(); return(jsonRepresentation.Deserialize(json)); } default: { throw new NotImplementedException("Model Type is not supported"); } } }
internal void FLSlotSet(FLSlot *slot) { JsonRepresentation.FLSlotSet(slot); }
public void ParameterValueFormat(string expected, params JsonAttribute[] jsonAttributes) { JsonRepresentation jr = new JsonRepresentation(jsonAttributes); Assert.AreEqual(expected, jr.GetAttributeValue()); }