def test_objective_management(self): builder = MPModelBuilder() x = builder.add_binary_variable('x') y = builder.add_binary_variable('y') z = builder.add_binary_variable('z') builder.set_objective(3.0 * x + 4.0 * y + 5.0 * z) self.assert_equal(3.0 * x + 4.0 * y + 5.0 * z, builder.get_objective()._expr)
def test_variables_management(self): builder = MPModelBuilder() x = builder.add_binary_variable('x') self.assert_equal('x', x.get_name()) y = builder.add_binary_variable('y') self.assert_equal('y', y.get_name()) z = builder.add_binary_variable('z') self.assert_equal('z', z.get_name()) self.assert_equal(3, builder.get_num_variables()) self.assert_equal([x, y, z], builder.get_variables())
def test_constraints_management(self): builder = MPModelBuilder() x = builder.add_binary_variable("x") y = builder.add_binary_variable("y") c1 = builder.add_constraint(5.0 * x + 3.0 * y <= 7, "c1") self.assert_equal(1, builder.get_num_constraints()) self.assert_true(set([id(var) for var in c1.get_variables()]) == set([id(x), id(y)])) c3 = builder.add_constraint(4.0 * x + 6.0 * y <= 5, "c3") c2 = builder.add_constraint(2.0 * x + 2.0 * y <= 4, "c2") self.assert_equal([c1, c3, c2], builder.get_constraints())