def test_unload_cargo_decreases_load_of_slot_if_tray_can_hold_the_resource_and_all_available_cargo_up_to_the_requested_quantity(self): # noqa tray = SlottedCargoContainer() tray.add_resource_slot(Fish, 3) tray.get_slot(Fish)['load'] = 3 load = tray.unload_cargo(Fish, 7) self.assertEqual(tray.current_load(Fish), 0) self.assertEqual(load, 3)
def test_load_cargo_returns_entire_load_if_slot_is_already_at_capacity(self): # noqa tray = SlottedCargoContainer() tray.add_resource_slot(Fish, 3) tray.get_slot(Fish)['load'] = 3 remains = tray.load_cargo(Fish, 7) self.assertEqual(tray.current_load(Fish), 3) self.assertEqual(remains, 7)
def test_unload_cargo_returns_nothing_if_slot_is_empty(self): tray = SlottedCargoContainer() tray.add_resource_slot(Fish, 3) load = tray.unload_cargo(Fish, 7) self.assertEqual(tray.current_load(Fish), 0) self.assertEqual(load, 0)
def test_load_cargo_increases_load_of_slot_if_tray_can_hold_the_resource_and_returns_excess_that_could_not_be_loaded(self): # noqa tray = SlottedCargoContainer() tray.add_resource_slot(Fish, 3) remains = tray.load_cargo(Fish, 7) self.assertEqual(tray.current_load(Fish), 3) self.assertEqual(remains, 4)
def test_load_cargo_increases_load_of_slot_if_tray_can_hold_the_resource(self): # noqa tray = SlottedCargoContainer() tray.add_resource_slot(Fish, 1) remains = tray.load_cargo(Fish, 1) self.assertEqual(tray.current_load(Fish), 1) self.assertEqual(remains, 0)