Example #1
0
    def test_addsave(self):
        self.factory.user = LucteriosUser.objects.get(username='******')

        self.assertFalse(exists(get_user_path('documents', 'document_1')))
        file_path = join(dirname(__file__), 'static', 'lucterios.documents',
                         'images', 'documentFind.png')

        docs = Document.objects.all()
        self.assertEqual(len(docs), 0)

        self.factory.xfer = DocumentAddModify()
        with open(file_path, 'rb') as file_to_load:
            self.call(
                '/lucterios.documents/documentAddModify', {
                    "current_folder": "2",
                    'SAVE': 'YES',
                    'description': 'new doc',
                    'filename_FILENAME': 'doc.png',
                    'filename': file_to_load
                }, False)
        self.assert_observer('core.acknowledge', 'lucterios.documents',
                             'documentAddModify')
        self.assert_count_equal('CONTEXT/PARAM', 3)

        docs = Document.objects.all()
        self.assertEqual(len(docs), 1)
        self.assertEqual(docs[0].folder.id, 2)
        self.assertEqual(docs[0].name, 'doc.png')
        self.assertEqual(docs[0].description, "new doc")
        self.assertEqual(docs[0].creator.username, "empty")
        self.assertEqual(docs[0].modifier.username, "empty")
        self.assertEqual(docs[0].date_creation, docs[0].date_modification)
        self.assertTrue(exists(get_user_path('documents', 'document_1')))
Example #2
0
    def test_cannot_view(self):
        self.create_doc()

        self.factory.xfer = DocumentShow()
        self.call('/lucterios.documents/documentShow', {"document": "3"},
                  False)
        self.assert_observer('core.exception', 'lucterios.documents',
                             'documentShow')
        self.assert_xml_equal('EXCEPTION/MESSAGE',
                              "Visualisation non autorisée !")

        self.factory.xfer = DocumentAddModify()
        self.call('/lucterios.documents/documentAddModify', {"document": "3"},
                  False)
        self.assert_observer('core.exception', 'lucterios.documents',
                             'documentAddModify')
        self.assert_xml_equal('EXCEPTION/MESSAGE',
                              "Visualisation non autorisée !")

        self.factory.xfer = DocumentDel()
        self.call('/lucterios.documents/documentDel', {"document": "3"}, False)
        self.assert_observer('core.exception', 'lucterios.documents',
                             'documentDel')
        self.assert_xml_equal('EXCEPTION/MESSAGE',
                              "Visualisation non autorisée !")
Example #3
0
    def test_readonly(self):
        current_date = create_doc(self.factory.user)

        self.factory.xfer = DocumentShow()
        self.calljson('/lucterios.documents/documentShow', {"document": "6"}, False)
        self.assert_observer('core.custom', 'lucterios.documents', 'documentShow')
        self.assertEqual(self.json_meta['title'], "Afficher le document")
        self.assert_count_equal('', 9)
        self.assert_comp_equal(('LABELFORM', 'name'), "doc2.png", (1, 0, 2, 1))
        self.assert_comp_equal(('LABELFORM', 'parent'), ">truc1", (1, 1, 2, 1))
        self.assert_comp_equal(('LABELFORM', 'description'), "doc 2", (1, 2, 2, 1))
        self.assert_comp_equal(('LABELFORM', 'modifier'), None, (1, 3, 1, 1))
        self.assert_comp_equal(('LABELFORM', 'date_modification'), current_date.isoformat(), (2, 3, 1, 1), (0, 22))
        self.assert_comp_equal(('LABELFORM', 'creator'), "empty", (1, 4, 1, 1))
        self.assert_comp_equal(('LABELFORM', 'date_creation'), current_date.isoformat(), (2, 4, 1, 1), (0, 22))
        self.assertEqual(len(self.json_actions), 2)

        self.factory.xfer = DocumentAddModify()
        self.calljson('/lucterios.documents/documentAddModify', {"document": "6"}, False)
        self.assert_observer('core.exception', 'lucterios.documents', 'documentAddModify')
        self.assert_json_equal('', 'message', "Écriture non autorisée !")

        self.factory.xfer = ContainerDel()
        self.calljson('/lucterios.documents/containerDel', {"container": "6"}, False)
        self.assert_observer('core.exception', 'lucterios.documents', 'containerDel')
        self.assert_json_equal('', 'message', "Écriture non autorisée !")
Example #4
0
    def test_saveagain(self):
        current_date = create_doc(self.factory.user)

        self.factory.xfer = DocumentShow()
        self.calljson('/lucterios.documents/documentShow', {"document": "5"}, False)
        self.assert_observer('core.custom', 'lucterios.documents', 'documentShow')
        self.assertEqual(self.json_meta['title'], "Afficher le document")
        self.assert_count_equal('', 9)
        self.assert_comp_equal(('LABELFORM', 'name'), "doc1.png", (1, 0, 2, 1))
        self.assert_comp_equal(('LABELFORM', 'parent'), ">truc2", (1, 1, 2, 1))
        self.assert_comp_equal(('LABELFORM', 'description'), "doc 1", (1, 2, 2, 1))
        self.assert_comp_equal(('LABELFORM', 'modifier'), None, (1, 3, 1, 1))
        self.assert_comp_equal(('LABELFORM', 'date_modification'), current_date.isoformat(), (2, 3, 1, 1), (0, 22))
        self.assert_comp_equal(('LABELFORM', 'creator'), "empty", (1, 4, 1, 1))
        self.assert_comp_equal(('LABELFORM', 'date_creation'), current_date.isoformat(), (2, 4, 1, 1), (0, 22))
        self.assertEqual(len(self.json_actions), 3)

        self.factory.xfer = DocumentAddModify()
        self.calljson('/lucterios.documents/documentAddModify', {'SAVE': 'YES', "document": "5", 'description': 'old doc', 'parent': 3}, False)
        self.assert_observer('core.acknowledge', 'lucterios.documents', 'documentAddModify')
        docs = DocumentContainer.objects.all().order_by('id')
        self.assertEqual(len(docs), 3)
        self.assertEqual(docs[0].id, 5)
        self.assertEqual(docs[0].parent.id, 3)
        self.assertEqual(docs[0].name, 'doc1.png')
        self.assertEqual(docs[0].description, "old doc")
        self.assertEqual(docs[0].creator.username, "empty")
        self.assertEqual(docs[0].modifier.username, "empty")
        self.assertNotEqual(docs[0].date_creation, docs[0].date_modification)
Example #5
0
 def test_add(self):
     self.factory.xfer = DocumentAddModify()
     self.calljson('/lucterios.documents/documentAddModify', {"parent": "2"}, False)
     self.assert_observer('core.custom', 'lucterios.documents', 'documentAddModify')
     self.assertEqual(self.json_meta['title'], 'Ajouter un document')
     self.assert_count_equal('', 4)
     self.assert_comp_equal(('SELECT', 'parent'), "2", (1, 0, 1, 1))
     self.assert_comp_equal(('UPLOAD', 'filename'), '', (1, 1, 1, 1))
     self.assert_comp_equal(('MEMO', 'description'), '', (1, 2, 1, 1))
Example #6
0
 def test_add(self):
     self.factory.xfer = DocumentAddModify()
     self.call('/lucterios.documents/documentAddModify',
               {"current_folder": "2"}, False)
     self.assert_observer('core.custom', 'lucterios.documents',
                          'documentAddModify')
     self.assert_xml_equal('TITLE', 'Ajouter un document')
     self.assert_count_equal('COMPONENTS/*', 4)
     self.assert_comp_equal('COMPONENTS/LABELFORM[@name="folder"]',
                            ">truc2", (1, 0, 1, 1))
     self.assert_comp_equal('COMPONENTS/UPLOAD[@name="filename"]', None,
                            (1, 1, 1, 1))
     self.assert_comp_equal('COMPONENTS/MEMO[@name="description"]', None,
                            (1, 2, 1, 1))
Example #7
0
    def test_cannot_view(self):
        create_doc(self.factory.user)

        self.factory.xfer = DocumentShow()
        self.calljson('/lucterios.documents/documentShow', {"document": "7"}, False)
        self.assert_observer('core.exception', 'lucterios.documents', 'documentShow')
        self.assert_json_equal('', 'message', "Visualisation non autorisée !")

        self.factory.xfer = DocumentAddModify()
        self.calljson('/lucterios.documents/documentAddModify', {"document": "7"}, False)
        self.assert_observer('core.exception', 'lucterios.documents', 'documentAddModify')
        self.assert_json_equal('', 'message', "Visualisation non autorisée !")

        self.factory.xfer = ContainerDel()
        self.calljson('/lucterios.documents/containerDel', {"container": "7"}, False)
        self.assert_observer('core.exception', 'lucterios.documents', 'containerDel')
        self.assert_json_equal('', 'message', "Visualisation non autorisée !")
Example #8
0
    def test_saveagain(self):
        current_date = self.create_doc()

        self.factory.xfer = DocumentShow()
        self.call('/lucterios.documents/documentShow', {"document": "1"},
                  False)
        self.assert_observer('core.custom', 'lucterios.documents',
                             'documentShow')
        self.assert_xml_equal('TITLE', "Afficher le document")
        self.assert_count_equal('COMPONENTS/*', 9)
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="folder"]',
                               ">truc2", (1, 0, 2, 1))
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="name"]',
                               "doc1.png", (1, 1, 2, 1))
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="description"]',
                               "doc 1", (1, 2, 2, 1))
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="modifier"]', '---',
                               (1, 3, 1, 1))
        self.assert_comp_equal(
            'COMPONENTS/LABELFORM[@name="date_modification"]',
            formats.date_format(current_date, "DATETIME_FORMAT"), (2, 3, 1, 1))
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="creator"]',
                               "empty", (1, 4, 1, 1))
        self.assert_comp_equal(
            'COMPONENTS/LABELFORM[@name="date_creation"]',
            formats.date_format(current_date, "DATETIME_FORMAT"), (2, 4, 1, 1))
        self.assert_count_equal('ACTIONS/ACTION', 2)

        self.factory.xfer = DocumentAddModify()
        self.call('/lucterios.documents/documentAddModify', {
            'SAVE': 'YES',
            "document": "1",
            'description': 'old doc'
        }, False)
        docs = Document.objects.all().order_by('id')
        self.assertEqual(len(docs), 3)
        self.assertEqual(docs[0].folder.id, 2)
        self.assertEqual(docs[0].name, 'doc1.png')
        self.assertEqual(docs[0].description, "old doc")
        self.assertEqual(docs[0].creator.username, "empty")
        self.assertEqual(docs[0].modifier.username, "empty")
        self.assertNotEqual(docs[0].date_creation, docs[0].date_modification)
Example #9
0
    def test_readonly(self):
        current_date = self.create_doc()

        self.factory.xfer = DocumentShow()
        self.call('/lucterios.documents/documentShow', {"document": "2"},
                  False)
        self.assert_observer('core.custom', 'lucterios.documents',
                             'documentShow')
        self.assert_xml_equal('TITLE', "Afficher le document")
        self.assert_count_equal('COMPONENTS/*', 9)
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="folder"]',
                               ">truc1", (1, 0, 2, 1))
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="name"]',
                               "doc2.png", (1, 1, 2, 1))
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="description"]',
                               "doc 2", (1, 2, 2, 1))
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="modifier"]', '---',
                               (1, 3, 1, 1))
        self.assert_comp_equal(
            'COMPONENTS/LABELFORM[@name="date_modification"]',
            formats.date_format(current_date, "DATETIME_FORMAT"), (2, 3, 1, 1))
        self.assert_comp_equal('COMPONENTS/LABELFORM[@name="creator"]',
                               "empty", (1, 4, 1, 1))
        self.assert_comp_equal(
            'COMPONENTS/LABELFORM[@name="date_creation"]',
            formats.date_format(current_date, "DATETIME_FORMAT"), (2, 4, 1, 1))
        self.assert_count_equal('ACTIONS/ACTION', 1)

        self.factory.xfer = DocumentAddModify()
        self.call('/lucterios.documents/documentAddModify', {"document": "2"},
                  False)
        self.assert_observer('core.exception', 'lucterios.documents',
                             'documentAddModify')
        self.assert_xml_equal('EXCEPTION/MESSAGE', "Écriture non autorisée !")

        self.factory.xfer = DocumentDel()
        self.call('/lucterios.documents/documentDel', {"document": "2"}, False)
        self.assert_observer('core.exception', 'lucterios.documents',
                             'documentDel')
        self.assert_xml_equal('EXCEPTION/MESSAGE', "Écriture non autorisée !")