Exemplo n.º 1
0
    def test_get_raw_dumps_as_files(self):
        config = self.get_standard_config()
        sub_walker = SubmitterFileSystemWalkerSource(config)

        dump_pathnames = (
            '6611a662-e70f-4ba5-a397-69a3a2121129',
            (
                'raw_crash_file',
                '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.dump',
                '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.flash1.dump',
                '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.flash2.dump',
            ),
        )
        raw_dumps_files = sub_walker.get_raw_dumps_as_files(dump_pathnames)

        dump_names = {'upload_file_minidump':
             '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.dump',
             'flash1':
             '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.flash1.dump',
             'flash2':
             '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.flash2.dump'
             }

        ok_(isinstance(raw_dumps_files, dict))
        eq_(raw_dumps_files, dump_names)
Exemplo n.º 2
0
    def test_get_raw_dumps_as_files(self):
        config = self.get_standard_config()
        sub_walker = SubmitterFileSystemWalkerSource(config)

        dump_pathnames = (
            '6611a662-e70f-4ba5-a397-69a3a2121129',
            (
                'raw_crash_file',
                '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.dump',
                '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.flash1.dump',
                '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.flash2.dump',
            ),
        )
        raw_dumps_files = sub_walker.get_raw_dumps_as_files(dump_pathnames)

        dump_names = {'upload_file_minidump':
             '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.dump',
             'flash1':
             '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.flash1.dump',
             'flash2':
             '/some/path/6611a662-e70f-4ba5-a397-69a3a2121129.flash2.dump'
             }

        ok_(isinstance(raw_dumps_files, dict))
        eq_(raw_dumps_files, dump_names)
Exemplo n.º 3
0
    def test_new_crashes(self):
        config = self.get_standard_config()
        sub_walker = SubmitterFileSystemWalkerSource(config)

        sequence = [
            './6611a662-e70f-4ba5-a397-69a3a2121129.json',
            './7611a662-e70f-4ba5-a397-69a3a2121129.json',
            './8611a662-e70f-4ba5-a397-69a3a2121129.json',
        ]
        crash_path = generator_for_sequence(*sequence)
        sub_walker.new_crashes = crash_path
        for a_row in sub_walker.new_crashes():
            eq_(a_row, sequence.pop())
Exemplo n.º 4
0
    def test_new_crashes(self):
        config = self.get_standard_config()
        sub_walker = SubmitterFileSystemWalkerSource(config)

        sequence =  [
            './6611a662-e70f-4ba5-a397-69a3a2121129.json',
            './7611a662-e70f-4ba5-a397-69a3a2121129.json',
            './8611a662-e70f-4ba5-a397-69a3a2121129.json',
        ]
        crash_path =  generator_for_sequence(*sequence)
        sub_walker.new_crashes = crash_path
        for a_row in sub_walker.new_crashes():
            eq_(a_row, sequence.pop())
Exemplo n.º 5
0
    def test_new_crashes(self):
        config = self.get_standard_config()
        sub_walker = SubmitterFileSystemWalkerSource(config)

        crash_path = sequencer('./6611a662-e70f-4ba5-a397-69a3a2121129.json',
                               './7611a662-e70f-4ba5-a397-69a3a2121129.json',
                               './8611a662-e70f-4ba5-a397-69a3a2121129.json',
                               )
        sub_walker.new_crashes = mock.Mock(side_effect=crash_path)
        new_crashes = sub_walker.new_crashes()

        ok_(isinstance(new_crashes.next(), str))
        eq_(new_crashes.next(),
            './7611a662-e70f-4ba5-a397-69a3a2121129.json')
        ok_(new_crashes.next().endswith(".json"))
Exemplo n.º 6
0
    def test_new_crashes(self):
        config = self.get_standard_config()
        sub_walker = SubmitterFileSystemWalkerSource(config)

        crash_path = sequencer(
            './6611a662-e70f-4ba5-a397-69a3a2121129.json',
            './7611a662-e70f-4ba5-a397-69a3a2121129.json',
            './8611a662-e70f-4ba5-a397-69a3a2121129.json',
        )
        sub_walker.new_crashes = mock.Mock(side_effect=crash_path)
        new_crashes = sub_walker.new_crashes()

        ok_(isinstance(new_crashes.next(), str))
        eq_(new_crashes.next(), './7611a662-e70f-4ba5-a397-69a3a2121129.json')
        ok_(new_crashes.next().endswith(".json"))
Exemplo n.º 7
0
    def test_get_raw_crash(self):
        config = self.get_standard_config()
        sub_walker = SubmitterFileSystemWalkerSource(config)

        raw = ('{"name":"Gabi", ''"submitted_timestamp":"%d"}' % time.time())
        fake_raw_crash = DotDict(json.loads(raw))
        mocked_get_raw_crash = mock.Mock(return_value=fake_raw_crash)
        sub_walker.get_raw_crash = mocked_get_raw_crash

        path_tuple = ['6611a662-e70f-4ba5-a397-69a3a2121129.dump',
                      '6611a662-e70f-4ba5-a397-69a3a2121129.flash1.dump',
                      '6611a662-e70f-4ba5-a397-69a3a2121129.flash2.dump',
                      ]

        raw_crash = sub_walker.get_raw_crash(path_tuple)
        ok_(isinstance(raw_crash, DotDict))
        eq_(raw_crash['name'], 'Gabi')
Exemplo n.º 8
0
    def test_get_raw_crash(self):
        config = self.get_standard_config()
        sub_walker = SubmitterFileSystemWalkerSource(config)

        raw = ('{"name":"Gabi", ''"submitted_timestamp":"%d"}' % time.time())
        fake_raw_crash = DotDict(json.loads(raw))
        mocked_get_raw_crash = mock.Mock(return_value=fake_raw_crash)
        sub_walker.get_raw_crash = mocked_get_raw_crash

        path_tuple = ['6611a662-e70f-4ba5-a397-69a3a2121129.dump',
                      '6611a662-e70f-4ba5-a397-69a3a2121129.flash1.dump',
                      '6611a662-e70f-4ba5-a397-69a3a2121129.flash2.dump',
                      ]

        raw_crash = sub_walker.get_raw_crash(path_tuple)
        ok_(isinstance(raw_crash, DotDict))
        eq_(raw_crash['name'], 'Gabi')
Exemplo n.º 9
0
 def test_setup(self):
     config = self.get_standard_config()
     sub_walker = SubmitterFileSystemWalkerSource(config)
     eq_(sub_walker.config, config)
     eq_(sub_walker.config.logger, config.logger)
Exemplo n.º 10
0
    def test_new_crashes(self):
        sequence =  [
            (
                './',
                '6611a662-e70f-4ba5-a397-69a3a2121129.json',
                './6611a662-e70f-4ba5-a397-69a3a2121129.json',
            ),
            (
                './',
                '6611a662-e70f-4ba5-a397-69a3a2121129.upload.dump',
                './6611a662-e70f-4ba5-a397-69a3a2121129.upload.dump',
            ),
            (
                './',
                '7611a662-e70f-4ba5-a397-69a3a2121129.json',
                './7611a662-e70f-4ba5-a397-69a3a2121129.json',
            ),
            (
                './',
                '7611a662-e70f-4ba5-a397-69a3a2121129.other.dump',
                './7611a662-e70f-4ba5-a397-69a3a2121129.other.dump',
            ),
            (
                './',
                '7611a662-e70f-4ba5-a397-69a3a2121129.other.txt',
                './7611a662-e70f-4ba5-a397-69a3a2121129.other.txt',
            ),
            (
                './',
                '8611a662-e70f-4ba5-a397-69a3a2121129.json',
                './8611a662-e70f-4ba5-a397-69a3a2121129.json',
            )
        ]

        def findFileGenerator_mock_method(root, method):
            for x in sequence:
                if method(x):
                    yield x

        def listdir_mock_method(a_path):
            for x in sequence:
                yield x[1]

        config = self.get_standard_config()

        expected = [
            (
                ((
                    '6611a662-e70f-4ba5-a397-69a3a2121129',
                    [
                        './6611a662-e70f-4ba5-a397-69a3a2121129.json',
                        './6611a662-e70f-4ba5-a397-69a3a2121129.upload.dump'
                    ],
                ), ),
                {}
            ),
            (
                ((
                    '7611a662-e70f-4ba5-a397-69a3a2121129',
                    [
                        './7611a662-e70f-4ba5-a397-69a3a2121129.json',
                        './7611a662-e70f-4ba5-a397-69a3a2121129.other.dump'
                    ],
                ), ),
                {}
            ),
            (
                ((
                    '8611a662-e70f-4ba5-a397-69a3a2121129',
                    [
                        './8611a662-e70f-4ba5-a397-69a3a2121129.json'
                    ]
                ), ),
                {}
            ),
        ]

        find_patch_path = 'socorro.collector.submitter_app.findFileGenerator'
        with mock.patch(
            find_patch_path,
            new_callable=lambda: findFileGenerator_mock_method
        ):
            listdir_patch_path = 'socorro.collector.submitter_app.listdir'
            with mock.patch(
                listdir_patch_path,
                new_callable=lambda: listdir_mock_method
            ):

                sub_walker = SubmitterFileSystemWalkerSource(config)
                result = [x for x in sub_walker.new_crashes()]
                eq_(result, expected)
Exemplo n.º 11
0
    def test_new_crashes(self):
        sequence =  [
            (
                './',
                '6611a662-e70f-4ba5-a397-69a3a2121129.json',
                './6611a662-e70f-4ba5-a397-69a3a2121129.json',
            ),
            (
                './',
                '6611a662-e70f-4ba5-a397-69a3a2121129.upload.dump',
                './6611a662-e70f-4ba5-a397-69a3a2121129.upload.dump',
            ),
            (
                './',
                '7611a662-e70f-4ba5-a397-69a3a2121129.json',
                './7611a662-e70f-4ba5-a397-69a3a2121129.json',
            ),
            (
                './',
                '7611a662-e70f-4ba5-a397-69a3a2121129.other.dump',
                './7611a662-e70f-4ba5-a397-69a3a2121129.other.dump',
            ),
            (
                './',
                '7611a662-e70f-4ba5-a397-69a3a2121129.other.txt',
                './7611a662-e70f-4ba5-a397-69a3a2121129.other.txt',
            ),
            (
                './',
                '8611a662-e70f-4ba5-a397-69a3a2121129.json',
                './8611a662-e70f-4ba5-a397-69a3a2121129.json',
            )
        ]

        def findFileGenerator_mock_method(root, method):
            for x in sequence:
                if method(x):
                    yield x

        def listdir_mock_method(a_path):
            for x in sequence:
                yield x[1]

        config = self.get_standard_config()

        expected = [
            (
                ((
                    '6611a662-e70f-4ba5-a397-69a3a2121129',
                    [
                        './6611a662-e70f-4ba5-a397-69a3a2121129.json',
                        './6611a662-e70f-4ba5-a397-69a3a2121129.upload.dump'
                    ],
                ), ),
                {}
            ),
            (
                ((
                    '7611a662-e70f-4ba5-a397-69a3a2121129',
                    [
                        './7611a662-e70f-4ba5-a397-69a3a2121129.json',
                        './7611a662-e70f-4ba5-a397-69a3a2121129.other.dump'
                    ],
                ), ),
                {}
            ),
            (
                ((
                    '8611a662-e70f-4ba5-a397-69a3a2121129',
                    [
                        './8611a662-e70f-4ba5-a397-69a3a2121129.json'
                    ]
                ), ),
                {}
            ),
        ]

        find_patch_path = 'socorro.collector.submitter_app.findFileGenerator'
        with mock.patch(
            find_patch_path,
            new_callable=lambda: findFileGenerator_mock_method
        ):
            listdir_patch_path = 'socorro.collector.submitter_app.listdir'
            with mock.patch(
                listdir_patch_path,
                new_callable=lambda: listdir_mock_method
            ):

                sub_walker = SubmitterFileSystemWalkerSource(config)
                result = [x for x in sub_walker.new_crashes()]
                eq_(result, expected)