コード例 #1
0
        public void Persist_TypeOfIOperableOnlyNotIDeclaration_ThrowsException()
        {
            var operableOnly = Substitute.For <IOperable <MyClass> >();

            {
                Should.Throw <ArgumentException>(() => PersistenceExtensions.Persist(operableOnly));
            }
        }
コード例 #2
0
        public void Persist_TypeOfIOperableOnlyNotIDeclaration_ThrowsException()
        {
            var operableOnly = mocks.DynamicMock <IOperable <MyClass> >();

            using (mocks.Record())
            {}

            using (mocks.Playback())
            {
                // TODO FIX
                #if !SILVERLIGHT
                Assert.Throws <ArgumentException>(() => PersistenceExtensions.Persist(operableOnly));
                #endif
            }
        }
コード例 #3
0
        public void ShouldBeAbleToPersistUsingListBuilder()
        {
            using (mocks.Record())
            {
                listBuilderImpl.Expect(x => x.Build()).Return(theList);
                persistenceService.Expect(x => x.Create(theList));
            }

            BuilderSetup.SetPersistenceService(persistenceService);

            using (mocks.Playback())
            {
                PersistenceExtensions.Persist(listBuilderImpl);
            }
        }
コード例 #4
0
        public void ShouldBeAbleToPersistFromADeclaration()
        {
            using (mocks.Record())
            {
                listBuilderImpl.Expect(x => x.Build()).Return(theList);
                persistenceService.Expect(x => x.Create(theList));
                ((IDeclaration <MyClass>)operable).Expect(x => x.ListBuilderImpl).Return(listBuilderImpl);
            }

            BuilderSetup.SetPersistenceService(persistenceService);

            using (mocks.Playback())
            {
                PersistenceExtensions.Persist(operable);
            }
        }
コード例 #5
0
        public void ShouldBeAbleToPersistUsingListBuilder()
        {
            var builderSetup = new BuilderSettings();
            {
                listBuilderImpl.BuilderSettings.Returns(builderSetup);

                listBuilderImpl.Build().Returns(theList);
                persistenceService.Create(theList);
            }


            {
                builderSetup.SetPersistenceService(persistenceService);
                PersistenceExtensions.Persist(listBuilderImpl);
            }
        }
コード例 #6
0
        public void ShouldBeAbleToPersistUsingSingleObjectBuilder()
        {
            var obj = new MyClass();

            using (mocks.Record())
            {
                singleObjectBuilder.Expect(x => x.Build()).Return(obj);
                persistenceService.Expect(x => x.Create(obj));
            }

            BuilderSetup.SetPersistenceService(persistenceService);

            using (mocks.Playback())
            {
                PersistenceExtensions.Persist(singleObjectBuilder);
            }
        }
コード例 #7
0
        public void ShouldBeAbleToPersistFromADeclaration()
        {
            var builderSetup = new BuilderSettings();
            {
                listBuilderImpl.BuilderSettings.Returns(builderSetup);

                listBuilderImpl.Build().Returns(theList);
                listBuilderImpl.BuilderSettings.Returns(builderSetup);
                persistenceService.Create(theList);
                ((IDeclaration <MyClass>)operable).ListBuilderImpl.Returns(listBuilderImpl);
            }

            {
                builderSetup.SetPersistenceService(persistenceService);
                PersistenceExtensions.Persist(operable);
            }
        }
コード例 #8
0
        public void ShouldBeAbleToPersistUsingListBuilder()
        {
            var builderSetup = new BuilderSettings();

            using (mocks.Record())
            {
                listBuilderImpl.Stub(x => x.BuilderSettings).Return(builderSetup);

                listBuilderImpl.Expect(x => x.Build()).Return(theList);
                persistenceService.Expect(x => x.Create(theList));
            }

            using (mocks.Playback())
            {
                builderSetup.SetPersistenceService(persistenceService);
                PersistenceExtensions.Persist(listBuilderImpl);
            }
        }
コード例 #9
0
        public void ShouldBeAbleToPersistUsingSingleObjectBuilder()
        {
            var builderSetup = new BuilderSettings();
            var obj          = new MyClass();

            {
                singleObjectBuilder.BuilderSettings.Returns(builderSetup);

                singleObjectBuilder.Build().Returns(obj);
                persistenceService.Create(obj);
            }

            {
                builderSetup.SetPersistenceService(persistenceService);

                PersistenceExtensions.Persist(singleObjectBuilder);
            }
        }