public void ParseTreatmentMetaWithCatalogueOfLifeCommand_WithNullParser_ShouldThrowArgumentNullExceptionWithCorrectParamName() { // Arrange + Act + Assert var exception = Assert.Throws <ArgumentNullException>(() => { var command = new ParseTreatmentMetaWithCatalogueOfLifeCommand(null); }); Assert.AreEqual(ParameterNames.Parser, exception.ParamName, "ParamName is not correct."); }
public void ParseTreatmentMetaWithCatalogueOfLifeCommand_RunWithNullDocumentAndNullProgramSettings_ShouldThrowArgumentNullException() { // Arrange var parserMock = new Mock <ITreatmentMetaParserWithDataService <ICatalogueOfLifeTaxaClassificationResolver> >(); var command = new ParseTreatmentMetaWithCatalogueOfLifeCommand(parserMock.Object); // Act + Assert var exception = Assert.ThrowsAsync <ArgumentNullException>(() => { return(command.Run(null, null)); }); parserMock.Verify(p => p.Parse(It.IsAny <IDocument>()), Times.Never); }
public async Task ParseTreatmentMetaWithCatalogueOfLifeCommand_RunWithValidDocumentAndValidProgramSettings_ShouldCallParserWithCorrectParameter() { // Arrange var parserMock = new Mock <ITreatmentMetaParserWithDataService <ICatalogueOfLifeTaxaClassificationResolver> >(); var command = new ParseTreatmentMetaWithCatalogueOfLifeCommand(parserMock.Object); var settingsMock = new Mock <ICommandSettings>(); var documentMock = new Mock <IDocument>(); // Act var result = await command.Run(documentMock.Object, settingsMock.Object); // Assert parserMock.Verify(p => p.Parse(It.IsAny <IDocument>()), Times.Once); parserMock.Verify(p => p.Parse(documentMock.Object), Times.Once); }
public void ParseTreatmentMetaWithCatalogueOfLifeCommand_RunWithValidDocumentAndNullProgramSettings_ShouldThrowArgumentNullExceptionWithCorrectParamName() { // Arrange var parserMock = new Mock <ITreatmentMetaParserWithDataService <ICatalogueOfLifeTaxaClassificationResolver> >(); var command = new ParseTreatmentMetaWithCatalogueOfLifeCommand(parserMock.Object); var documentMock = new Mock <IDocument>(); // Act + Assert var exception = Assert.ThrowsAsync <ArgumentNullException>(() => { return(command.Run(documentMock.Object, null)); }); Assert.AreEqual(ParameterNames.Settings, exception.ParamName, "ParamName is not correct."); parserMock.Verify(p => p.Parse(It.IsAny <IDocument>()), Times.Never); }
public void ParseTreatmentMetaWithCatalogueOfLifeCommand_WithValidParser_ShouldCorrectlyInitializeObject() { // Arrange + Act var parserMock = new Mock <ITreatmentMetaParserWithDataService <ICatalogueOfLifeTaxaClassificationResolver> >(); var command = new ParseTreatmentMetaWithCatalogueOfLifeCommand(parserMock.Object); // Assert Assert.IsNotNull(command, "Initialized Command object should not be null."); var parser = PrivateField.GetInstanceField( typeof(ParseTreatmentMetaWithCatalogueOfLifeCommand).BaseType, command, ParameterNames.Parser); Assert.IsNotNull(parser, "Private parser field should not be null."); Assert.AreSame(parserMock.Object, parser, "Private parser field should not be set correctly."); }