def test_unload_cargo_decreases_load_of_container(self):
		bag = MixedCargoContainer()
		bag.set_weight_capacity(Fish.weight * 10)
		bag.get_slot(Fish)['load'] = 1
		load = bag.unload_cargo(Fish, 1)
		self.assertEqual(bag.current_load(Fish), 0)
		self.assertEqual(load, 1)
	def test_unload_cargo_decreases_load_of_container_and_returns_all_available_cargo_up_to_the_requested_quantity(self):  # noqa
		bag = MixedCargoContainer()
		bag.set_weight_capacity(Fish.weight * 10)
		bag.get_slot(Fish)['load'] = 3
		load = bag.unload_cargo(Fish, 7)
		self.assertEqual(bag.current_load(Fish), 0)
		self.assertEqual(load, 3)
	def test_load_cargo_returns_entire_load_if_slot_is_already_at_capacity(self):  # noqa
		bag = MixedCargoContainer()
		bag.set_weight_capacity(Fish.weight * 3)
		bag.get_slot(Fish)['load'] = 3
		remains = bag.load_cargo(Fish, 7)
		self.assertEqual(bag.current_load(Fish), 3)
		self.assertEqual(remains, 7)
	def test_current_load_returns_the_current_number_of_resource_type_held_in_the_container(self):  # noqa
		bag = MixedCargoContainer()
		bag.set_weight_capacity(100)
		slot = bag.get_slot(Fish)
		slot['load'] = 3
		slot = bag.get_slot(Cabbage)
		slot['load'] = 5
		self.assertEqual(bag.current_load(Fish), 3)
	def test_load_cargo_increases_load_of_slot_if_bag_can_hold_the_resource_and_returns_excess_that_could_not_be_loaded(self):  # noqa
		bag = MixedCargoContainer()
		bag.set_weight_capacity(Fish.weight * 5 - 1)
		remains = bag.load_cargo(Fish, 7)
		self.assertEqual(bag.current_load(Fish), 4.5)
		self.assertEqual(remains, 2.5)
	def test_load_cargo_increases_load_of_container(self):
		bag = MixedCargoContainer()
		bag.set_weight_capacity(Fish.weight * 10)
		remains = bag.load_cargo(Fish, 1)
		self.assertEqual(bag.current_load(Fish), 1)
		self.assertEqual(remains, 0)
	def test_unload_cargo_returns_nothing_if_bag_has_no_resources_of_requested_type(self):  # noqa
		bag = MixedCargoContainer()
		bag.set_weight_capacity(Fish.weight * 10)
		load = bag.unload_cargo(Fish, 7)
		self.assertEqual(bag.current_load(Fish), 0)
		self.assertEqual(load, 0)