def test_modify_search_filter_hook(self): # Prep an empty result. mock_api = self.generate_mock_api() # With an empty recommendation result, the Filter is set up # to return nothing. lane = RecommendationLane( self._default_library, self.work, "", novelist_api=mock_api ) filter = Filter() assert False == filter.match_nothing modified = lane.modify_search_filter_hook(filter) assert modified == filter assert True == filter.match_nothing # When there are recommendations, the Filter is modified to # match only those ISBNs. i1 = self._identifier() i2 = self._identifier() lane.recommendations = [i1, i2] filter = Filter() assert [] == filter.identifiers modified = lane.modify_search_filter_hook(filter) assert modified == filter assert [i1, i2] == filter.identifiers assert False == filter.match_nothing
def test_modify_search_filter_hook(self): # Prep an empty result. mock_api = self.generate_mock_api() # With an empty recommendation result, the Filter is set up # to return nothing. lane = RecommendationLane(self._default_library, self.work, '', novelist_api=mock_api) filter = Filter() eq_(False, filter.match_nothing) modified = lane.modify_search_filter_hook(filter) eq_(modified, filter) eq_(True, filter.match_nothing) # When there are recommendations, the Filter is modified to # match only those ISBNs. i1 = self._identifier() i2 = self._identifier() lane.recommendations = [i1, i2] filter = Filter() eq_([], filter.identifiers) modified = lane.modify_search_filter_hook(filter) eq_(modified, filter) eq_([i1, i2], filter.identifiers) eq_(False, filter.match_nothing)