Exemplo n.º 1
0
        public void PowerSetAlgo_WhenSetIsEmpty_SubsetsShouldOnlyCotainsOneEmptySet()
        {
            // Act
            var actual = PowerSet <char> .PowerSetAlgo(new HashSet <char>());

            // Assert
            actual.Count.Should().Be(1);
            actual[0].Count.Should().Be(0);
        }
Exemplo n.º 2
0
        public void PowerSetAlgo_WhenSetIsNotEmpty_ReturnCorrectSubsets()
        {
            // Arrange
            var expected = new List <HashSet <char> >();

            expected.Add(new HashSet <char>());
            expected.Add(new HashSet <char>()
            {
                'a'
            });
            expected.Add(new HashSet <char>()
            {
                'b'
            });
            expected.Add(new HashSet <char>()
            {
                'c'
            });
            expected.Add(new HashSet <char>()
            {
                'a', 'b'
            });
            expected.Add(new HashSet <char>()
            {
                'a', 'c'
            });
            expected.Add(new HashSet <char>()
            {
                'b', 'c'
            });
            expected.Add(new HashSet <char>()
            {
                'a', 'b', 'c'
            });

            // Act
            var actual = PowerSet <char> .PowerSetAlgo(new HashSet <char>(new char[] { 'a', 'b', 'c' }));

            // Assert
            actual.Count.Should().Be(8);
            actual.Should().BeEquivalentTo(expected);
        }