public void AddCompany_throws_on_null_or_empty_name()
        {
            var companyWithNullName = new Company() { Name = null };
            var companyWithEmptyName = new Company() { Name = String.Empty };
            var repo = new SqlFulcrumRepository(this.contextMock.Object);

            Assert.Throws<ArgumentException>(() => repo.AddCompany(companyWithNullName));
            Assert.Throws<ArgumentException>(() => repo.AddCompany(companyWithEmptyName));
        }
        public void AddCompany_passes_valid_company_with_default_id_to_dbcontext()
        {
            var company = new Company() { Name = "Echo Corporation" };

            this.contextMock.Setup(c => c.Companies.Add(It.IsAny<Company>())).Verifiable();

            var repo = new SqlFulcrumRepository(this.contextMock.Object);
            repo.AddCompany(company);

            this.contextMock.Verify(c => c.Companies.Add(company));
        }
        public void FindCompanyById_returns_the_right_company_if_it_exists()
        {
            var repo = new SqlFulcrumRepository(this.contextMock.Object);

            var returnedCompany = repo.FindCompanyById(3);
            Assert.AreEqual(3, returnedCompany.Id);
            Assert.AreEqual("Charlie Corporation", returnedCompany.Name);

            var returnedCompany2 = repo.FindCompanyById(4);
            Assert.AreEqual(4, returnedCompany2.Id);
            Assert.AreEqual("Delta Corporation", returnedCompany2.Name);
        }
 public void FindCompanyById_returns_null_if_id_does_not_exist()
 {
     var repo = new SqlFulcrumRepository(this.contextMock.Object);
     var company = repo.FindCompanyById(5);
     Assert.IsNull(company);
 }
 public void AddCompany_throws_on_null_input()
 {
     var repo = new SqlFulcrumRepository(this.contextMock.Object);
     Assert.Throws<ArgumentNullException>(() => repo.AddCompany(null));
 }