def test_add_helping_materials_json_from_filextension(
            self, auto_mock, find_mock):
        """Test add_helpingmaterials json without specifying file extension works."""
        auto_mock.return_value = (0, None)
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.name = 'helpingmaterials.json'
        helpingmaterials.read.return_value = json.dumps([{
            'info': {
                'key': 'value'
            }
        }])

        pbclient = MagicMock()
        pbclient.create_helping_material.return_value = {
            'id': 1,
            'info': {
                'key': 'value'
            }
        }
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, None)
        assert res == '1 helping materials added to project: short_name', res
    def test_add_helping_materials_csv_with_info(self, auto_mock, find_mock):
        """Test add_helpingmaterials csv with info field works."""
        auto_mock.return_value = (0, None)
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.read.return_value = "info, value\n, %s, 2" % json.dumps(
            {'key': 'value'})

        pbclient = MagicMock()
        pbclient.create_helping_material.return_value = {
            'id': 1,
            'info': {
                'key': 'value'
            }
        }
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, 'csv')
        assert res == '1 helping materials added to project: short_name', res
    def test_update_project_another_error(self, find_mock):
        """Test update_project another error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        task_presenter = "test/template.html"

        results = "test/results.html"

        tutorial = "test/tutorial.html"

        long_description = "test/long_description.md"

        pbclient = MagicMock()
        pbclient.update_project.return_value = self.error
        self.config.pbclient = pbclient
        res = _update_project(self.config, task_presenter, results,
                              long_description, tutorial)
        msg = ("Project not found! The project: short_name is missing." \
               " Use the flag --all=1 to search in all the server ")
        assert res == msg, msg
    def test_add_helping_materials_unknow_type(self, auto_mock, find_mock):
        """Test add_helpingmaterials with unknown type works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.read.return_value = "key, value\n, 1, 2"

        pbclient = MagicMock()
        pbclient.create_helping_material.return_value = {
            'id': 1,
            'info': {
                'key': 'value'
            }
        }
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, 'doc')
        assert res == (
            "Unknown format for the tasks file. Use json, csv, po or "
            "properties."), res
    def test_add_helping_materials_excel_with_info(self, auto_mock, find_mock, workbook_mock):
        """Test add_helpingmaterials excel with info field works."""
        auto_mock.return_value = (0, None)
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()
        project.id = 1

        wb = Workbook()
        ws = wb.active

        headers = ['Column Name', 'foo']
        ws.append(headers)
        for row in range(2, 10):
            ws.append(['value', 'bar'])

        ws.append([None, None])
        ws.append([None, None])

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.read.return_value = wb

        workbook_mock.return_value = wb

        pbclient = MagicMock()
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, 'xlsx')
        self.config.pbclient.create_helpingmaterial.assert_called_with(project_id=find_mock().id,
                                                                       info={u'column_name': u'value',
                                                                             u'foo': u'bar'})
        assert res == '8 helping materials added to project: short_name', res
Exemple #6
0
    def test_add_tasks_po_with_info(self, find_mock, po_mock):
        """Test add_tasks po with info field works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()
        find_mock.return_value = project

        entry = MagicMock()
        entry.msgid = 'English'
        entry.msgtr = ''
        po = MagicMock()
        po.untranslated_entries.return_value = [entry]
        po_mock.return_value = po

        tasks = MagicMock()
        tasks.read.return_value = json.dumps([{
            'info': {
                'msgid': 'English',
                'msgtr': ''
            }
        }])

        pbclient = MagicMock()
        pbclient.create_task.return_value = {
            'id': 1,
            'info': {
                'msgid': 'English',
                'msgtr': ''
            }
        }
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'po', 0, 30)
        assert res == '1 tasks added to project: short_name', res
    def test_add_helping_materials_json_with_info(self, find_mock):
        """Test add_helpingmaterials json with info field works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.read.return_value = json.dumps([{
            'info': {
                'key': 'value'
            }
        }])

        pbclient = MagicMock()
        pbclient.create_helpingmaterial.return_value = {
            'id': 1,
            'info': {
                'key': 'value'
            }
        }
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, 'json')
        assert res == '1 helping materials added to project: short_name', res
Exemple #8
0
    def test_add_tasks_po_from_filextension(self, find_mock, po_mock):
        """Test add_tasks po without specifying file extension works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()
        find_mock.return_value = project

        entry = MagicMock()
        entry.msgid = 'English'
        entry.msgtr = ''
        po = MagicMock()
        po.untranslated_entries.return_value = [entry]
        po_mock.return_value = po

        tasks = MagicMock()
        tasks.name = 'tasks.po'
        tasks.read.return_value = json.dumps([{'info': {'msgid': 'English',
                                                        'msgtr':''}}])

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'msgid': 'English',
                                                               'msgtr': ''}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, None, 0, 30)
        assert res == '1 tasks added to project: short_name', res
Exemple #9
0
    def test_add_tasks_properties_from_filextension(self, auto_mock,
                                                    find_mock):
        """Test add_tasks properties without specifying file extension works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()
        find_mock.return_value = project

        tasks = MagicMock()
        tasks.name = 'tasks.properties'
        tasks.read.return_value = "foo_id= foo\n"

        pbclient = MagicMock()
        pbclient.create_task.return_value = {
            'id': 1,
            'info': {
                'var_id': 'foo_id',
                'string': ' foo'
            }
        }
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, None, 0, 30)
        assert res == '1 tasks added to project: short_name', res
Exemple #10
0
 def test_add_user_event(self, mock_update_feed):
     """Test add_user_event is called."""
     conn = MagicMock()
     target = MagicMock()
     target.id = 1
     target.project_id = 1
     tmp = MagicMock()
     tmp.name = 'name'
     tmp.short_name = 'short_name'
     tmp.info = dict()
     conn.execute.return_value = [tmp]
     add_user_event(None, conn, target)
     assert mock_update_feed.called
 def test_add_user_event(self, mock_update_feed):
     """Test add_user_event is called."""
     conn = MagicMock()
     target = MagicMock()
     target.id = 1
     target.project_id = 1
     tmp = MagicMock()
     tmp.name = "name"
     tmp.short_name = "short_name"
     tmp.info = dict()
     conn.execute.return_value = [tmp]
     add_user_event(None, conn, target)
     assert mock_update_feed.called
Exemple #12
0
    def test_delete_another_error_one_tasks(self, find_mock):
        """Test delete tasks another error works for one task."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.delete_task.return_value = self.error_task
        self.config.pbclient = pbclient
        assert_raises(TaskNotFound, _delete_tasks, self.config, 1)
Exemple #13
0
    def test_delete_another_error_one_tasks(self, find_mock):
        """Test delete tasks another error works for one task."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.delete_task.return_value = self.error_task
        self.config.pbclient = pbclient
        assert_raises(TaskNotFound, _delete_tasks, self.config, 1)
 def test_add_blog_event(self, mock_queue, mock_update_feed):
     """Test add_blog_event is called."""
     conn = MagicMock()
     target = MagicMock()
     target.id = 1
     target.project_id = 1
     tmp = MagicMock()
     tmp.name = "name"
     tmp.short_name = "short_name"
     tmp.info = dict()
     conn.execute.return_value = [tmp]
     add_blog_event(None, conn, target)
     mock_queue.enqueue.assert_called_with(notify_blog_users, blog_id=target.id, project_id=target.project_id)
     assert mock_update_feed.called
Exemple #15
0
    def test_delete_connection_error(self, find_mock):
        """Test delete tasks connection error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.delete_task.side_effect = exceptions.ConnectionError
        self.config.pbclient = pbclient
        res = _delete_tasks(self.config, 1)
        assert res == "Connection Error! The server http://server is not responding", res
    def test_update_task_redundancy_individually(self, find_mock):
        """Test update task redundancy individually works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        self.config.pbclient = pbclient
        res = _update_tasks_redundancy(self.config, 1, 5)
        msg = "Task.id = 1 redundancy has been updated to 5"
        assert res == msg, res
Exemple #17
0
    def test_delete_connection_error(self, find_mock):
        """Test delete tasks connection error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.delete_task.side_effect = exceptions.ConnectionError
        self.config.pbclient = pbclient
        res = _delete_tasks(self.config, 1)
        assert res == "Connection Error! The server http://server is not responding", res
    def test_update_task_redundancy_fails(self, find_mock):
        """Test update task redundancy fails works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.find_tasks.return_value = self.error_task
        self.config.pbclient = pbclient
        assert_raises(TaskNotFound, _update_tasks_redundancy, self.config,
                      9999, 5)
Exemple #19
0
    def test_delete_task(self, find_mock):
        """Test delete task works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.delete_task.return_value = []
        self.config.pbclient = pbclient
        res = _delete_tasks(self.config, 1)
        assert res == "Task.id = 1 and its associated task_runs have been deleted", res
Exemple #20
0
    def test_delete_task(self, find_mock):
        """Test delete task works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.delete_task.return_value = []
        self.config.pbclient = pbclient
        res = _delete_tasks(self.config, 1)
        assert res == "Task.id = 1 and its associated task_runs have been deleted", res
    def test_update_task_redundancy_all_tasks(self, find_mock):
        """Test update task redundancy all tasks works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.get_tasks = self.fake_return_tasks
        self.config.pbclient = pbclient
        res = _update_tasks_redundancy(self.config, None, 5)
        msg = "All tasks redundancy have been updated"
        assert res == msg, res
Exemple #22
0
 def test_add_blog_event(self, mock_queue, mock_update_feed):
     """Test add_blog_event is called."""
     conn = MagicMock()
     target = MagicMock()
     target.id = 1
     target.project_id = 1
     tmp = MagicMock()
     tmp.name = 'name'
     tmp.short_name = 'short_name'
     tmp.info = dict()
     conn.execute.return_value = [tmp]
     add_blog_event(None, conn, target)
     mock_queue.enqueue.assert_called_with(notify_blog_users,
                                           blog_id=target.id,
                                           project_id=target.project_id)
     assert mock_update_feed.called
    def test_add_helping_materials_excel_with_file(self, auto_mock, find_mock,
                                                   workbook_mock):
        """Test add_helpingmaterials excel with file_path field works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()
        project.id = 1

        wb = Workbook()
        ws = wb.active

        headers = ['Column Name', 'foo', 'file Path']
        ws.append(headers)
        for row in range(2, 10):
            ws.append(['value', 'bar', '/tmp/file.jpg'])

        ws.append([None, None, None])
        ws.append([None, None, None])

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.read.return_value = wb

        workbook_mock.return_value = wb

        pbclient = MagicMock()
        hm = MagicMock()
        hm.info = {'column_name': 'value', 'foo': 'bar'}
        hm.id = 1
        pbclient.create_helpingmaterial.return_value = hm
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, 'xlsx')
        self.config.pbclient.create_helpingmaterial.assert_called_with(
            project_id=find_mock().id,
            file_path='/tmp/file.jpg',
            info={
                u'column_name': u'value',
                u'foo': u'bar'
            })
        self.config.pbclient.update_helping_material.assert_called_with(hm)

        assert res == '8 helping materials added to project: short_name', res
    def test_update_task_redundancy_fails(self, auto_mock, find_mock):
        """Test update task redundancy fails works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.find_tasks.return_value = self.error_task
        self.config.pbclient = pbclient
        assert_raises(TaskNotFound, _update_tasks_redundancy, self.config,
                      9999, 5)
Exemple #25
0
    def test_delete_another_error_all_tasks(self, find_mock):
        """Test delete tasks another error works for all tasks."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.delete_task.return_value = self.error
        task = MagicMock()
        task.id = 1
        pbclient.get_tasks.return_value = [task]
        self.config.pbclient = pbclient
        assert_raises(ProjectNotFound, _delete_tasks, self.config, None)
Exemple #26
0
    def test_delete_another_error_all_tasks(self, find_mock):
        """Test delete tasks another error works for all tasks."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        pbclient.delete_task.return_value = self.error
        task = MagicMock()
        task.id = 1
        pbclient.get_tasks.return_value = [task]
        self.config.pbclient = pbclient
        assert_raises(ProjectNotFound, _delete_tasks, self.config, None)
    def test_update_task_redundancy_individually(self, auto_mock, find_mock):
        """Test update task redundancy individually works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        pbclient = MagicMock()
        self.config.pbclient = pbclient
        res = _update_tasks_redundancy(self.config, 1, 5)
        msg = "Task.id = 1 redundancy has been updated to 5"
        assert res == msg, res
Exemple #28
0
    def test_add_tasks_properties_with_info(self, find_mock):
        """Test add_tasks properties with info field works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()
        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = "foo_id= foo\n"

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'var_id': 'foo_id',
                                                               'string': ' foo'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'properties', 0, 30)
        assert res == '1 tasks added to project: short_name', res
Exemple #29
0
    def test_add_tasks_json_without_info(self, find_mock):
        """Test add_tasks json without info field works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = json.dumps([{'key': 'value'}])

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'json', 0, 30)
        assert res == '1 tasks added to project: short_name', res
Exemple #30
0
    def test_add_tasks_json_without_info(self, find_mock):
        """Test add_tasks json without info field works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = json.dumps([{'key': 'value'}])

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'json', 0, 30)
        assert res == '1 tasks added to project: short_name', res
Exemple #31
0
    def test_add_tasks_another_error(self, find_mock):
        """Test add_tasks another error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = json.dumps([{'key': 'value'}])

        pbclient = MagicMock()
        pbclient.create_task.return_value = self.error
        self.config.pbclient = pbclient
        assert_raises(ProjectNotFound, _add_tasks, self.config,
                      tasks, 'json', 0, 30)
    def test_add_helping_material_json_connection_error(self, find_mock):
        """Test add_helpingmaterials json connection error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = json.dumps([{'key': 'value'}])

        pbclient = MagicMock()
        pbclient.create_helpingmaterial.side_effect = exceptions.ConnectionError
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, tasks, 'json')
        assert res == "Connection Error! The server http://server is not responding", res
    def test_add_helpingmaterial_another_error(self, find_mock):
        """Test add_tasks another error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = json.dumps([{'key': 'value'}])

        pbclient = MagicMock()
        pbclient.create_helpingmaterial.return_value = self.error
        self.config.pbclient = pbclient
        assert_raises(ProjectNotFound, _add_helpingmaterials, self.config,
                      tasks, 'json')
Exemple #34
0
    def test_add_tasks_json_connection_error(self, find_mock):
        """Test add_tasks json connection error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = json.dumps([{'key': 'value'}])

        pbclient = MagicMock()
        pbclient.create_task.side_effect = exceptions.ConnectionError
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'json', 0, 30)
        assert res == "Connection Error! The server http://server is not responding", res
Exemple #35
0
    def test_add_tasks_properties_with_info(self, find_mock):
        """Test add_tasks properties with info field works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()
        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = "foo_id= foo\n"

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'var_id': 'foo_id',
                                                               'string': ' foo'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'properties', 0, 30)
        assert res == '1 tasks added to project: short_name', res
    def test_add_helping_materials_csv_connection_error(self, find_mock):
        """Test add_helpingmaterials csv connection error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.read.return_value = "key, value\n, 1, 2"

        pbclient = MagicMock()
        pbclient.create_helpingmaterial.side_effect = exceptions.ConnectionError
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, 'csv')
        assert res == "Connection Error! The server http://server is not responding", res
Exemple #37
0
    def test_add_tasks_json_from_filextension(self, find_mock):
        """Test add_tasks json without specifying file extension works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.name = 'tasks.json'
        tasks.read.return_value = json.dumps([{'info': {'key': 'value'}}])

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, None, 0, 30)
        assert res == '1 tasks added to project: short_name', res
    def test_add_onesignal_event(self, mock_onesignal):
        """Test add_onesignal_app is called."""
        from pybossa.jobs import create_onesignal_app
        conn = MagicMock()
        target = MagicMock()
        tmp = Project(id=1, name='name', short_name='short_name',
                      info=dict(container=1, thumbnail="avatar.png"))
        target.id = tmp.id
        target.project_id = tmp.id
        target.name = tmp.name
        target.short_name = tmp.short_name
        target.info = tmp.info

        conn.execute.return_value = [tmp]
        add_onesignal_app(None, conn, target)
        assert mock_onesignal.called
        obj = tmp.to_public_json()
        obj['action_updated'] = 'Project'
        mock_onesignal.assert_called_with(create_onesignal_app, target.id)
Exemple #39
0
    def test_delete_all_tasks(self, find_mock):
        """Test delete all tasks works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        task = MagicMock()
        task.id = 1

        pbclient = MagicMock()
        pbclient.get_tasks.side_effect = [[task], []]
        self.config.pbclient = pbclient

        res = _delete_tasks(self.config, None, limit=1, offset=0)
        assert res == "All tasks and task_runs have been deleted", res
Exemple #40
0
    def test_delete_all_tasks(self, find_mock):
        """Test delete all tasks works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        task = MagicMock()
        task.id = 1

        pbclient = MagicMock()
        pbclient.get_tasks.side_effect = [[task], []]
        self.config.pbclient = pbclient

        res = _delete_tasks(self.config, None, limit=1, offset=0)
        assert res == "All tasks and task_runs have been deleted", res
Exemple #41
0
    def test_add_tasks_unknow_type(self, find_mock):
        """Test add_tasks with unknown type works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = "key, value\n, 1, 2"

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'doc', 0, 30)
        assert res == ("Unknown format for the tasks file. Use json, csv, po or "
                      "properties."), res
    def test_add_helping_materials_csv_with_info(self, auto_mock, find_mock):
        """Test add_helpingmaterials csv with info field works."""
        auto_mock.return_value = (0, None)
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.read.return_value = "info, value\n, %s, 2" % json.dumps({'key':'value'})

        pbclient = MagicMock()
        pbclient.create_helping_material.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, 'csv')
        assert res == '1 helping materials added to project: short_name', res
Exemple #43
0
    def test_add_tasks_csv_from_filextension(self, find_mock):
        """Test add_tasks csv without specifying file extension works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.name = 'tasks.csv'
        tasks.read.return_value = "info, value\n, %s, 2" % json.dumps({'key':'value'})

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, None, 0, 30)
        assert res == '1 tasks added to project: short_name', res
    def test_update_task_redundancy_all_tasks(self, auto_mock, find_mock):
        """Test update task redundancy all tasks works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project


        pbclient = MagicMock()
        pbclient.get_tasks = self.fake_return_tasks
        self.config.pbclient = pbclient
        res = _update_tasks_redundancy(self.config, None, 5)
        msg = "All tasks redundancy have been updated"
        assert res == msg, res
Exemple #45
0
    def test_add_tasks_unknow_type(self, find_mock):
        """Test add_tasks with unknown type works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = "key, value\n, 1, 2"

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'doc', 0, 30)
        assert res == ("Unknown format for the tasks file. Use json, csv, po or "
                      "properties."), res
Exemple #46
0
    def test_add_tasks_excel_with_info(self, auto_mock, find_mock,
                                       workbook_mock):
        """Test add_tasks excel with info field works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()
        project.id = 1

        wb = Workbook()
        ws = wb.active

        headers = ['Column Name', 'foo']
        ws.append(headers)
        for row in range(2, 10):
            ws.append(['value', 'bar'])

        ws.append([None, None])
        ws.append([None, None])

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = wb

        workbook_mock.return_value = wb

        pbclient = MagicMock()
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'xlsx', 0, 30)
        self.config.pbclient.create_task.assert_called_with(
            project_id=find_mock().id,
            info={
                u'column_name': u'value',
                u'foo': u'bar'
            },
            n_answers=30,
            priority_0=0)
        assert res == '8 tasks added to project: short_name', res
    def test_add_helping_materials_json_from_filextension(self, auto_mock, find_mock):
        """Test add_helpingmaterials json without specifying file extension works."""
        auto_mock.return_value = (0, None)
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.name = 'helpingmaterials.json'
        helpingmaterials.read.return_value = json.dumps([{'info': {'key': 'value'}}])

        pbclient = MagicMock()
        pbclient.create_helping_material.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, None)
        assert res == '1 helping materials added to project: short_name', res
Exemple #48
0
    def test_add_tasks_csv_connection_error(self, auto_mock, find_mock):
        """Test add_tasks csv connection error works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = "key, value\n, 1, 2"

        pbclient = MagicMock()
        pbclient.create_task.side_effect = exceptions.ConnectionError
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'csv', 0, 30)
        assert res == "Connection Error! The server http://server is not responding", res
Exemple #49
0
    def test_add_tasks_csv_without_info(self, auto_mock, find_mock):
        """Test add_tasks csv without info field works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = "key, value\n, 1, 2"

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'csv', 0, 30)
        assert res == '1 tasks added to project: short_name', res
Exemple #50
0
    def test_add_tasks_csv_without_info(self, auto_mock, find_mock):
        """Test add_tasks csv without info field works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        tasks = MagicMock()
        tasks.read.return_value = "key, value\n, 1, 2"

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, 'csv', 0, 30)
        assert res == '1 tasks added to project: short_name', res
    def test_add_helping_materials_csv_connection_error(self, auto_mock, find_mock):
        """Test add_helpingmaterials csv connection error works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.read.return_value = "key, value\n, 1, 2"

        pbclient = MagicMock()
        pbclient.create_helpingmaterial.side_effect = exceptions.ConnectionError
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, 'csv')
        assert res == "Connection Error! The server http://server is not responding", res
Exemple #52
0
    def test_add_project_event(self, mock_update_feed):
        """Test add_project_event is called."""
        conn = MagicMock()
        target = MagicMock()
        tmp = Project(id=1, name='name', short_name='short_name',
                      info=dict(container=1, thumbnail="avatar.png"))
        target.id = tmp.id
        target.project_id = tmp.id
        target.name = tmp.name
        target.short_name = tmp.short_name
        target.info = tmp.info

        conn.execute.return_value = [tmp]
        add_project_event(None, conn, target)
        assert mock_update_feed.called
        obj = tmp.to_public_json()
        obj['action_updated'] = 'Project'
        mock_update_feed.assert_called_with(obj)

        mock_update_feed.assert_called_with(obj)
Exemple #53
0
    def test_add_tasks_properties_from_filextension(self, auto_mock, find_mock):
        """Test add_tasks properties without specifying file extension works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()
        find_mock.return_value = project

        tasks = MagicMock()
        tasks.name = 'tasks.properties'
        tasks.read.return_value = "foo_id= foo\n"

        pbclient = MagicMock()
        pbclient.create_task.return_value = {'id': 1, 'info': {'var_id': 'foo_id',
                                                               'string': ' foo'}}
        self.config.pbclient = pbclient
        res = _add_tasks(self.config, tasks, None, 0, 30)
        assert res == '1 tasks added to project: short_name', res
    def test_add_helping_materials_unknow_type(self, auto_mock, find_mock):
        """Test add_helpingmaterials with unknown type works."""
        auto_mock.return_value = (0, None)

        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        helpingmaterials = MagicMock()
        helpingmaterials.read.return_value = "key, value\n, 1, 2"

        pbclient = MagicMock()
        pbclient.create_helping_material.return_value = {'id': 1, 'info': {'key': 'value'}}
        self.config.pbclient = pbclient
        res = _add_helpingmaterials(self.config, helpingmaterials, 'doc')
        assert res == ("Unknown format for the tasks file. Use json, csv, po or "
                      "properties."), res
    def test_update_project_another_error(self, find_mock):
        """Test update_project another error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        task_presenter = "test/template.html"

        results = "test/results.html"

        tutorial = "test/tutorial.html"

        long_description = "test/long_description.md"

        pbclient = MagicMock()
        pbclient.update_project.return_value = self.error
        self.config.pbclient = pbclient
        assert_raises(ProjectNotFound, _update_project, self.config,
                      task_presenter, results, long_description, tutorial)
    def test_update_project_create(self, find_mock):
        """Test update_project works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        task_presenter = "test/template.html"

        results = "test/results.html"

        tutorial = "test/tutorial.html"

        long_description = "test/long_description.md"

        pbclient = MagicMock()
        pbclient.update_project.return_value = {'short_name': 'short_name'}
        self.config.pbclient = pbclient
        res = _update_project(self.config, task_presenter, results,
                              long_description, tutorial)
        assert res == 'Project short_name updated!', res
    def test_update_project_connection_error(self, find_mock):
        """Test update_project connection error works."""
        project = MagicMock()
        project.name = 'name'
        project.short_name = 'short_name'
        project.description = 'description'
        project.info = dict()

        find_mock.return_value = project

        task_presenter = "test/template.html"

        results = "test/results.html"

        tutorial = "test/tutorial.html"

        long_description = "test/long_description.md"

        pbclient = MagicMock()
        pbclient.update_project.side_effect = exceptions.ConnectionError
        self.config.pbclient = pbclient
        res = _update_project(self.config, task_presenter, results,
                              long_description, tutorial)
        assert res == "Connection Error! The server http://server is not responding", res
Exemple #58
0
def make_observation(short_name="creatinine"):
    observation = MagicMock()
    observation.short_name = short_name
    observation.value_type = OBSERVATION_VALUE_TYPE.REAL
    return observation