|
35 | 35 | primal_power,
|
36 | 36 | dual_exponential,
|
37 | 37 | dual_power,
|
| 38 | + primal_geomean, |
| 39 | + dual_geomean, |
38 | 40 | )
|
39 | 41 |
|
40 | 42 |
|
@@ -784,6 +786,40 @@ def test_as_domain(self):
|
784 | 786 | x[1].value = None
|
785 | 787 |
|
786 | 788 |
|
| 789 | +# These mosek 10 constraints can't be evaluated, pprinted, checked for convexity, |
| 790 | +# pickled, etc., so I won't use the _conic_tester_base for them |
| 791 | +class Test_primal_geomean(unittest.TestCase): |
| 792 | + def test_as_domain(self): |
| 793 | + b = primal_geomean.as_domain(r=[2, 3], x=6) |
| 794 | + self.assertIs(type(b), block) |
| 795 | + self.assertIs(type(b.q), primal_geomean) |
| 796 | + self.assertIs(type(b.r), variable_tuple) |
| 797 | + self.assertIs(type(b.x), variable) |
| 798 | + self.assertIs(type(b.c), constraint_tuple) |
| 799 | + self.assertExpressionsEqual(b.c[0].body, b.r[0]) |
| 800 | + self.assertExpressionsEqual(b.c[0].rhs, 2) |
| 801 | + self.assertExpressionsEqual(b.c[1].body, b.r[1]) |
| 802 | + self.assertExpressionsEqual(b.c[1].rhs, 3) |
| 803 | + self.assertExpressionsEqual(b.c[2].body, b.x) |
| 804 | + self.assertExpressionsEqual(b.c[2].rhs, 6) |
| 805 | + |
| 806 | + |
| 807 | +class Test_dual_geomean(unittest.TestCase): |
| 808 | + def test_as_domain(self): |
| 809 | + b = dual_geomean.as_domain(r=[2, 3], x=6) |
| 810 | + self.assertIs(type(b), block) |
| 811 | + self.assertIs(type(b.q), dual_geomean) |
| 812 | + self.assertIs(type(b.r), variable_tuple) |
| 813 | + self.assertIs(type(b.x), variable) |
| 814 | + self.assertIs(type(b.c), constraint_tuple) |
| 815 | + self.assertExpressionsEqual(b.c[0].body, b.r[0]) |
| 816 | + self.assertExpressionsEqual(b.c[0].rhs, 2) |
| 817 | + self.assertExpressionsEqual(b.c[1].body, b.r[1]) |
| 818 | + self.assertExpressionsEqual(b.c[1].rhs, 3) |
| 819 | + self.assertExpressionsEqual(b.c[2].body, b.x) |
| 820 | + self.assertExpressionsEqual(b.c[2].rhs, 6) |
| 821 | + |
| 822 | + |
787 | 823 | class TestMisc(unittest.TestCase):
|
788 | 824 | def test_build_linking_constraints(self):
|
789 | 825 | c = _build_linking_constraints([], [])
|
|
0 commit comments