Exemplo n.º 1
0
            public void CloneResultsInClonedDocument()
            {
                // Given
                MetadataDictionary initialMetadata = new MetadataDictionary();
                initialMetadata.Add("Foo", "Bar");
                DocumentFactory documentFactory = new DocumentFactory(initialMetadata);
                CustomDocumentFactory<TestDocument> customDocumentFactory = new CustomDocumentFactory<TestDocument>(documentFactory);
                IExecutionContext context = Substitute.For<IExecutionContext>();
                CustomDocument sourceDocument = (CustomDocument)customDocumentFactory.GetDocument(context);

                // When
                IDocument resultDocument = customDocumentFactory.GetDocument(context, sourceDocument, new Dictionary<string, object>
                {
                    { "Baz", "Bat" }
                });

                // Then
                CollectionAssert.AreEquivalent(new Dictionary<string, object>
                {
                    { "Foo", "Bar" }
                }, sourceDocument);
                CollectionAssert.AreEquivalent(new Dictionary<string, object>
                {
                    { "Foo", "Bar" },
                    { "Baz", "Bat" }
                }, resultDocument);
            }
Exemplo n.º 2
0
            public void ThrowsWhenCloneReturnsSameDocument()
            {
                // Given
                MetadataDictionary initialMetadata = new MetadataDictionary();
                DocumentFactory documentFactory = new DocumentFactory(initialMetadata);
                CustomDocumentFactory<TestDocument> customDocumentFactory = new CustomDocumentFactory<TestDocument>(documentFactory);
                IExecutionContext context = Substitute.For<IExecutionContext>();
                CloneReturnsSameDocument document = new CloneReturnsSameDocument();

                // When, Then
                Assert.Throws<Exception>(() => customDocumentFactory.GetDocument(context, document, new Dictionary<string, object>()));
            }
Exemplo n.º 3
0
            public void GetsInitialDocumentWithInitialMetadata()
            {
                // Given
                MetadataDictionary initialMetadata = new MetadataDictionary();
                initialMetadata.Add("Foo", "Bar");
                DocumentFactory documentFactory = new DocumentFactory(initialMetadata);
                CustomDocumentFactory<TestDocument> customDocumentFactory = new CustomDocumentFactory<TestDocument>(documentFactory);
                IExecutionContext context = Substitute.For<IExecutionContext>();

                // When
                IDocument resultDocument = customDocumentFactory.GetDocument(context);

                // Then
                Assert.IsInstanceOf<TestDocument>(resultDocument);
                CollectionAssert.AreEqual(new Dictionary<string, object>
                {
                    { "Foo", "Bar" }
                }, resultDocument);
            }