def test_amount_returned_when_no_fodder_available_to_herb(
         self, example_pop_herb):
     """
     Tests available_fodder_herbivore method.
     Asserts that no fodder is provided to the herbivore when there is no
     fodder available.
     """
     landscape = Landscape(example_pop_herb)
     landscape.fodder_amount = 0
     assert landscape.available_fodder_herbivore() == 0
     assert landscape.fodder_amount == 0
 def test_amount_returned_when_restricted_fodder_is_available_to_herb(
         self, example_pop_herb):
     """
     Tests available_fodder_herbivore method.
     Asserts that all of the fodder in the cell is provided to a herbivore
     when it's demand is larger than the amount of fodder available.
     Also asserts that the amount of fodder left now is zero.
     """
     landscape = Landscape(example_pop_herb)
     landscape.fodder_amount = Herbivore.params["F"] / 2
     old_fodder_amount = landscape.fodder_amount
     available_fodder_to_herb = landscape.available_fodder_herbivore()
     assert available_fodder_to_herb == Herbivore.params["F"] / 2
     assert landscape.fodder_amount == old_fodder_amount - \
         available_fodder_to_herb
 def test_amount_returned_when_enough_fodder_is_available_to_herb(
         self, example_pop_herb):
     """
     Tests available_fodder_herbivore method.
     Asserts that a herbivore is provided with the amount it desires, when
     enough fodder is available.
     Also asserts that the amount of fodder
     provided is subtracted from the initial fodder amount.
     """
     landscape = Landscape(example_pop_herb)
     landscape.regrowth()
     old_fodder_amount = landscape.fodder_amount
     available_fodder_to_herb = landscape.available_fodder_herbivore()
     assert available_fodder_to_herb == Herbivore.params["F"]
     assert landscape.fodder_amount == old_fodder_amount - \
         available_fodder_to_herb