public void GivenInvalidHexadecimalSGTINFormat_WhenSGTINIsDecoded_ThenDecodingFailsWithError(string sgtin) { // when var mockLogger = new Mock <ILogger <SGTIN96Service> >(); var sgtinService = new SGTIN96Service(mockLogger.Object); Assert.Throws <ArgumentException>(() => sgtinService.Decode(sgtin)); }
public void GivenMultipleSGTINInHexadecimalFormat_WhenSGTINIsDecoded_ThenSGTINIsProperlyDecodedAndExistsInExpectedData(string sgtin) { var mockLogger = new Mock <ILogger <SGTIN96Service> >(); var sgtinService = new SGTIN96Service(mockLogger.Object); var decodedSGTIN = sgtinService.Decode(sgtin); Assert.True(_expectedCompanyItems.ContainsKey(decodedSGTIN.CompanyPrefix)); Assert.True(_expectedCompanyItems.ContainsValue(decodedSGTIN.ItemReference)); }
public void GivenSGTINInHexadecimalFormat_WhenSGTINIsDecoded_ThenSGTINHasAllCorrectInformation() { // given var sgtin = "3074257BF7194E4000001A85"; // when var mockLogger = new Mock <ILogger <SGTIN96Service> >(); var sgtinService = new SGTIN96Service(mockLogger.Object); var decodedSGTIN = sgtinService.Decode(sgtin); // then Assert.Equal(3u, decodedSGTIN.Filter); Assert.Equal(614141u, decodedSGTIN.CompanyPrefix); Assert.Equal(812345u, decodedSGTIN.ItemReference); Assert.Equal(6789u, decodedSGTIN.SerialNumber); }