diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/data/simple/items/085682ed-6792-499d-a3ab-9aebd683c011.yaml | 6 | ||||
| -rw-r--r-- | tests/data/simple/items/11189ee47ddf4796b718a483b379f976.yaml | 3 | ||||
| -rw-r--r-- | tests/data/wrong/schema.yaml | 12 | ||||
| -rw-r--r-- | tests/test_collection.py | 20 | 
4 files changed, 40 insertions, 1 deletions
| diff --git a/tests/data/simple/items/085682ed-6792-499d-a3ab-9aebd683c011.yaml b/tests/data/simple/items/085682ed-6792-499d-a3ab-9aebd683c011.yaml new file mode 100644 index 0000000..a66bb67 --- /dev/null +++ b/tests/data/simple/items/085682ed-6792-499d-a3ab-9aebd683c011.yaml @@ -0,0 +1,6 @@ +name: One Item +description: | +    This is a long block of test +    that spans multiple lines. +position: somewhere +id: 085682ed6792499da3ab9aebd683c011 diff --git a/tests/data/simple/items/11189ee47ddf4796b718a483b379f976.yaml b/tests/data/simple/items/11189ee47ddf4796b718a483b379f976.yaml new file mode 100644 index 0000000..e1f7fc1 --- /dev/null +++ b/tests/data/simple/items/11189ee47ddf4796b718a483b379f976.yaml @@ -0,0 +1,3 @@ +name: Another item +description: with just a short description +position: somewhere diff --git a/tests/data/wrong/schema.yaml b/tests/data/wrong/schema.yaml new file mode 100644 index 0000000..56031e4 --- /dev/null +++ b/tests/data/wrong/schema.yaml @@ -0,0 +1,12 @@ +name: "Lesana collection with certain errors" +lang: 'somethingish' +fields: +    - name: name +      type: string +      index: free +    - name: description +      type: text +      index: free +    - name: position +      type: string +      index: facet diff --git a/tests/test_collection.py b/tests/test_collection.py index 64dd293..d0a9864 100644 --- a/tests/test_collection.py +++ b/tests/test_collection.py @@ -1,3 +1,4 @@ +import logging  import os.path  import shutil  import unittest @@ -11,8 +12,11 @@ class testCollectionLoading(unittest.TestCase):      def test_empty(self):          self.collection = lesana.Collection('tests/data/empty') -        self.assertIsNone(self.collection.schema) +        self.assertEqual(self.collection.schema, {})          self.assertIsNotNone(self.collection.cache) +        self.assertIsNotNone(self.collection.stemmer) + +        self.collection.update_cache()      def test_simple(self):          self.collection = lesana.Collection('tests/data/simple') @@ -20,3 +24,17 @@ class testCollectionLoading(unittest.TestCase):          self.assertEqual(self.collection.schema['name'], "Simple lesana collection")          self.assertEqual(len(self.collection.schema['fields']), 3)          self.assertIsNotNone(self.collection.cache) +        self.assertIsNotNone(self.collection.stemmer) + +        self.collection.update_cache() + +    def test_wrong_language(self): +        # This loads a collection with an invalid value in lang +        with self.assertLogs(level=logging.WARNING) as cm: +            self.collection = lesana.Collection('tests/data/wrong') +        self.assertEqual(len(cm.output), 1) +        self.assertIn("Invalid language", cm.output[0]) +        # The collection will default to english, but should still work. +        self.assertIsNotNone(self.collection.schema) +        self.assertIsNotNone(self.collection.cache) +        self.assertIsNotNone(self.collection.stemmer) | 
