def read_from_json(filename): # make tasks and return the list project = Project() with open('houseproject.json') as data_file: data = json.load(data_file) for task in data['Leafs']: leaf_task = Leaf(task['id'],task['label'],task['description'], task['original_hours'],task['revised_hours'], task['percent_complete'],task['est_remaining_hrs'], int(task['est_remaining_workdays']), task['engineers']) project.add_task(leaf_task) for task in data['Sequential']: seq_task = Sequential(task['id'],task['label'],task['description'], task['children']) project.add_task(seq_task) for task in data['Parallel']: par_task = Parallel(task['id'], task['label'],task['description'], task['children']) project.add_task(par_task) for engr in data['engineers']: engineer = Engineer(engr['id'], engr['name'], engr['available_hours']) project.add_engineer(engineer) project.initialize() return project
def test_add_engineer(self): engineer = Engineer(88,"Jameses",5) project = Project() project.add_engineer(engineer) self.assertEqual(len(project.engr_list), 1) self.assertEqual(project.get_engineer(88), engineer)