Beispiel #1
0
    async def test_upload_output_files_to_s3(self, fake_s3_keys, mocker,
                                             tmpdir):
        # Fake information
        fake_id = 'fake-entry-id'

        # Mocking
        mock_get_session = mocker.patch.object(aiobotocore, 'get_session')
        mock_session = mock_get_session.return_value = mock.Mock()
        mock_client = mock_session.create_client.return_value = mock.Mock()
        mock_client.put_object.return_value = mock_awaitable()

        # File to be updated
        fs1 = scandir(tmpdir, 1000)
        file = tmpdir.join('file.txt')
        file.write('file')
        fs2 = scandir(tmpdir, 1000)

        diff = await upload_output_files_to_s3(fs1, fs2, fake_id)

        assert len(diff) == 1
        mock_client.put_object.assert_called_once_with(
            Bucket=mock.ANY,
            Key='bucket/fake-entry-id/{}'.format(file.strpath),
            Body=b'file',
            ACL='public-read')
Beispiel #2
0
    def test_get_new_file_diff_stats(self, tmpdir):
        first = tmpdir.join('first.txt')
        first.write('first')

        fs1 = scandir(tmpdir, 1000)

        second = tmpdir.join('second.txt')
        second.write('second')

        fs2 = scandir(tmpdir, 1000)

        diff_stats = diff_file_stats(fs1, fs2)

        assert first.strpath not in diff_stats
        assert second.strpath in diff_stats
Beispiel #3
0
    def test_scandir_skip_large_files(self, tmpdir):
        file = tmpdir.join('file.jpg')
        file.write('large file')

        file_stats = scandir(tmpdir, 1)

        assert len(file_stats) == 0
Beispiel #4
0
    def test_scandir_skip_hidden_files(self, tmpdir):
        # Create a hidden file.
        file = tmpdir.join('.hidden_file')
        file.write('dark templar')

        file_stats = scandir(tmpdir, 1000)

        assert len(file_stats) == 0
Beispiel #5
0
    def test_get_both_new_and_modified_files_stat(self, tmpdir):
        first = tmpdir.join('first.txt')
        first.write('first')

        fs1 = scandir(tmpdir, 1000)

        new_time = first.stat().mtime + 5
        os.utime(first.strpath, (new_time, new_time))
        second = tmpdir.join('second.txt')
        second.write('second')

        fs2 = scandir(tmpdir, 1000)

        diff_stats = diff_file_stats(fs1, fs2)

        assert first.strpath in diff_stats
        assert second.strpath in diff_stats
Beispiel #6
0
    def test_scandir_returns_files_in_sub_folder(self, tmpdir):
        sub_folder = tmpdir.mkdir('sub')
        sub_file = sub_folder.join('sub-file.txt')
        sub_file.write('sub')

        file_stats = scandir(tmpdir, 1000)

        assert len(file_stats) == 1
Beispiel #7
0
    def test_scandir(self, tmpdir):
        # Create two files.
        first = tmpdir.join('first.txt')
        first.write('first')
        second = tmpdir.join('second.txt')
        second.write('second')
        new_time = first.stat().mtime + 5
        os.utime(second.strpath, (new_time, new_time))

        file_stats = scandir(tmpdir, 1000)

        assert len(file_stats) == 2
        assert file_stats[second.strpath] == file_stats[first.strpath] + 5