def run(xmloutput=False): """Run all gpfit unit tests. Arguments --------- xmloutput: bool If true, generate xml output files for continuous integration """ if xmloutput: run_tests(TESTS, xmloutput='test_reports') else: run_tests(TESTS)
def run(xmloutput=False): """Run all gpkit-models unit tests. Arguments --------- xmloutput: bool If true, generate xml output files for continuous integration """ if xmloutput: raise NotImplementedError("gpkit-models CI has not yet been set up") attach_tests() run_tests([TestModels])
def run(xmloutput=False, tests=None, verbosity=1): """Run all gpkit unit tests. Arguments --------- xmloutput: bool If true, generate xml output files for continuous integration """ if tests is None: tests = import_tests() if xmloutput: run_tests(tests, xmloutput='test_reports') else: run_tests(tests, verbosity=verbosity)
def run(xmloutput=False, tests=None, verbosity=1): """Run all gpkit unit tests. Arguments --------- xmloutput: bool If true, generate xml output files for continuous integration """ if tests is None: tests = import_tests() if xmloutput: run_tests(tests, xmloutput='test_reports') else: run_tests(tests, verbosity=verbosity)
def run(xmloutput=False): """Run all gpkit unit tests. Arguments --------- xmloutput: bool If true, generate xml output files for continuous integration """ if xmloutput: run_tests(TESTS, xmloutput='test_reports') else: run_tests(TESTS) print("\n##################################" "####################################") print("Running with units disabled:") gpkit.disable_units() if xmloutput: run_tests(TESTS, xmloutput='test_reports_nounits') else: run_tests(TESTS, verbosity=1)
def run(xmloutput=False): """Run all gpkit unit tests. Arguments --------- xmloutput: bool If true, generate xml output files for continuous integration """ tests = import_tests() if xmloutput: run_tests(tests, xmloutput='test_reports') else: run_tests(tests) print("\n##################################" "####################################") print("Running with units disabled:") gpkit.disable_units() if xmloutput: run_tests(tests, xmloutput='test_reports_nounits') else: run_tests(tests, verbosity=1)
def test_modelname_added(self): t = Thing(2) for vk in t.varkeys: self.assertEqual(vk.models, ["Thing"]) def test_no_naming_on_var_access(self): # make sure that analysis models don't add their names to # variables looked up from other models box = Box() area_bounds = BoxAreaBounds(box) M = Model(box["V"], [box, area_bounds]) for var in ("h", "w", "d"): self.assertEqual(len(M.variables_byname(var)), 1) TESTS = [TestModelSolverSpecific, TestModelNoSolve] MULTI_SOLVER_TESTS = [TestGP, TestSP] for testcase in MULTI_SOLVER_TESTS: for solver in settings["installed_solvers"]: if solver: test = type(testcase.__name__ + "_" + solver, (testcase, ), {}) setattr(test, "solver", solver) setattr(test, "ndig", NDIGS[solver]) TESTS.append(test) if __name__ == "__main__": # pylint: disable=wrong-import-position from gpkit.tests.helpers import run_tests run_tests(TESTS)
# try for VectorVariable too y = VectorVariable(3, 'y') self.assertEqual(te_tangent(y, 1), y) self.assertEqual(te_tangent(y, 3), y + y**3/3. + 2*y**5/15.) self.assertEqual(te_tangent(y, 0), 0) # make sure y was not modified self.assertEqual(y, VectorVariable(3, 'y')) def test_fmincon_generator(self): """Test fmincon comparison tool""" x = Variable('x') y = Variable('y') m = Model(x, [x**3.2 >= 17*y + y**-0.2, x >= 2, y == 4]) obj, c, ceq, DC, DCeq = generate_mfiles(m, writefiles=False) self.assertEqual(obj, 'x(2)') self.assertEqual(c, ['-x(2)**3.2 + 17*x(1) + x(1)**-0.2', '-x(2) + 2']) self.assertEqual(ceq, ['-x(1) + 4']) self.assertEqual(DC, ['-0.2*x(1).^-1.2 + 17,...\n ' + '-3.2*x(2).^2.2', '0,...\n -1']) self.assertEqual(DCeq, ['-1,...\n 0']) TESTS = [TestTools] if __name__ == '__main__': # pylint: disable=wrong-import-position from gpkit.tests.helpers import run_tests run_tests(TESTS)
# w has two Sub models, both with their own variable m self.assertEqual(len(w.variables_byname("m")), 2) # keys for both submodel m's should be in the parent model varkeys self.assertIn(w.subA["m"].key, w.varkeys) self.assertIn(w.subB["m"].key, w.varkeys) # keys of w.variables_byname("m") should match m.varkeys m_vbn_keys = [v.key for v in w.variables_byname("m")] self.assertIn(w.subA["m"].key, m_vbn_keys) self.assertIn(w.subB["m"].key, m_vbn_keys) # dig a level deeper, into the keymap self.assertEqual(len(w.varkeys.keymap["m"]), 2) w2 = Widget() TESTS = [TestModelSolverSpecific, TestModelNoSolve] MULTI_SOLVER_TESTS = [TestGP, TestSP] for testcase in MULTI_SOLVER_TESTS: for solver in settings["installed_solvers"]: if solver: test = type(str(testcase.__name__ + "_" + solver), (testcase, ), {}) setattr(test, "solver", solver) setattr(test, "ndig", NDIGS[solver]) TESTS.append(test) if __name__ == "__main__": # pragma: no cover # pylint: disable=wrong-import-position from gpkit.tests.helpers import run_tests run_tests(TESTS, verbosity=0)