コード例 #1
0
        public void SaveDatabaseObject_ObjectInPopulated_ObjectIsSavedToDatabase()
        {
            const string json = @"{'someOtherObject': true}";

            IDatabaseAccessor mockDatabaseAccessor = CreateMockDatabaseAccessor(json);
            var sut = CreateDatabaseManager(mockDatabaseAccessor);
            var testDatabaseObject = new TestDatabaseObject
            {
                IntProperty = 5, StringProperty = "String", List = new[]
                {
                    true, false, true
                }
            };

            sut.SaveDatabaseObject("databaseObject", testDatabaseObject);
            Mock.Get(mockDatabaseAccessor).Verify(da => da.WriteToDatabase(It.IsAny <string>()), Times.Once());

            var savedJsonTree = JObject.Parse(_jsonWrittenToDatabase);

            savedJsonTree["someOtherObject"].ToObject <bool>().ShouldBe(true);
            var savedTestDatabaseObject = JsonConvert.DeserializeObject <TestDatabaseObject>(savedJsonTree["databaseObject"].ToString());

            savedTestDatabaseObject.StringProperty.ShouldBe(testDatabaseObject.StringProperty);
            savedTestDatabaseObject.IntProperty.ShouldBe(testDatabaseObject.IntProperty);
            savedTestDatabaseObject.List.ShouldMatch(testDatabaseObject.List.ToArray());
        }
コード例 #2
0
        public void SaveThenLoadDatabaseObject_ObjectIsSavedAndLoadedCorrectly()
        {
            const string json = @"{'someOtherObject': true}";

            IDatabaseAccessor mockDatabaseAccessor = CreateMockDatabaseAccessor(json);
            var sut = CreateDatabaseManager(mockDatabaseAccessor);
            var testDatabaseObject = new TestDatabaseObject
            {
                IntProperty    = 5,
                StringProperty = "String",
                List           = new[]
                {
                    true, false, true
                }
            };

            sut.SaveDatabaseObject("databaseObject", testDatabaseObject);

            var sut2 = CreateDatabaseManager(CreateMockDatabaseAccessor(_jsonWrittenToDatabase));

            var savedAndLoadedTestDatabaseObject = sut2.GetDatabaseObject <TestDatabaseObject>("databaseObject");

            savedAndLoadedTestDatabaseObject.StringProperty.ShouldBe(testDatabaseObject.StringProperty);
            savedAndLoadedTestDatabaseObject.IntProperty.ShouldBe(testDatabaseObject.IntProperty);
            savedAndLoadedTestDatabaseObject.List.ShouldMatch(testDatabaseObject.List.ToArray());
        }
コード例 #3
0
        public void SaveDatabaseObject_ObjectInPopulated_ObjectIsSavedToDatabase()
        {
            const string json = @"{'someOtherObject': true}";

            IDatabaseAccessor mockDatabaseAccessor = CreateMockDatabaseAccessor(json);
            var sut = CreateDatabaseManager(mockDatabaseAccessor);
            var testDatabaseObject = new TestDatabaseObject
                {
                    IntProperty = 5, StringProperty = "String", List = new[]
                        {
                            true, false, true
                        }
                };
            sut.SaveDatabaseObject("databaseObject", testDatabaseObject);
            Mock.Get(mockDatabaseAccessor).Verify(da => da.WriteToDatabase(It.IsAny<string>()), Times.Once());

            var savedJsonTree = JObject.Parse(_jsonWrittenToDatabase);
            savedJsonTree["someOtherObject"].ToObject<bool>().ShouldBe(true);
            var savedTestDatabaseObject = JsonConvert.DeserializeObject<TestDatabaseObject>(savedJsonTree["databaseObject"].ToString());
            savedTestDatabaseObject.StringProperty.ShouldBe(testDatabaseObject.StringProperty);
            savedTestDatabaseObject.IntProperty.ShouldBe(testDatabaseObject.IntProperty);
            savedTestDatabaseObject.List.ShouldMatch(testDatabaseObject.List.ToArray());
        }
コード例 #4
0
        public void SaveThenLoadDatabaseObject_ObjectIsSavedAndLoadedCorrectly()
        {
            const string json = @"{'someOtherObject': true}";

            IDatabaseAccessor mockDatabaseAccessor = CreateMockDatabaseAccessor(json);
            var sut = CreateDatabaseManager(mockDatabaseAccessor);
            var testDatabaseObject = new TestDatabaseObject
            {
                IntProperty = 5,
                StringProperty = "String",
                List = new[]
                        {
                            true, false, true
                        }
            };
            sut.SaveDatabaseObject("databaseObject", testDatabaseObject);

            var sut2 = CreateDatabaseManager(CreateMockDatabaseAccessor(_jsonWrittenToDatabase));

            var savedAndLoadedTestDatabaseObject = sut2.GetDatabaseObject<TestDatabaseObject>("databaseObject");
            savedAndLoadedTestDatabaseObject.StringProperty.ShouldBe(testDatabaseObject.StringProperty);
            savedAndLoadedTestDatabaseObject.IntProperty.ShouldBe(testDatabaseObject.IntProperty);
            savedAndLoadedTestDatabaseObject.List.ShouldMatch(testDatabaseObject.List.ToArray());
        }