public void ShouldTryConvertEnumImplicitlyWithNonGenericMethod() { // Arrange object sourceObject = MyEnum.TestValue; const MyEnum DefaultValue = default(MyEnum); IConverterRegistry converterRegistry = new ConverterRegistry(); // Act object convertedObject = converterRegistry.TryConvert(typeof(object), typeof(MyEnum), sourceObject, DefaultValue); // Assert convertedObject.Should().Be(sourceObject); }
public void ShouldResetRegistrations() { // Arrange const string InputString = "http://www.thomasgalliker.ch"; int numberOfConvertCalls = 0; IConverterRegistry converterRegistry = new ConverterRegistry(); var converter = new TestConverter(() => { numberOfConvertCalls++; }); converterRegistry.RegisterConverter <string, Uri>(() => converter); // Act var convertedInputStringBeforeReset = converterRegistry.TryConvert <string, Uri>(InputString, null); converterRegistry.Reset(); var convertedInputStringAfterReset = converterRegistry.TryConvert <string, Uri>(InputString, null); // Assert numberOfConvertCalls.Should().Be(1); convertedInputStringBeforeReset.Should().Be(InputString); convertedInputStringAfterReset.Should().BeNull(); }
public void ShouldReturnDefaultValueWhenTryConvertToValueTypeFails() { // Arrange TestStruct1 testStruct1 = new TestStruct1 { TestString = Guid.NewGuid().ToString() }; IConverterRegistry converterRegistry = new ConverterRegistry(); // Act var convertedObject = converterRegistry.TryConvert <Guid>(testStruct1, default(Guid)); // Assert convertedObject.Should().Be(Guid.Empty); }