コード例 #1
0
        public void AddingNewEmployee()
        {
            var person  = Generator.GeneratePerson();
            var company = Generator.GenerateCompany();

            var sut = new CompanyGenericTemplateMethod();

            sut.AddToParent(company, new Employee(person, "Title", 15.2));
        }
コード例 #2
0
        public void RemoveNotHiredEmployeeShouldThrow()
        {
            var person  = Generator.GeneratePerson();
            var company = Generator.GenerateCompany();

            var sut = new CompanyGenericTemplateMethod();

            Assert.Throws <InvalidOperationException>(
                () => sut.RemoveFromParent(company, new Employee(person, "Title", 10000)));
        }
コード例 #3
0
        public void AddingEmployeeTwiceShouldThrow()
        {
            var person  = Generator.GeneratePerson();
            var company = Generator.GenerateCompany();

            var sut = new CompanyGenericTemplateMethod();

            sut.AddToParent(company, new Employee(person, "Title", 15.2));
            Assert.Throws <InvalidOperationException>(
                () => sut.AddToParent(company, new Employee(person, "Title", 15.2)));
        }
コード例 #4
0
        public void ProperlyMovesEmployee()
        {
            var person     = Generator.GeneratePerson();
            var oldCompany = Generator.GenerateCompany();
            var newCompany = Generator.GenerateCompany();
            var employee   = oldCompany.Hire(person, "title", 10000);

            var sut = new CompanyGenericTemplateMethod();

            sut.MoveChildBetweenParents(oldCompany, newCompany, employee);

            Assert.IsTrue(newCompany.IsHired(person.Id));
            Assert.IsFalse(oldCompany.IsHired(person.Id));
        }