def test_multi_coverage_simple(self): """Simple test, paris and lima are in the same region, should be easy""" self._mock_function(['france'], ['france']) regions = compute_regions(self.args) assert len(regions) == 1 assert regions[0] == self.regions['france'].name
def test_multi_coverage_overlap(self): """orig as 2 possible region and dest one""" self._mock_function(['france', 'peru'], ['peru']) regions = compute_regions(self.args) assert len(regions) == 1 assert regions[0] == self.regions['peru'].name
def test_multi_coverage_overlap_chose_non_free(self): """orig as 2 possible region and destination 3, we want to have france first because equador is free""" self._mock_function(['france', 'equador'], ['france', 'peru', 'equador']) regions = compute_regions(self.args) assert len(regions) == 2 print("regions ==> {}".format(regions)) assert regions[0] == self.regions['france'].name assert regions[1] == self.regions['equador'].name
def test_multi_coverage_overlap_chose_non_free2_with_priority_zero(self): """ all regions are overlaping, we have to have the non free first then the free (but we don't know which one) """ self._mock_function(['france', 'equador', 'peru', 'bolivia'], ['france', 'equador', 'peru', 'bolivia']) regions = compute_regions(self.args) assert len(regions) == 4 print("regions ==> {}".format(regions)) assert set([regions[0], regions[1]]) == set([self.regions['france'].name, self.regions['peru'].name]) assert set([regions[2], regions[3]]) == set([self.regions['equador'].name, self.regions['bolivia'].name])
def test_multi_coverage_overlap_chose_with_non_free_and_priority(self): """ all regions are overlaping, regions are sorted by priority desc """ self._mock_function(['france', 'netherlands', 'germany'], ['france', 'netherlands', 'germany']) regions = compute_regions(self.args) assert len(regions) == 3 print("regions ==> {}".format(regions)) assert regions[0] == self.regions['germany'].name assert regions[1] == self.regions['netherlands'].name assert regions[2] == self.regions['france'].name
def test_multi_coverage_diff_region(self): """orig and dest are in different region""" self._mock_function(['france'], ['peru']) with pytest.raises(RegionNotFound): compute_regions(self.args)
def test_multi_coverage_diff_multiple_region(self): """orig and dest are in different multiple regions""" self._mock_function(['france', 'bolivia'], ['peru', 'equador']) with pytest.raises(RegionNotFound): compute_regions(self.args)
def test_multi_coverage_no_region(self): """no orig not dest""" self._mock_function(None, None) with pytest.raises(RegionNotFound): compute_regions(self.args)
def test_multi_coverage_no_region_peru(self): """no orig""" self._mock_function(None, ['peru']) with pytest.raises(RegionNotFound): compute_regions(self.args)