예제 #1
0
        public void CtorShouldSetCorrectValue()
        {
            // Arrange
            var value = "value";

            // Act
            var result = new OptionSome <string>(value);

            // Assert
            result.Value.Should().Be(value);
        }
예제 #2
0
        public void EqualsOptionSomeShouldReturnFalse()
        {
            // Arrange
            var first  = new OptionSome <string>("value1");
            var second = new OptionSome <string>("value2");

            // Act
            var result = first.Equals(second);

            // Assert
            result.Should().BeFalse();
        }
예제 #3
0
        public void EqualsObjectShouldReturnTrue()
        {
            // Arrange
            var first  = new OptionSome <string>("value");
            var second = new OptionSome <string>("value");

            // Act
            var result = Equals(first, second);

            // Assert
            result.Should().BeTrue();
        }
예제 #4
0
        public void EqualsOptionSomeShouldReturnFalse()
        {
            // Arrange
            OptionSome <int> optionSome = new OptionSome <int>(2);
            Option <int>     option     = Some(1);

            // Act
            var result = option.Equals(optionSome);

            // Assert
            result.Should().BeFalse();
        }
예제 #5
0
        public void ToStringShouldProvideExpectedRepresentation()
        {
            // Arrange
            var value          = "value";
            var expectedResult = $"Some({value})";
            var optionSome     = new OptionSome <string>(value);

            // Act
            var result = optionSome.ToString();

            // Assert
            result.Should().Be(expectedResult);
        }
예제 #6
0
        public void ImplicitOperatorOverloadingShouldSucceedWithOptionSome()
        {
            // Arrange
            var value      = "value";
            var optionSome = new OptionSome <string>(value);

            // Act
            Option <string> option = optionSome;
            var             result = option.ToString();

            // Assert
            result.Should().Be("Some(value)");
        }