private void LoadData() { vendorRepository = new VendorRepository(); currentVendor = vendorRepository.Retrieve(1); // Populate the form this.CompanyNameTextBox.Text = currentVendor.CompanyName; this.EmailTextBox.Text = currentVendor.Email; }
private void SaveButton_Click(object sender, RoutedEventArgs e) { var vm = (VendorDetailViewModel)((Button)e.OriginalSource).DataContext; if (vm != null) { var vendorRepository = new VendorRepository(); vendorRepository.Save(vm.currentVendor); } }
public void RetrieveValueIntTest() { // Arrange var repository = new VendorRepository(); var expected = 42; // Act var actual = repository.RetrieveValue<int>("Select...", 42); // Assert Assert.AreEqual(expected, actual); }
public void RetrieveValueStringTest() { // Arrange var repository = new VendorRepository(); var expected = "default value"; // Act var actual = repository.RetrieveValue("Select...", "default value"); // Assert Assert.AreEqual(expected, actual); }
public void RetrieveValueTestWithString() { //Arrange var repo = new VendorRepository(); var expected = "* From People Where Name == 'Ronald'"; //Act var actual = repo.RetrieveValue<string>("Select ...", "* From People Where Name == 'Ronald'"); //Assert Assert.AreEqual(expected, actual); }
public void RetrieveValueTestWithInt() { //Arrange var repo = new VendorRepository(); var expected = 32; //Act var actual = repo.RetrieveValue<int>("Select ...", 32); //Assert Assert.AreEqual(expected, actual); }
public void RetrieveAllTest() { // Arrange var repository = new VendorRepository(); var expected = new List<Vendor>() { new Vendor() { VendorId = 10, CompanyName = "Amazon", Email = "*****@*****.**" }, new Vendor() { VendorId = 69, CompanyName = "ESPN", Email = "*****@*****.**" }, new Vendor() { VendorId = 82, CompanyName = "Uber", Email = "*****@*****.**" } }; // Actual var vendors = repository.RetrieveAll(); //var vendorQuery = from v in vendors // where v.Email.Contains(".net") // orderby v.CompanyName // select v; // LINQ methods such as Where takes in a delegate as the argument. The delegate // must be in the form of Func<Vendor, bool>, where Vendor is the parameter and // bool is the return type. To test this, we wrote a private method called // FilterCompanies and inserted into LINQ's Where method. //var vendorQuery = vendors.Where(FilterCompanies) // .OrderBy(OrderCompaniesByName); // Using lambda expressions within LINQ methods, instead of delegates, reduces clutter. var vendorQuery = vendors.Where(v => v.Email.Contains(".net")) .OrderBy(v => v.CompanyName); // Assert CollectionAssert.AreEqual(expected, vendorQuery.ToList()); }
public void SendEmailTestCollectionDictionary() { // Arrange var vendorRepository = new VendorRepository(); var vendorsCollection = vendorRepository.RetrieveCollection(); var expected = new List<string>() { "Message sent: Important message for: IBM", "Message sent: Important message for: GE" }; // When casting a collection to a dictionary, we must give .ToDictionary() // a key-selector function argument to extract the keys for the dictionary. // In this case, we want to use the company name as the key. The lambda // expression says for every item v in the collection, use the company name // as the key. var vendors = vendorsCollection.ToDictionary(v => v.CompanyName); // Act var actual = Vendor.SendEmail(vendors.Values, "Test Message"); // Assert CollectionAssert.AreEqual(expected, actual); }
public void SendEmailTestDictionary() { // Arrange var vendorRepository = new VendorRepository(); var vendors = vendorRepository.RetrieveWithKeys(); var expected = new List<string>() { "Message sent: Important message for: JP Morgan", "Message sent: Important message for: Lockheed Martin" }; // Act var actual = Vendor.SendEmail(vendors.Values, "Test Message"); // Assert CollectionAssert.AreEqual(expected, actual); }
public void SendEmailTestCollectionArray() { // Arrange var vendorRepository = new VendorRepository(); var vendorsCollection = vendorRepository.RetrieveCollection(); var expected = new List<string>() { "Message sent: Important message for: IBM", "Message sent: Important message for: GE" }; // Since .RetrieveCollection() returns an ICollection<Vendor>, we // must cast it in order for us to use vendorsCollection as an Array. var vendors = vendorsCollection.ToArray(); Console.WriteLine(vendors.Length); // Act var actual = Vendor.SendEmail(vendors, "Test Message"); // Assert CollectionAssert.AreEqual(expected, actual); }
public void SendEmailTestArray() { // Arrange var vendorRepository = new VendorRepository(); var vendors = vendorRepository.RetrieveArray(); var expected = new List<string>() { "Message sent: Important message for: Disney", "Message sent: Important message for: Google" }; Console.WriteLine(vendors.Length); // Act var actual = Vendor.SendEmail(vendors, "Test Message"); // Assert CollectionAssert.AreEqual(expected, actual); }
public void SendEmailTestAdd() { // Arrange var vendorRepository = new VendorRepository(); var vendorsCollection = vendorRepository.RetrieveCollection(); // Collection has 2 items. vendorsCollection.Add(new Vendor() {CompanyName = "NBC", Email = "*****@*****.**", VendorId = 25}); // The returned collection is MUTABLE, meaning after we add a new vendor to the vendorRepository // and then retrieve the same collection, that collection would have increased by 1. var vendorsCollectionMaster = vendorRepository.RetrieveCollection(); // Collection now has 3 items. // Prevent changes to the collection, .RetrieveCollection() would need to return IEnumerable<T> // instead of ICollection<T>. IEnumerable<T> collections can only be enumerated, not modified // because they're readonly. var expected = new List<string>() { "Message sent: Important message for: IBM", "Message sent: Important message for: GE", "Message sent: Important message for: NBC", }; var vendors = vendorsCollection.ToList(); Console.WriteLine(vendors.Count); // Act var actual = Vendor.SendEmail(vendors, "Test Message"); // Assert CollectionAssert.AreEqual(expected, actual); }
public void SendEmailTestCollectionList() { // Arrange var vendorRepository = new VendorRepository(); var vendorsCollection = vendorRepository.RetrieveCollection(); var expected = new List<string>() { "Message sent: Important message for: IBM", "Message sent: Important message for: GE" }; var vendors = vendorsCollection.ToList(); Console.WriteLine(vendors.Count); // Act var actual = Vendor.SendEmail(vendors, "Test Message"); // Assert CollectionAssert.AreEqual(expected, actual); }
public void RetrieveTest() { // Arrange var repository = new VendorRepository(); var expected = new List<Vendor>(); expected.Add(new Vendor() { CompanyName = "IBM", Email = "*****@*****.**", VendorId = 12345 }); expected.Add(new Vendor() { CompanyName = "GE", Email = "*****@*****.**", VendorId = 54321 }); // Act var actual = repository.Retrieve(); // Assert CollectionAssert.AreEqual(expected, actual); }
public void RetrieveWithKeysTest() { // Arrange var repository = new VendorRepository(); var expected = new Dictionary<string, Vendor>() { { "JP Morgan", new Vendor() { CompanyName = "JP Morgan", VendorId = 8, Email = "*****@*****.**"} }, { "Lockheed Martin", new Vendor() { CompanyName = "Lockheed Martin", VendorId = 10, Email = "*****@*****.**"} } }; // Act var actual = repository.RetrieveWithKeys(); // Assert CollectionAssert.AreEqual(expected, actual); }
public void RetrieveTestIterator() { // Arrange var repository = new VendorRepository(); var expected = new List<Vendor>(); expected.Add(new Vendor() { CompanyName = "IBM", Email = "*****@*****.**", VendorId = 12345 }); expected.Add(new Vendor() { CompanyName = "GE", Email = "*****@*****.**", VendorId = 54321 }); // Act var vendorIterator = repository.RetrieveWithIterator(); foreach (var item in vendorIterator) { Console.WriteLine(item); } var actual = vendorIterator.ToList(); // Assert CollectionAssert.AreEqual(expected, actual); }