public void TestModelAsList() { var expected = TestModelAsListModel.MakeTestModelAsList(); var key = _databaseInstance.SaveAsync(expected).Result; var actual = _databaseInstance.LoadAsync <TestModelAsListModel>(key).Result; Assert.IsNotNull(actual, "Save/load failed: model is null."); Assert.AreEqual(expected.Id, actual.Id, "Save/load failed: key mismatch."); Assert.AreEqual(expected.Count, actual.Count, "Save/load failed: list size mismatch."); for (var x = 0; x < expected.Count; x++) { Assert.AreEqual(expected[x].Key, actual[x].Key, "Save/load failed: key mismatch."); Assert.AreEqual(expected[x].Data, actual[x].Data, "Save/load failed: data mismatch."); } }
public void TestModelAsListWithParentReference() { var expected = TestModelAsListModel.MakeTestModelAsListWithParentReference(); var key = _databaseInstance.SaveAsync(expected).Result; var actual = _databaseInstance.LoadAsync <TestModelAsListModel>(key).Result; Assert.NotNull(actual); //Save/load failed: model is null."); Assert.Equal(expected.Id, actual.Id); //Save/load failed: key mismatch."); Assert.Equal(expected.Count, actual.Count); //Save/load failed: list size mismatch."); for (var x = 0; x < expected.Count; x++) { Assert.Equal(expected[x].Key, actual[x].Key); //Save/load failed: key mismatch."); Assert.Equal(expected[x].Data, actual[x].Data); //Save/load failed: data mismatch."); Assert.Equal(expected, expected[x].Parent); //Parent doesn't match"); } }
internal static TestModel MakeTestModel(TestModelAsListModel parentModel) { return new TestModel { Data = Guid.NewGuid().ToString(), Data2 = Guid.NewGuid().ToString(), Date = DateTime.Now.AddSeconds(_random.Next()), Key = _idx++, SubClass = new TestSubclass { NestedText = Guid.NewGuid().ToString() }, SubClass2 = new TestSubclass2 { NestedText = Guid.NewGuid().ToString() }, SubStruct = new TestSubStruct { NestedId = _idx, NestedString = Guid.NewGuid().ToString() }, Parent = parentModel }; }