[DataRow("en-GB", "AQIDBAU=", true, new byte[] { 1, 2, 3, 4, 5 })] // More traditional MIME64 string public void TryParse_Behaves_Correctly(string culture, string text, bool expectedResult, byte[] expectedValue) { using (new CultureSwap(culture)) { var parser = new ByteArray_Mime64_Parser(); var actualResult = parser.TryParse(text, out var actualValue); Assert.AreEqual(expectedResult, actualResult); if (expectedValue == null) { Assert.IsNull(actualValue); } else { Assert.IsTrue(expectedValue.SequenceEqual(actualValue)); } } }
public void GetAugmentedParsers_Augments_Registered_Parsers_With_List_Passed_In() { var originalDateTimeParser = new DateTime_Local_Parser(); var originalDateTimeOffsetParser = new DateTimeOffset_Invariant_Parser(); var newDateTimeParser = new DateTime_Iso8601_Parser(); var newByteArrayParser = new ByteArray_Mime64_Parser(); var resolver = new TypeParserResolver(originalDateTimeParser, originalDateTimeOffsetParser); var parsers = resolver.GetAugmentedParsers(newDateTimeParser, null, newByteArrayParser); Assert.AreEqual(3, parsers.Length); Assert.IsTrue(parsers.Contains(newDateTimeParser)); Assert.IsTrue(parsers.Contains(originalDateTimeOffsetParser)); Assert.IsTrue(parsers.Contains(newByteArrayParser)); var originalParsers = resolver.GetParsers(); Assert.AreEqual(2, originalParsers.Length); Assert.IsTrue(originalParsers.Contains(originalDateTimeParser)); Assert.IsTrue(originalParsers.Contains(originalDateTimeOffsetParser)); }