public void Should_be_able_to_add_and_replace_for_dictionary(ClassWithFields models, Customer myclass, int key, Customer replacement) { var newModels = models.With(o => o.MyDictionary.Add(key, myclass)); Assert.Equal(myclass, newModels.MyDictionary[key]); var newNewModels = models.With(o => o.MyDictionary.Replace(key, replacement)); Assert.Equal(replacement, newNewModels.MyDictionary[key]); }
public static void TypeWithFieldWorks() { var c = new ClassWithFields(); string json = Json.Serialize(c); var jsonC = Json.Deserialize <ClassWithFieldsAndNoInit>(json); Assert.AreEqual(c.byteArrayField, jsonC.byteArrayField, "#1"); Assert.AreEqual(c.guidField.ToByteArray(), jsonC.guidField.ToByteArray(), "#2"); Assert.AreEqual(c.typeField, jsonC.typeField, "#3"); Assert.AreEqual(c.charField, jsonC.charField, "#4"); Assert.AreEqual(c.longField.ToString(), jsonC.longField.ToString(), "#5"); Assert.AreEqual(c.ulongField.ToString(), jsonC.ulongField.ToString(), "#6"); Assert.AreEqual(c.decimalField.ToString(), jsonC.decimalField.ToString(), "#7"); Assert.AreEqual(c.dateField.ToString(), jsonC.dateField.ToString(), "#8"); Assert.AreEqual(c.enumField, jsonC.enumField, "#9"); Assert.AreEqual(c.arrayField, jsonC.arrayField, "#10"); Assert.AreEqual(c.listField.Count, jsonC.listField.Count, "#11"); Assert.AreEqual(c.listField[0], jsonC.listField[0], "#12"); Assert.AreEqual(c.listField[1], jsonC.listField[1], "#13"); Assert.AreEqual(c.listField[2], jsonC.listField[2], "#14"); Assert.AreEqual(c.dictField.Count, jsonC.dictField.Count, "#15"); Assert.AreEqual(c.dictField["i1"], jsonC.dictField["i1"], "#16"); Assert.AreEqual(c.dictField["i2"], jsonC.dictField["i2"], "#17"); Assert.AreEqual(c.dictField["i3"], jsonC.dictField["i3"], "#18"); }
public void DeepClone_ClassWithFields(TypeModel model) { var classWithFields = new ClassWithFields( 12, "lalala", new Guid("e0947b41-437a-4bda-8a47-16451417f307"), new ItemClass() { Message = "hello" }, new List<int>() { 23, 45 }, EnumTest.Item2, 0.00000m, 1.2345678m); var clone = (ClassWithFields)model.DeepClone(classWithFields); Assert.AreEqual(classWithFields.Guid, clone.Guid); Assert.AreEqual(classWithFields.Integer, clone.Integer); Assert.AreEqual(classWithFields.ItemClass.Message, clone.ItemClass.Message); Assert.AreEqual(classWithFields.List.Count, clone.List.Count); Assert.AreEqual(classWithFields.List[0], clone.List[0]); Assert.AreEqual(classWithFields.List[1], clone.List[1]); Assert.AreEqual(classWithFields.S, clone.S); Assert.AreEqual(classWithFields.EnumTest, clone.EnumTest); Assert.AreEqual(classWithFields._dec1, clone._dec1); Assert.AreEqual(classWithFields._dec2, clone._dec2); }
public void Should_be_able_to_add_and_remove_from_dictionary(ClassWithFields models, Customer myclass, int key) { var newModels = models.With(o => o.MyDictionary.Add(key, myclass)); Assert.Equal(myclass, newModels.MyDictionary[key]); var newNewModels = models.With(o => o.MyDictionary.Remove(key)); Assert.False(newNewModels.MyDictionary.ContainsKey(key)); }
public static void TypeWithFieldWorks() { var c = new ClassWithFields(); dynamic raw = null; //@ raw = Newtonsoft.Json.JsonConvert.SerializeObject(c, 0, {}, true); Assert.AreEqual(System.Convert.ToBase64String(c.byteArrayField), raw.byteArrayField, "#1"); Assert.AreEqual(c.guidField.ToString(), raw.guidField, "#2"); Assert.AreEqual(typeof(SerializationTests).FullName, raw.typeField, "#3"); Assert.AreEqual("a", raw.charField, "#4"); Assert.AreEqual(0, raw.longField, "#5"); Assert.AreEqual(0, raw.ulongField, "#6"); Assert.AreEqual(0, raw.decimalField, "#7"); Assert.NotNull(raw.dateField, "#8"); dynamic rawDateField = null; //@ rawDateField = System.DateTime.format(c.dateField, "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'FFFFFFFK"); Assert.AreEqual(rawDateField, raw.dateField, "#9 " + raw.dateField); Assert.AreEqual(0, raw.enumField, "#10"); Assert.AreEqual(new int[] { 1, 2, 3 }, raw.arrayField, "#11"); Assert.AreEqual(new int[] { 0, 1, 2 }, raw.listField, "#12"); Assert.AreDeepEqual(Script.ToPlainObject(new { i1 = 0, i2 = 1, i3 = 2 }), raw.dictField, "#13"); }
public void CanReadObjectWithFields() { var withFields = new ClassWithFields("Private", "Protected", "PublicReadonly", "Public"); var read = _reader.Read(withFields); Assert.Equal(2, read.Properties.Count); }
public void DoNotFailOnStringFields() { using (var db = NewTestInstance()) { var withStringField = new ClassWithFields {aField = "testData"}; db.Store(withStringField); } }
public void Should_be_able_to_add_and_replace_for_dictionary(ClassWithFields models, Customer myclass, int key, Customer replacement) { var newModels = models.With(o => o.MyDictionary.Add(key, myclass)); Assert.Equal(myclass, newModels.MyDictionary[key]); var newNewModels = models.With(o => o.MyDictionary.Replace(key, replacement)); Assert.Equal(replacement, newNewModels.MyDictionary[key]); }
public void Should_be_able_to_add_and_remove_from_dictionary(ClassWithFields models, Customer myclass, int key) { var newModels = models.With(o => o.MyDictionary.Add(key, myclass)); Assert.Equal(myclass, newModels.MyDictionary[key]); var newNewModels = models.With(o => o.MyDictionary.Remove(key)); Assert.False(newNewModels.MyDictionary.ContainsKey(key)); }
public void DoNotFailOnStringFields() { using (var db = NewTestInstance()) { var withStringField = new ClassWithFields { aField = "testData" }; db.Store(withStringField); } }
public void ConcreteClassWithFields() { var data = new ClassWithFields { Name = "Chris", Value = "10000", TaxedValue = "6000", Currency = "dollars", InCa = "InCa" }; Render(data); }
public void PrintClassWithPublicFields() { // Arrange MockObjectVisitor visitor = CreateObjectVisitor(); ClassWithFields value = new ClassWithFields(); value.Foo = "John"; value.Bar = 1; // Actt visitor.Print(value); // Assert Assert.True(visitor.Members.Contains("string Foo = John")); Assert.True(visitor.Members.Contains("int Bar = 1")); }
public static void TypeWithFieldWorks() { var c = new ClassWithFields(); dynamic raw = JSON.Plain(c); Assert.AreEqual(System.Convert.ToBase64String(c.byteArrayField), raw.byteArrayField, "#1"); Assert.AreEqual(c.guidField.ToString(), raw.guidField, "#2"); Assert.AreEqual(typeof(SerializationTests).FullName, raw.typeField, "#3"); Assert.AreEqual("a", raw.charField, "#4"); Assert.AreEqual(0, raw.longField, "#5"); Assert.AreEqual(0, raw.ulongField, "#6"); Assert.AreEqual(0, raw.decimalField, "#7"); Assert.NotNull(raw.dateField, "#8"); Assert.AreEqual(((dynamic)c.dateField).toJSON(), raw.dateField, "#9 " + raw.dateField); Assert.AreEqual("Item1", raw.enumField, "#10"); Assert.AreEqual(new int[] { 1, 2, 3 }, raw.arrayField, "#11"); Assert.AreEqual(new string[] { "Item1", "Item2", "Item3" }, raw.listField, "#12"); Assert.AreDeepEqual(Script.ToPlainObject(new { i1 = "Item1", i2 = "Item2", i3 = "Item3" }), raw.dictField, "#12"); }
public void PrintClassWithPublicFields() { // Arrange MockObjectVisitor visitor = CreateObjectVisitor(); ClassWithFields value = new ClassWithFields(); value.Foo = "John"; value.Bar = 1; // Actt visitor.Print(value); // Assert Assert.True(visitor.Members.Contains("string Foo = John")); Assert.True(visitor.Members.Contains("int Bar = 1")); }