コード例 #1
0
class TestReallocatePerson(unittest.TestCase):
    """Reallocation test cases"""
    def setUp(self):
        self.dojo = Dojo()

    def test_person_exists(self):
        """test_person_exists"""
        self.dojo.create_room("red", "office")
        reallocate = self.dojo.reallocate_person("mwenda", "red")
        msg = colored("Person Mwenda does not exist!", "red")
        self.assertEqual(reallocate, msg)

    def test_room_exists(self):
        """test_room_exists"""
        self.dojo.add_person("miriti", 'fellow')
        reallocate = self.dojo.reallocate_person("miriti", "red")
        error = colored("Room red does not exist!", "red")
        self.assertEqual(reallocate, error)

    def test_reallocated(self):
        """test_reallocated successfully"""
        self.dojo.add_person('miriti', 'staff')
        self.dojo.create_room('blue', 'office')
        first = self.dojo.print_room("blue")
        self.assertEqual("0 names printed", first)
        self.dojo.reallocate_person("miriti", "blue")
        results = self.dojo.print_room('blue')
        self.assertEqual(results, "1 names printed")
コード例 #2
0
ファイル: testUnallocated.py プロジェクト: miritih/Dojo
class TestPrintUnallocated(unittest.TestCase):
    """testcase for print unallocated"""
    def setUp(self):
        self.dojo = Dojo()

    def test_print_un_allocated(self):
        '''test_print_un_allocated'''
        self.dojo.create_room('blue', 'office')
        self.dojo.add_person('Ken', 'fellow', 'Y')
        unallocated = self.dojo.print_unallocated()
        outcome = "1 names printed"
        self.assertEqual(outcome, unallocated)

    def test_no_un_allocations(self):
        """test_no_un_allocations"""
        unallocated = self.dojo.print_unallocated()
        msg = colored("No unallocated Employeee at the moment!", "red")
        self.assertEqual(unallocated, msg)
コード例 #3
0
class TestAddPerson(unittest.TestCase):
    """add_person command testcases"""
    def setUp(self):
        self.dojo=Dojo()

    def test_person_can_only_be_staff_or_fellow(self):
        person1=self.dojo.add_person('mwenda','1213','Y')
        self.assertEqual('Person type can only be a fellow or a staff!',person1)

    def test_person_name_only_string(self):
        person2=self.dojo.add_person('mwenda',1213,'Y')
        person3=self.dojo.add_person(123,'office','Y')
        error='names and person type should be a strings!'
        self.assertEqual(error,person2)
        self.assertEqual(error,person3)

    def test_person_created_successfully(self):
        employee_count = len(self.dojo.all_employees)
        mwenda = self.dojo.add_person("mwenda", "staff")
        new_count = len(self.dojo.all_employees)
        self.assertEqual((new_count - employee_count), 1)
コード例 #4
0
class TestPrintRoom(unittest.TestCase):
    """testcase for print room"""
    def setUp(self):
        self.dojo = Dojo()   
    def test_print_room(self):
        '''test that members of a room are printed'''
        self.dojo.create_room('blue', 'office')
        self.dojo.add_person('mwenda', 'fellow', 'Y')
        self.dojo.add_person('miriti', 'staff')
        self.dojo.add_person('Eric', 'fellow')
        results = self.dojo.print_room('blue')
        expected = "3 names printed"
        self.assertEqual(results, expected)    
    def test_room_must_be_avialable(self):
        """test that cannot print rooms not available"""
        room = self.dojo.print_room('bluered')
        msg = colored("Room bluered does not exist!", "red")
        self.assertEqual(room, msg)
コード例 #5
0
ファイル: test_add_person.py プロジェクト: JoshuaOndieki/dojo
class TestAddPerson(unittest.TestCase):
    def setUp(self):
        self.dojo = Dojo()
        self.initial_people = len(self.dojo.all_people)

    def test_create_people_successfully(self):
        self.fellow = self.dojo.add_person('Joshua', 'Ondieki', 'Fellow')
        self.staff = self.dojo.add_person('Annette', 'Kamau', 'Staff')
        new_people = len(self.dojo.all_people)
        self.assertEqual(new_people - self.initial_people, 2)

    def test_it_fails_with_existing_person(self):
        exist_person = self.dojo.add_person('Joshua', 'Ondieki', 'Fellow')
        try_overwrite_f = self.dojo.add_person('Joshua', 'Ondieki', 'Fellow')
        exist_person = self.dojo.add_person('Evans', 'Musomi', 'Staff')
        try_overwrite_s = self.dojo.add_person('Evans', 'Musomi', 'Staff')
        self.assertTrue(try_overwrite_f == error('Joshua Ondieki exists!')
                        and try_overwrite_s == error('Evans Musomi exists!'))

    def test_it_fails_with_invalid_person_type(self):
        invalid_type = self.dojo.add_person('Loice', 'Andia', 'BFA')
        self.assertEqual(error('Only fellow and staff allowed!'), invalid_type)

    def test_fails_with_person_name_not_string(self):
        invalid_person = self.dojo.add_person(['Oj'], 'Josh', 'Fellow')
        invalid_person1 = self.dojo.add_person({'Oj': 'Josh'}, {}, 'Fellow')
        invalid_person2 = self.dojo.add_person(['Oj'], ['Josh'], 'Staff')
        invalid_person3 = self.dojo.add_person({'Oj': 'Josh'}, {}, 'Staff')
        self.assertEqual(invalid_person,
                         error('People names can only be strings!'))
        self.assertEqual(invalid_person1,
                         error('People names can only be strings!'))
        self.assertEqual(invalid_person2,
                         error('People names can only be strings!'))
        self.assertEqual(invalid_person3,
                         error('People names can only be strings!'))
コード例 #6
0
class DojoTestCase(unittest.TestCase):
    def setUp(self):
        self.dojo = Dojo()

    def test_initial_room_check(self):
        self.assertEqual(self.dojo.rooms, {})

    def test_create_room_successfully(self):
        initial_room_count = len(self.dojo.rooms)
        blue_office = self.dojo.create_room('office', 'blue')
        self.assertTrue(blue_office)
        new_room_count = len(self.dojo.rooms)
        self.assertEqual(new_room_count - initial_room_count, 1)

    def test_create_room_if_office_already_exists(self):
        self.dojo.rooms = {'office': ['blue']}
        self.assertEqual(self.dojo.create_room('office', 'blue'),
                         'office already exists!', msg='office already exists!')

    def test_create_room_if_livingspace_already_exists(self):
        self.dojo.rooms = {'living_space': ['blue']}
        self.assertEqual(self.dojo.create_room('living_space', 'blue'),
                         'living_space already exists!', msg='living_space already exists!')

    def test_create_multiple_rooms(self):
        self.assertEqual(self.dojo.create_room(
            'office', 'blue', 'black', 'yellow'), self.dojo.rooms)

    def test_create_unknown_room_type(self):
        self.assertEqual(self.dojo.create_room('kitchen', 'green'),
                         'Unknown Room Type', msg='Unknown Room Type')

    def test_initial_add_person_check(self):
        self.assertEqual(self.dojo.people, [])

    def test_add_person_successfully(self):
        self.dojo.offices, self.dojo.living_space = {
            'blue': [], 'green': []}, {'yellow': [], 'grey': []}
        self.dojo.vacant_offices, self.dojo.vacant_livingspaces = [
            'blue', 'green'], ['yellow', 'grey']
        initial_people_count = len(self.dojo.people)
        john_staff = self.dojo.add_person('john', 'staff', 'N')
        self.assertTrue(john_staff)
        new_people_count = len(self.dojo.people)
        self.assertEqual(new_people_count - initial_people_count, 1)

    def test_add_staff(self):
        self.dojo.offices, self.dojo.living_space = {
            'blue': [], 'green': []}, {'yellow': [], 'grey': []}
        self.dojo.vacant_offices, self.dojo.vacant_livingspaces = [
            'blue', 'green'], ['yellow', 'grey']
        self.assertEqual(self.dojo.add_person('john me', 'staff', 'N'), self.dojo.people)

    def test_add_fellow(self):
        self.dojo.offices, self.dojo.living_space = {
            'blue': [], 'green': []}, {'yellow': [], 'grey': []}
        self.dojo.vacant_offices, self.dojo.vacant_livingspaces = [
            'blue', 'green'], ['yellow', 'grey']
        self.assertEqual(self.dojo.add_person('john me', 'fellow', 'Y'), self.dojo.people)

    def test_add_person_when_person_already_exists(self):
        self.dojo.offices, self.dojo.living_space = {
            'blue': [], 'green': []}, {'yellow': [], 'grey': []}
        self.dojo.vacant_offices, self.dojo.vacant_livingspaces = [
            'blue', 'green'], ['yellow', 'grey']
        self.dojo.people = ['john me']
        self.assertEqual(self.dojo.add_person('john me', 'fellow', 'Y'),
                         'Person already exists', msg='Person already exists')

    def test_add_unknown_person_type(self):
        self.assertEqual(self.dojo.add_person('john me', 'follow', 'Y'),
                         'Unknown position', msg='Unknown position')

    def test_person_office_allocation(self):
        pass

    def test_person_living_space_allocation(self):
        pass

    def test_vacant_space_reduction_after_allocation(self):
        pass

    def test_names_in_room_are_true(self):
        pass

    def test_allocations_written_to_text_file(self):
        pass

    def test_unallocated_names_written_to_text_file(self):
        pass

    def test_names_in_room_are_true(self):
        pass

    def test_allocations_written_to_text_file(self):
        pass

    def test_unallocated_names_written_to_text_file(self):
        pass