def test_valeur_colonne(self): tab = Table() tab.create_columns(['col1']) tab.append_row([1]) tab.append_row([2]) self.assertEqual(tab, [[1],[2]]) self.assertEqual(tab[:,0], [1,2])
def test_valeur_colonne(self): tab = Table() tab.create_columns(['col1']) tab.append_row([1]) tab.append_row([2]) self.assertEqual(tab, [[1], [2]]) self.assertEqual(tab[:, 0], [1, 2])
def test_valeur_scalaire(self): tab = Table() tab.create_columns(['col1']) tab.append_row([1]) self.assertEqual(tab, [[1]]) tab.append_row([2]) self.assertEqual(tab[0,0], 1) self.assertEqual(tab[1,0], 2)
def test_valeur_scalaire(self): tab = Table() tab.create_columns(['col1']) tab.append_row([1]) self.assertEqual(tab, [[1]]) tab.append_row([2]) self.assertEqual(tab[0, 0], 1) self.assertEqual(tab[1, 0], 2)
def read_schedule(self, fname): schedule = xml_parse( fname ) checker = ScheduleChecker() if not checker.validate(schedule, fname): raise MalformedProjectFile(str(checker)) activities = Table(default_value=None, col_names=['begin', 'end', 'resource', 'task', 'usage', 'src']) tasks = Table(default_value=None, col_names=['begin', 'end', 'status', 'cost', 'unit']) costs = Table(default_value=None, col_names=['task', 'resource', 'cost', 'unit']) for task in schedule.findall("task"): t_id = task.get('id') tasks.create_row( t_id ) global_cost = task.find("global-cost") tasks.set_cell_by_ids(t_id, 'unit', global_cost.get('unit')) tasks.set_cell_by_ids(t_id, 'cost', float(global_cost.text) ) tasks.set_cell_by_ids(t_id, 'status', task.find('status').text ) for cd in task.findall("contraint-date"): date = iso_date( cd.text ) if cd.get('type') == 'begin-at-date': tasks.set_cell_by_ids( t_id, 'begin', date ) elif cd.get('type') == 'end-at-date': tasks.set_cell_by_ids( t_id, 'end', date ) for ct in task.findall("constraint-task"): pass #raise NotImplementedError("constraint-task not implemented in schedule") for report in task.findall("report-list/report"): activities.append_row( (iso_date(report.get('from')), iso_date(report.get('to')), report.get('idref'), t_id, float(report.get('usage')) ) ) for cost in task.findall("costs_list/cost"): costs.append_row( (t_id, cost.attrib['idref'],float(cost.text),None) ) for milestone in schedule.findall("milestone"): t_id = milestone.get('id') cd = milestone.find("constraint-date") date = iso_date( cd.text ) self.project.milestones[t_id] = date self.project.add_schedule(activities) self.project.tasks = tasks self.project.costs = costs self.project.nb_solution = 1 # if we read a schedule from an xml file,
def setUp(self): t = Table() t.create_columns(['date', 'res', 'task', 'usage']) t.append_row(['date1', 'ing1', 'task1', 0.3]) t.append_row(['date1', 'ing2', 'task2', 0.3]) t.append_row(['date2', 'ing3', 'task3', 0.3]) t.append_row(['date3', 'ing4', 'task2', 0.3]) t.append_row(['date1', 'ing1', 'task3', 0.3]) t.append_row(['date3', 'ing1', 'task3', 0.3]) self.table = t
def setUp(self): t = Table() t.create_columns(["date", "res", "task", "usage"]) t.append_row(["date1", "ing1", "task1", 0.3]) t.append_row(["date1", "ing2", "task2", 0.3]) t.append_row(["date2", "ing3", "task3", 0.3]) t.append_row(["date3", "ing4", "task2", 0.3]) t.append_row(["date1", "ing1", "task3", 0.3]) t.append_row(["date3", "ing1", "task3", 0.3]) self.table = t
def test_valeur_ligne(self): tab = Table() tab.create_columns(['col1','col2']) tab.append_row([1,2]) self.assertEqual(tab, [[1,2]])
class TableStyleSheetTC(TestCase): """The Stylesheet test case """ def setUp(self): """Builds a simple table to test the stylesheet """ self.table = Table() self.table.create_row('row1') self.table.create_columns(['a','b','c']) self.stylesheet = TableStyleSheet() # We don't want anything to be printed self.stdout_backup = sys.stdout sys.stdout = StringIO() def tearDown(self): sys.stdout = self.stdout_backup def test_add_rule(self): """Tests that the regex pattern works as expected. """ rule = '0_2 = sqrt(0_0**2 + 0_1**2)' self.stylesheet.add_rule(rule) self.table.set_row(0, [3,4,0]) self.table.apply_stylesheet(self.stylesheet) self.assertEqual(self.table[0], [3,4,5]) self.assertEqual(len(self.stylesheet.rules), 1) self.stylesheet.add_rule('some bad rule with bad syntax') self.assertEqual(len(self.stylesheet.rules), 1, "Ill-formed rule mustn't be added") self.assertEqual(len(self.stylesheet.instructions), 1, "Ill-formed rule mustn't be added") def test_stylesheet_init(self): """tests Stylesheet.__init__""" rule = '0_2 = 1' sheet = TableStyleSheet([rule, 'bad rule']) self.assertEqual(len(sheet.rules), 1, "Ill-formed rule mustn't be added") self.assertEqual(len(sheet.instructions), 1, "Ill-formed rule mustn't be added") def test_rowavg_rule(self): """Tests that add_rowavg_rule works as expected """ self.table.set_row(0, [10,20,0]) self.stylesheet.add_rowavg_rule((0,2), 0, 0, 1) self.table.apply_stylesheet(self.stylesheet) val = self.table[0,2] self.assert_(int(val) == 15) def test_rowsum_rule(self): """Tests that add_rowsum_rule works as expected """ self.table.set_row(0, [10,20,0]) self.stylesheet.add_rowsum_rule((0,2), 0, 0, 1) self.table.apply_stylesheet(self.stylesheet) val = self.table[0,2] self.assert_(val == 30) def test_colavg_rule(self): """Tests that add_colavg_rule works as expected """ self.table.set_row(0, [10,20,0]) self.table.append_row([12,8,3], 'row2') self.table.create_row('row3') self.stylesheet.add_colavg_rule((2,0), 0, 0, 1) self.table.apply_stylesheet(self.stylesheet) val = self.table[2,0] self.assert_(int(val) == 11) def test_colsum_rule(self): """Tests that add_colsum_rule works as expected """ self.table.set_row(0, [10,20,0]) self.table.append_row([12,8,3], 'row2') self.table.create_row('row3') self.stylesheet.add_colsum_rule((2,0), 0, 0, 1) self.table.apply_stylesheet(self.stylesheet) val = self.table[2,0] self.assert_(val == 22)
def test_valeur_ligne(self): tab = Table() tab.create_columns(['col1', 'col2']) tab.append_row([1, 2]) self.assertEqual(tab, [[1, 2]])
class TableStyleSheetTC(TestCase): """The Stylesheet test case """ def setUp(self): """Builds a simple table to test the stylesheet """ self.table = Table() self.table.create_row('row1') self.table.create_columns(['a', 'b', 'c']) self.stylesheet = TableStyleSheet() # We don't want anything to be printed self.stdout_backup = sys.stdout sys.stdout = StringIO() def tearDown(self): sys.stdout = self.stdout_backup def test_add_rule(self): """Tests that the regex pattern works as expected. """ rule = '0_2 = sqrt(0_0**2 + 0_1**2)' self.stylesheet.add_rule(rule) self.table.set_row(0, [3, 4, 0]) self.table.apply_stylesheet(self.stylesheet) self.assertEqual(self.table[0], [3, 4, 5]) self.assertEqual(len(self.stylesheet.rules), 1) self.stylesheet.add_rule('some bad rule with bad syntax') self.assertEqual(len(self.stylesheet.rules), 1, "Ill-formed rule mustn't be added") self.assertEqual(len(self.stylesheet.instructions), 1, "Ill-formed rule mustn't be added") def test_stylesheet_init(self): """tests Stylesheet.__init__""" rule = '0_2 = 1' sheet = TableStyleSheet([rule, 'bad rule']) self.assertEqual(len(sheet.rules), 1, "Ill-formed rule mustn't be added") self.assertEqual(len(sheet.instructions), 1, "Ill-formed rule mustn't be added") def test_rowavg_rule(self): """Tests that add_rowavg_rule works as expected """ self.table.set_row(0, [10, 20, 0]) self.stylesheet.add_rowavg_rule((0, 2), 0, 0, 1) self.table.apply_stylesheet(self.stylesheet) val = self.table[0, 2] self.assert_(int(val) == 15) def test_rowsum_rule(self): """Tests that add_rowsum_rule works as expected """ self.table.set_row(0, [10, 20, 0]) self.stylesheet.add_rowsum_rule((0, 2), 0, 0, 1) self.table.apply_stylesheet(self.stylesheet) val = self.table[0, 2] self.assert_(val == 30) def test_colavg_rule(self): """Tests that add_colavg_rule works as expected """ self.table.set_row(0, [10, 20, 0]) self.table.append_row([12, 8, 3], 'row2') self.table.create_row('row3') self.stylesheet.add_colavg_rule((2, 0), 0, 0, 1) self.table.apply_stylesheet(self.stylesheet) val = self.table[2, 0] self.assert_(int(val) == 11) def test_colsum_rule(self): """Tests that add_colsum_rule works as expected """ self.table.set_row(0, [10, 20, 0]) self.table.append_row([12, 8, 3], 'row2') self.table.create_row('row3') self.stylesheet.add_colsum_rule((2, 0), 0, 0, 1) self.table.apply_stylesheet(self.stylesheet) val = self.table[2, 0] self.assert_(val == 22)