Esempio n. 1
0
    def test_ignores_documents_with_different_titles(self, dc_mock, conn, fda_file):
        file_attrs = {
            'id': fda_file,
            'documentcloud_id': '100-bar',
        }
        conn['database']['files'].update(file_attrs, ['id'])
        remote_document_ids = ['100-foo']
        conf = {
            'DOCUMENTCLOUD_USERNAME': '******',
            'DOCUMENTCLOUD_PASSWORD': '******',
            'DOCUMENTCLOUD_PROJECT': 'project name',
        }
        _enable_documentcloud_mock(dc_mock, remote_document_ids)

        processor.process(conf, conn)

        assert not dc_mock().documents.get().delete.called
Esempio n. 2
0
    def test_ignores_documents_with_different_titles(self, dc_mock):
        conf = {
            'DOCUMENTCLOUD_USERNAME': '******',
            'DOCUMENTCLOUD_PASSWORD': '******',
            'DOCUMENTCLOUD_PROJECT': 'project name',
        }
        conn = {
            'database': mock.Mock()
        }
        document_ids = ['100-foo']
        conn['database'].query.return_value = [
            {'documentcloud_id': '100-bar'},
        ]
        _enable_documentcloud_mock(dc_mock, document_ids)

        processor.process(conf, conn)

        assert not dc_mock().documents.get().delete.called
Esempio n. 3
0
    def test_deletes_all_documents_not_in_the_database(self, dc_mock, conn, fda_file):
        file_attrs = {
            'id': fda_file,
            'documentcloud_id': '200-bar',
        }
        conn['database']['files'].update(file_attrs, ['id'])
        remote_document_ids = ['100-foo', '200-bar', '300-baz']
        conf = {
            'DOCUMENTCLOUD_USERNAME': '******',
            'DOCUMENTCLOUD_PASSWORD': '******',
            'DOCUMENTCLOUD_PROJECT': 'project name',
        }
        _enable_documentcloud_mock(dc_mock, remote_document_ids)

        processor.process(conf, conn)

        dc_mock().documents.delete.assert_has_calls([
            mock.call('300'),
            mock.call('100'),
        ], any_order=True)
Esempio n. 4
0
    def test_deletes_all_documents_not_in_the_database(self, dc_mock):
        conf = {
            'DOCUMENTCLOUD_USERNAME': '******',
            'DOCUMENTCLOUD_PASSWORD': '******',
            'DOCUMENTCLOUD_PROJECT': 'project name',
        }
        conn = {
            'database': mock.Mock()
        }
        document_ids = ['100-foo', '200-bar', '300-baz']
        conn['database'].query.return_value = [
            {'documentcloud_id': '200-bar'},
        ]
        _enable_documentcloud_mock(dc_mock, document_ids)

        processor.process(conf, conn)

        dc_mock().documents.delete.assert_has_calls([
            mock.call('300'),
            mock.call('100'),
        ])