public void ClearShouldRemoveAllItems()
        {
            // arrange
            var target = new VariantListAdapter<string, object>( new List<string>() );

            target.Add( "test" );

            // act
            target.Clear();

            // assert
            Assert.Equal( 0, target.Count );
        }
        public void IndexOfShouldReturnCorrectValue()
        {
            // arrange
            var target = new VariantListAdapter<string, object>( new List<string>() );

            target.Add( "test" );

            // act
            var actual = target.IndexOf( "test" );

            // assert
            Assert.Equal( 0, actual );
        }
        public void IndexerShouldReadWriteCorrectValue()
        {
            // arrange
            var expected = "test1";
            var target = new VariantListAdapter<string, object>( new List<string>() );

            target.Add( expected );
            var actual = target[0];
            Assert.Equal( expected, actual );

            expected = "test2";

            // act
            actual = target[0] = expected;

            // assert
            Assert.Equal( expected, actual );
        }
        public void ContainsShouldReturnExpectedResult()
        {
            // arrange
            var target = new VariantListAdapter<string, object>( new List<string>() );

            target.Add( "test" );

            // act

            // assert
            Assert.True( target.Contains( "test" ) );
            Assert.False( target.Contains( "other test" ) );
        }
        public void RemoveShouldRemoveFromSource( string value, bool expected )
        {
            // arrange
            var target = new VariantListAdapter<string, object>( new List<string>() );

            target.Add( "test" );

            // act
            var actual = target.Remove( value );

            // assert
            Assert.Equal( expected, actual );
        }