diff options
| -rw-r--r-- | archaeological_context_records/tests.py | 12 | ||||
| -rw-r--r-- | archaeological_operations/tests.py | 33 | ||||
| -rw-r--r-- | ishtar_common/tests.py | 7 | ||||
| -rw-r--r-- | ishtar_common/views_item.py | 4 | 
4 files changed, 38 insertions, 18 deletions
| diff --git a/archaeological_context_records/tests.py b/archaeological_context_records/tests.py index 834979369..bf8864d56 100644 --- a/archaeological_context_records/tests.py +++ b/archaeological_context_records/tests.py @@ -439,24 +439,24 @@ class ContextRecordSearchTest(ContextRecordInit, TestCase):          base_town.children.add(child_town)          # simple search -        search = {'town': base_town.pk} +        search = {'town': base_town.cached_label}          response = c.get(reverse('get-contextrecord'), search)          self.assertEqual(response.status_code, 200)          self.assertEqual(json.loads(response.content)['recordsTotal'], 1)          # parent search -        search = {'town': parent_town.pk} +        search = {'town': parent_town.cached_label}          response = c.get(reverse('get-contextrecord'), search)          self.assertEqual(response.status_code, 200)          self.assertEqual(json.loads(response.content)['recordsTotal'], 1)          # child search -        search = {'town': child_town.pk} +        search = {'town': child_town.cached_label}          response = c.get(reverse('get-contextrecord'), search)          self.assertEqual(response.status_code, 200)          self.assertEqual(json.loads(response.content)['recordsTotal'], 1) -    def testSearchExport(self): +    def test_search_export(self):          c = Client()          response = c.get(reverse('get-contextrecord'))          # no result when no authentification @@ -471,7 +471,7 @@ class ContextRecordSearchTest(ContextRecordInit, TestCase):          # test search between relations          response = c.get(reverse('get-contextrecord'),                           {'label': 'cr 1', -                          'cr_relation_types_0': self.cr_rel_type.pk}) +                          'record-relation-type': self.cr_rel_type.label})          self.assertEqual(json.loads(response.content)['recordsTotal'], 2)          # test search vector          response = c.get(reverse('get-contextrecord'), @@ -502,7 +502,7 @@ class ContextRecordSearchTest(ContextRecordInit, TestCase):              relation_type=rel_ope)          response = c.get(reverse('get-contextrecord'),                           {'operation__year': 2010, -                          'ope_relation_types_0': rel_ope.pk}) +                          'operation-relation-type': rel_ope.label})          self.assertEqual(json.loads(response.content)['recordsTotal'], 2)          # export          response = c.get(reverse('get-contextrecord-full', diff --git a/archaeological_operations/tests.py b/archaeological_operations/tests.py index d7cf67849..86fbd0d7b 100644 --- a/archaeological_operations/tests.py +++ b/archaeological_operations/tests.py @@ -1053,7 +1053,7 @@ class OperationTest(TestCase, OperationInitTest):          operation.comment = u"Zardoz"          operation.code_patriarche = u"HUIAAA5"          operation.save() -        for key in ('old', 'op2010', 'dirty', 'daisy', "'2010'", "zardoz", +        for key in ('old', 'dirty', 'daisy', "'2010'", "zardoz",                      "huiaaa5"):              self.assertIn(key, operation.search_vector) @@ -1474,7 +1474,7 @@ class OperationSearchTest(TestCase, OperationInitTest):          response = c.get(reverse('get-operation'), {'year': '2010'})          self.assertEqual(json.loads(response.content)['recordsTotal'], 2)          response = c.get(reverse('get-operation'), -                         {'operator': self.orgas[0].pk}) +                         {'operator': self.orgas[0].name})          result = json.loads(response.content)          self.assertEqual(result['recordsTotal'], 3) @@ -1643,12 +1643,14 @@ class OperationSearchTest(TestCase, OperationInitTest):              relation_type=rel1)          return rel1, rel2 -    def testRelatedSearch(self): +    def test_related_search(self):          c = Client()          rel1, rel2 = self.create_relations()          self.operations[1].year = 2011          self.operations[1].save() -        search = {'year': '2010', 'relation_types_0': rel2.pk} +        search = { +            'search_vector': 'year=2010 relation-types="{}"'.format(rel2.name) +        }          response = c.get(reverse('get-operation'), search)          # no result when no authentification          self.assertTrue(not json.loads(response.content)) @@ -1772,21 +1774,30 @@ class OperationPermissionTest(TestCase, OperationInitTest):          response = c.get(reverse('get-operation'), {'year': '2010'})          # only one "own" operation available          self.assertTrue(json.loads(response.content)) -        self.assertTrue(json.loads(response.content)['recordsTotal'] == 1) +        self.assertEqual(json.loads(response.content)['recordsTotal'], 1)          response = c.get(reverse('get-operation'), -                         {'operator': self.orgas[0].pk}) -        self.assertTrue(json.loads(response.content)['recordsTotal'] == 1) +                         {'operator': self.orgas[0].name}) +        self.assertEqual(json.loads(response.content)['recordsTotal'], 1) +        response = c.get(reverse('get-operation'), +                         {'search_vector': 'operator="{}"'.format( +                             self.orgas[0].name)}) +        self.assertEqual(json.loads(response.content)['recordsTotal'], 1)          # area filter          c = Client()          c.login(username=self.alt_username2, password=self.alt_password2) -        response = c.get(reverse('get-operation'), {'year': '2010'}) +        response = c.get(reverse('get-operation'), +                         {'year': '2010'})          # only one "own" operation available          self.assertTrue(json.loads(response.content)) -        self.assertTrue(json.loads(response.content)['recordsTotal'] == 1) +        self.assertEqual(json.loads(response.content)['recordsTotal'], 1)          response = c.get(reverse('get-operation'), -                         {'operator': self.orgas[0].pk}) -        self.assertTrue(json.loads(response.content)['recordsTotal'] == 1) +                         {'operator': self.orgas[0].name}) +        self.assertEqual(json.loads(response.content)['recordsTotal'], 1) +        response = c.get(reverse('get-operation'), +                         {'search_vector': 'operator="{}"'.format( +                             self.orgas[0].name)}) +        self.assertEqual(json.loads(response.content)['recordsTotal'], 1)      def test_own_modify(self):          operation_pk1 = self.operations[0].pk diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py index c2abab10c..8de8fda6e 100644 --- a/ishtar_common/tests.py +++ b/ishtar_common/tests.py @@ -1457,6 +1457,13 @@ class IshtarBasicTest(TestCase):          town.year = 2050          town.save()          town = models.Town.objects.get(numero_insee="99999") +        self.assertEqual(town.cached_label, "Sin City - 99") + +        models.Town.objects.create(name="Mega City", numero_insee="99999", +                                   year=2051) +        mega_city = models.Town.objects.get(numero_insee="99999", year=2051) +        town.children.add(mega_city) +        town = models.Town.objects.get(numero_insee="99999-2050")          self.assertEqual(town.cached_label, "Sin City - 99 (2050)") diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index b53beab90..211cb7897 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -568,7 +568,9 @@ def _manage_hierarchic_fields(dct, and_reqs):                      suffix = 'cached_label__iexact'                  else:                      continue -                val = _clean_type_val(dct.pop(req)) +                val = _clean_type_val(dct.pop(req)).strip('"') +                if val.startswith('"') and val.endswith('"'): +                    val = val[1:-1]                  reqs = Q(**{req: val})                  base_req = req[:]                  for idx in range(HIERARCHIC_LEVELS): | 
