public void GivenDefaultCtor_WhenSupportedValueTypeAccessed_ThenValueReturned_Test() { var p1 = Substitute.For <IFhirValueProcessor <string, string> >(); p1.SupportedValueType.Returns(typeof(TestTypeA)); var processor = new TestCollectionFhirValueProcessor(p1); Assert.NotNull(processor.SupportedValueType); }
public void GivenTemplateWithNoMatchingProcessor_WhenMergeValue_ThenNotSupportedExceptionThrown_Test() { var p1 = Substitute.For <IFhirValueProcessor <string, string> >(); p1.SupportedValueType.Returns(typeof(TestTypeA)); var processor = new TestCollectionFhirValueProcessor(p1); var ex = Assert.Throws <NotSupportedException>(() => processor.MergeValue(new TestTypeB(), "e", "1")); }
public void GivenValidTemplate_WhenMergeValue_ThenCorrectProcessorInvoked_Test() { var p1 = Substitute.For <IFhirValueProcessor <string, string> >(); p1.SupportedValueType.Returns(typeof(TestTypeA)); var p2 = Substitute.For <IFhirValueProcessor <string, string> >(); p2.SupportedValueType.Returns(typeof(TestTypeB)); var processor = new TestCollectionFhirValueProcessor(p1, p2); var vt1 = new TestTypeA(); var vt2 = new TestTypeB(); processor.MergeValue(vt1, "e", "a"); p1.Received(1).MergeValue(vt1, "e", "a"); p2.DidNotReceiveWithAnyArgs().MergeValue(null, null, null); p1.ClearReceivedCalls(); processor.MergeValue(vt2, "e", "b"); p2.Received(1).MergeValue(vt2, "e", "b"); p1.DidNotReceiveWithAnyArgs().MergeValue(null, null, null); }