예제 #1
0
        public void RetrieveAllTest()
        {
            //Arrange
            var repository = new VendorRepository();

            var expected = new List <Vendor>()
            {
                { new Vendor()
                  {
                      VendorId = 22, CompanyName = "Amalgamated Toys", Email = "*****@*****.**"
                  } },
                { new Vendor()
                  {
                      VendorId = 35, CompanyName = "Car Toys", Email = "*****@*****.**"
                  } },
                { new Vendor()
                  {
                      VendorId = 28, CompanyName = "Toy Blocks Inc", Email = "*****@*****.**"
                  } },
                { new Vendor()
                  {
                      VendorId = 42, CompanyName = "Toys for Fun", Email = "*****@*****.**"
                  } }
            };

            //Act
            var vendors = repository.Retrieveall();

            //Query Syntax
            //var vendorQuery = from v in vendors
            //                  where v.CompanyName.Contains("Toy")
            //                  orderby v.CompanyName
            //                  select v;

            // Method Syntax
            //var vendorQuery = vendors.Where(FilterCompanies)
            //    .OrderBy(OrderCompaniesByName);

            //Lambda Syntax
            var vendorQuery = vendors.Where(v => v.CompanyName.Contains("Toy"))
                              .OrderBy(v => v.CompanyName);

            //Assert
            CollectionAssert.AreEqual(expected, vendorQuery.ToList());
        }