예제 #1
0
        public void BuilderReturnsEqualityIndexForNotComparable()
        {
            SimpleClass[] someItems =
            {
                new SimpleClass {
                    Name = "Jason", Age = 25
                },
                new SimpleClass {
                    Name = "Aaron", Age = 37, FavoriteColor = Color.Green
                },
                new SimpleClass {
                    Name = "Erin", Age = 34
                },
                new SimpleClass {
                    Name = "Adriana", Age = 13
                },
            };
            var theRightIndex
                = IndexBuilder.GetIndexFor(
                      someItems,
                      typeof(SimpleClass).GetProperty("FavoriteColor")
                      );

            Assert.AreEqual(typeof(EqualityIndex <SimpleClass>), theRightIndex.GetType());
        }
예제 #2
0
        public void BuilderReturnsComparisonIndexForComparable()
        {
            SimpleClass[] someItems =
            {
                new SimpleClass {
                    Name = "Jason", Age = 25
                },
                new SimpleClass {
                    Name = "Aaron", Age = 37
                },
                new SimpleClass {
                    Name = "Erin", Age = 34
                },
                new SimpleClass {
                    Name = "Adriana", Age = 13
                },
            };
            var theRightIndex
                = IndexBuilder.GetIndexFor(
                      someItems,
                      typeof(SimpleClass).GetProperty("Age")
                      );

            Assert.AreEqual(typeof(ComparisonIndex <SimpleClass, int>), theRightIndex.GetType());
        }