def test_1(self):
     weight = 10
     values = [120, 100, 90, 80, 70, 60, 50]
     random.shuffle(values)  # the order should not matter
     max_weight = np.infty
     bank = SameWeightBank()
     bank.setup(weight=weight, values=values)
     values_solution = bank.values
     weights_solution = bank.weights
     values_robbed, weights_robbed = bank.rob(max_weight=max_weight, knapsack_alg=method)
     self.assertCountEqual(zip(values_robbed, weights_robbed),
                           zip(values_solution, weights_solution))
 def test_8(self):
     weight = 10
     values = [120, 100, 90, 80, 70, 60, 50]
     random.shuffle(values)  # the order should not matter
     max_weight = 72
     bank = SameWeightBank()
     bank.setup(weight=weight, values=values)
     values_greedy_solution = [120, 100, 90, 80, 70, 60, 50]
     weights_greedy_solution = [10, 10, 10, 10, 10, 10, 10]
     values_robbed, weights_robbed = bank.rob(max_weight=max_weight, knapsack_alg='greedy')
     self.assertCountEqual(zip(values_robbed, weights_robbed),
                           zip(values_greedy_solution, weights_greedy_solution))
 def test_8(self):
     weight = 10
     values = [120, 100, 90, 80, 70, 60, 50]
     random.shuffle(values)  # the order should not matter
     max_weight = 72
     bank = SameWeightBank()
     bank.setup(weight=weight, values=values)
     values_solution = [120, 100, 90, 80, 70, 60, 50]
     weights_solution = [10, 10, 10, 10, 10, 10, 10]
     values_robbed, weights_robbed = bank.rob(max_weight=max_weight,
                                              knapsack_alg=method)
     self.assertCountEqual(zip(values_robbed, weights_robbed),
                           zip(values_solution, weights_solution))
 def test_1(self):
     weight = 10
     values = [120, 100, 90, 80, 70, 60, 50]
     random.shuffle(values)  # the order should not matter
     max_weight = np.infty
     bank = SameWeightBank()
     bank.setup(weight=weight, values=values)
     values_greedy_solution = bank.values
     weights_greedy_solution = bank.weights
     values_robbed, weights_robbed = bank.rob(max_weight=max_weight,
                                              knapsack_alg='greedy')
     self.assertCountEqual(
         zip(values_robbed, weights_robbed),
         zip(values_greedy_solution, weights_greedy_solution))