Пример #1
0
    def test_passes_and_returns_solvable(self):
        result = solve_csp(
            csp_file=sample_csp_file_solvable,
            remove_tmp_files=True,
            csp_solver_config=csp_solver_config
        )
        self.failUnlessEqual(len(result),2)
        #print result[0]

        self.failUnlessEqual(
            set(result[1].keys()),
            set([
                'minisat_cpu_time',
                'csp_to_cnf_time',
                'minisat_time',
                'map_file_size',
                'solution_list',
                'satisfiable_bool',
                'cnf_file_size'
            ])
        )
        self.failUnlessEqual(
            result[1]['satisfiable_bool'],
            True
        )
Пример #2
0
    def test_passes_and_returns_not_solvable(self):
        result = solve_csp(
            csp_file=sample_csp_file_not_solvable,
            remove_tmp_files=True,
            csp_solver_config=csp_solver_config
        )
        self.failUnlessEqual(len(result),2)
        #print result[0]

        # csp to cnf reports unsolvable
        # --> minisat is not triggered!
        self.failUnlessEqual(
            set(result[1].keys()),
            set([
                'csp_to_cnf_time',
                'solution_list',
                'satisfiable_bool'
            ])
        )
        self.failUnlessEqual(
            result[1]['satisfiable_bool'],
            False
        )