Esempio n. 1
0
    def test_importer_multi_levels_modified(self):
        """Ensure that the content is correctly modified"""
        container = self.container
        children = [
            {
                "identifier": u"001.1",
                "title": u"first",
                "informations": None,
                "enabled": None,
                "_children": [],
            },
            {
                "identifier": u"001.2",
                "title": u"second modified",
                "informations": None,
                "enabled": None,
                "_children": [],
            },
        ]
        utils.importer(container, None, u"001", u"First Modified", None, None,
                       children)

        self.assertEqual(2, len(container))
        self.assertEqual(["001", "002"],
                         sorted([e.identifier for e in container.values()]))

        subelement = container.get_by("identifier", "001")
        self.assertEqual(u"First Modified", subelement.title)
        self.assertEqual(2, len(subelement))
        self.assertEqual(["001.1", "001.2"],
                         sorted([e.identifier for e in subelement.values()]))
        self.assertEqual(["first", "second modified"],
                         sorted([e.title for e in subelement.values()]))
Esempio n. 2
0
    def test_importer_one_level(self):
        """Ensure that the content is correctly created"""
        container = api.content.create(title="Container2",
                                       type="ClassificationContainer",
                                       container=self.folder)
        _children = [
            {
                "identifier": u"key1.1",
                "title": u"Key 1.1",
                "informations": None,
                "enabled": None,
                "_children": [],
            },
            {
                "identifier": u"key1.2",
                "title": u"Key 1.2",
                "informations": None,
                "enabled": None,
                "_children": [],
            },
        ]
        utils.importer(container, None, u"key1", u"Key 1", None, None,
                       _children)
        utils.importer(container, None, u"key2", u"Key 1", None, None, None)

        self.assertEqual(2, len(container))
        self.assertEqual(["key1", "key2"],
                         sorted([e.identifier for e in container.values()]))

        subelement = container.get_by("identifier", "key1")
        self.assertEqual(2, len(subelement))
        self.assertEqual(["key1.1", "key1.2"],
                         sorted([e.identifier for e in subelement.values()]))
Esempio n. 3
0
    def test_importer_one_level_modified_result(self):
        """Ensure that the returned list is correct"""
        container = self.container
        modified = utils.importer(container, None, u"001", u"First M", None,
                                  None, None)
        results = [[getattr(e, "identifier", None) for e in element]
                   for element in modified]
        self.assertEqual([[None]], results)

        modified = utils.importer(container, None, u"002", u"Second", None,
                                  None, None)
        results = [[getattr(e, "identifier", None) for e in element]
                   for element in modified]
        self.assertEqual([], results)
Esempio n. 4
0
    def test_importer_multi_levels_modified_result(self):
        """Ensure that the returned list is correct"""
        container = self.container
        children = [
            {
                "identifier": u"001.1",
                "title": u"first",
                "informations": None,
                "enabled": None,
                "_children": [],
            },
            {
                "identifier": u"001.2",
                "title": u"second modified",
                "informations": None,
                "enabled": None,
                "_children": [],
            },
        ]
        modified = utils.importer(container, None, u"001", u"First Modified",
                                  None, None, children)

        expected_results = [[None], ["001", None]]
        results = [[getattr(e, "identifier", None) for e in element]
                   for element in modified]
        self.assertEqual(expected_results, results)
Esempio n. 5
0
 def test_importer_one_level_result(self):
     """Ensure that the returned list is correct"""
     container = api.content.create(title="Container2",
                                    type="ClassificationContainer",
                                    container=self.folder)
     _children = [
         {
             "identifier": u"key1.1",
             "title": u"Key 1.1",
             "informations": None,
             "enabled": None,
             "_children": [],
         },
         {
             "identifier": u"key1.2",
             "title": u"Key 1.2",
             "informations": None,
             "enabled": None,
             "_children": [],
         },
     ]
     modified = utils.importer(container, None, u"key1", u"Key 1", None,
                               None, _children)
     expected_results = [
         [None],
         ["key1", None],
         ["key1", None],
     ]
     results = [[getattr(e, "identifier", None) for e in element]
                for element in modified]
     self.assertEqual(expected_results, results)
Esempio n. 6
0
    def test_importer_one_level_modified(self):
        """Ensure that the content is correctly modified"""
        container = self.container
        utils.importer(container, None, u"001", u"First Modified", None, None,
                       None)
        utils.importer(container, None, u"002", u"Second", None, None, None)

        self.assertEqual(2, len(container))
        self.assertEqual(["001", "002"],
                         sorted([e.identifier for e in container.values()]))

        subelement = container.get_by("identifier", "001")
        self.assertEqual(u"First Modified", subelement.title)
        self.assertEqual(2, len(subelement))
        self.assertEqual(["001.1", "001.2"],
                         sorted([e.identifier for e in subelement.values()]))
Esempio n. 7
0
    def test_importer_multi_levels_created_modified(self):
        """Ensure that the content is correctly created / modified"""
        container = self.container
        children = [
            {
                "identifier": u"001.1",
                "title": u"first",
                "informations": None,
                "enabled": None,
                "_children": [],
            },
            {
                "identifier": u"001.2",
                "title": u"second modified",
                "informations": u'new infos',
                "enabled": False,
                "_children": [],
            },
            {
                "identifier": u"001.3",
                "title": u"new one",
                "informations": u'infos',
                "enabled": False,
                "_children": [],
            },
        ]
        utils.importer(container, None, u"001", u"First Modified", None, None,
                       children)

        self.assertEqual(2, len(container))
        self.assertEqual(["001", "002"],
                         sorted([e.identifier for e in container.values()]))

        subelement = container.get_by("identifier", "001")
        self.assertEqual(u"First Modified", subelement.title)
        self.assertEqual(3, len(subelement))
        values = sorted(subelement.values(), key=attrgetter('identifier'))
        self.assertEqual(["001.1", "001.2", "001.3"],
                         [e.identifier for e in values])
        self.assertEqual([u"first", u"second modified", u"new one"],
                         [e.title for e in values])
        self.assertEqual([None, u"new infos", u"infos"],
                         [e.informations for e in values])
        self.assertEqual([True, False, False], [e.enabled for e in values])
Esempio n. 8
0
 def _import_node(self, node):
     args = (None, node.pop("identifier"), node.pop("title"))
     modified = utils.importer(self.context, *args, **node)
     utils.trigger_event(modified, ContainerModifiedEvent)