using System.Collections.Generic;
public static void Main()
new UnitTests().PerformUnitTest();
public void PerformUnitTest()
var sut = new CustomerValidator();
var actual = sut.GetCustomerAndValidateZip();
var result = expected == actual ? "PASS" : "FAIL";
Console.WriteLine(result);
public class CustomerValidator
public bool GetCustomerAndValidateZip()
var repository = new CustomerRepository();
var customer = repository.GetCustomer(customerId);
var allZipCodes = GetAllValidZipCodes();
return allZipCodes.Contains(customer.ZipCode);
private List<string> GetAllValidZipCodes()
return new List<string>{"22314","22345","304533","200021"};
public int ID { get; set; }
public string ZipCode { get; set; }
public class CustomerRepository
public Customer GetCustomer(int customerId)
var db = new DbContext();
return db.Customers.SingleOrDefault(i => i.ID == customerId);
Customers = new List<Customer>{
new Customer {ID=1,ZipCode="22314" },
new Customer{ID=2,ZipCode="22345"},
new Customer{ID=3,ZipCode="32134"}
public List<Customer> Customers { get; set; }
public T Get<T>(string url)