class DecisionMakerTest(unittest.TestCase): def setUp(self): self.maker = DecisionMaker() self.maker.options = ["term0", "term1", "term2", "term3", "term4", "term5", "term6", "term7", "term8"] self.maker.map_estimates_to_integers() self.maker.results = [["term4", "term6", "term3", "term5"], ["term5", "term6", "term5", "term5"], ["term5", "term8", "term8", "term5"], ["term4", "term5", "term3", "term5"]] self.maker.matrix = [ [TwoTuple("term4", 0, 4), TwoTuple("term6", 0, 6), TwoTuple("term3", 0, 3), TwoTuple("term5", 0, 5)], [TwoTuple("term5", 0, 5), TwoTuple("term6", 0, 6), TwoTuple("term5", 0, 5), TwoTuple("term5", 0, 5)], [TwoTuple("term5", 0, 5), TwoTuple("term8", 0, 8), TwoTuple("term8", 0, 8), TwoTuple("term5", 0, 5)], [TwoTuple("term4", 0, 4), TwoTuple("term5", 0, 5), TwoTuple("term3", 0, 3), TwoTuple("term5", 0, 5)]] def test_two_tuples_decision_root_make_initial_matrix(self): self.assertEqual(self.maker.matrix, self.maker.make_matrix_two_tuples()) def test_two_tuples_decision_calculate_estimates_by_alternative(self): res = [TwoTuple("term4", 0.5, 4), TwoTuple("term6", 0.25, 6), TwoTuple("term5", -0.25, 5), TwoTuple("term5", 0, 5)] self.assertEqual(res, self.maker.calculate_total_by_alternative()) def test_two_tuples_decision_final_decision(self): res = TwoTuple("term6", 0.25, 6) self.assertEqual(res, self.maker.two_tuples_decision()) def tearDown(self): del self.maker
def setUp(self): self.maker = DecisionMaker() self.maker.options = ["term0", "term1", "term2", "term3", "term4", "term5", "term6", "term7", "term8"] self.maker.map_estimates_to_integers() self.maker.results = [["term4", "term6", "term3", "term5"], ["term5", "term6", "term5", "term5"], ["term5", "term8", "term8", "term5"], ["term4", "term5", "term3", "term5"]] self.maker.matrix = [ [TwoTuple("term4", 0, 4), TwoTuple("term6", 0, 6), TwoTuple("term3", 0, 3), TwoTuple("term5", 0, 5)], [TwoTuple("term5", 0, 5), TwoTuple("term6", 0, 6), TwoTuple("term5", 0, 5), TwoTuple("term5", 0, 5)], [TwoTuple("term5", 0, 5), TwoTuple("term8", 0, 8), TwoTuple("term8", 0, 8), TwoTuple("term5", 0, 5)], [TwoTuple("term4", 0, 4), TwoTuple("term5", 0, 5), TwoTuple("term3", 0, 3), TwoTuple("term5", 0, 5)]]
class DesicionMakerSupportingsTest(unittest.TestCase): def setUp(self): self.maker = DecisionMaker() self.maker.options = ["bad", "satisfactory", "good", "excellent"] self.maker.map_estimates_to_integers() def test_symbolic_operator_correct(self): self.assertEqual(TwoTuple("good", -0.2, 2), self.maker.symbolic_aggregation_operator(1.8), "1.8 means (good,-0.2)") def test_symbolic_operator_raisesException(self): with self.assertRaises(IndexError): self.maker.symbolic_aggregation_operator(3.8) def test_symbolic_operator_reverse_correct(self): self.assertEqual(1.8, self.maker.symbolic_aggregation_operator_reverse(TwoTuple("good", -0.2, 2)), "(good,-0.2) means 1.8") def tearDown(self): del self.maker
def setUp(self): self.maker = DecisionMaker() self.maker.options = ["bad", "satisfactory", "good", "excellent"] self.maker.map_estimates_to_integers()