Ejemplo n.º 1
0
    def test_exceed_limit(self):
        """Test exceeding the limit."""

        with self.assertRaises(wcmatch._wcparse.PatternLimitException):
            rc._DirWalker(self.tempdir,
                          file_pattern='*.*|-*.file',
                          flags=self.default_flags,
                          limit=1)
Ejemplo n.º 2
0
    def test_non_recursive_inverse(self):
        """Test non-recursive inverse search."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern='*.*|-*.file',
                               flags=self.default_flags)

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 2)
        self.assertEqual(len(self.files), 2)
Ejemplo n.º 3
0
    def test_recursive(self):
        """Test non-recursive search."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern='*.txt',
                               flags=self.default_flags | wcmatch.RECURSIVE)

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(self.files[0].name), 'a.txt')
Ejemplo n.º 4
0
    def test_no_limit(self):
        """Test no limit search."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern='*.*|-*.file',
                               flags=self.default_flags,
                               limit=0)

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 2)
        self.assertEqual(len(self.files), 2)
Ejemplo n.º 5
0
    def test_non_recursive_inverse_backup(self):
        """Test non-recursive inverse search with backup."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern='*.*|-*.file',
                               flags=self.default_flags,
                               backup_location='rum-bak')

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
Ejemplo n.º 6
0
    def test_abort(self):
        """Test aborting."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern='*.txt',
                               flags=self.default_flags | wcmatch.RECURSIVE
                               | wcmatch.HIDDEN)

        records = 0
        for f in walker.imatch():
            records += 1
            walker.kill()

        self.assertEqual(records, 1)
Ejemplo n.º 7
0
    def test_abort_early(self):
        """Test aborting early."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern='*.txt*',
                               flags=self.default_flags | wcmatch.RECURSIVE
                               | wcmatch.HIDDEN)

        walker.kill()
        records = 0
        for f in walker.imatch():
            records += 1

        self.assertTrue(records == 0 or walker.get_skipped() == 0)
Ejemplo n.º 8
0
    def test_size_equal(self):
        """Test size equals than x."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern=r'*.*',
                               flags=self.default_flags | wcmatch.RECURSIVE
                               | wcmatch.HIDDEN,
                               size=("eq", 0))

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 1)
        self.assertEqual(len(self.files), 5)
Ejemplo n.º 9
0
    def test_backup_folder_no_backup(self):
        """Test directory search with backup disabled and folder backup."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern=r'*.txt',
                               flags=self.default_flags | wcmatch.RECURSIVE
                               | wcmatch.HIDDEN,
                               backup_to_folder=True)

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 0)
        self.assertEqual(len(self.files), 2)
Ejemplo n.º 10
0
    def test_recursive_hidden_folder_exclude_inverse(self):
        """Test non-recursive search with inverse."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern='*.txt',
                               exclude_pattern='*|-.hidden',
                               flags=self.default_flags | wcmatch.RECURSIVE
                               | wcmatch.HIDDEN)

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 4)
        self.assertEqual(len(self.files), 2)
        self.assertEqual(os.path.basename(sorted(self.files)[0].name), 'a.txt')
Ejemplo n.º 11
0
    def test_re(self):
        """Test regex search."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern=r'.*?\.txt',
                               flags=self.default_flags,
                               file_regex_match=True)

        self.crawl_files(walker)

        self.assertEqual(walker.regex_mode, rc.RE_MODE)
        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(sorted(self.files)[0].name), 'a.txt')
Ejemplo n.º 12
0
    def test_time_created_greater(self):
        """Test created time greater than x."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern=r'*.*',
                               flags=self.default_flags | wcmatch.RECURSIVE
                               | wcmatch.HIDDEN,
                               created=("gt",
                                        rc.util.local_time_to_epoch_timestamp(
                                            '07/07/1980', '00:00:00')))

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 0)
        self.assertEqual(len(self.files), 6)
Ejemplo n.º 13
0
    def test_recursive_hidden_re_folder_exclude(self):
        """Test non-recursive search."""

        walker = rc._DirWalker(self.tempdir,
                               file_pattern='*.txt',
                               exclude_pattern=r'\.hidden',
                               flags=self.default_flags | wcmatch.RECURSIVE
                               | wcmatch.HIDDEN,
                               folder_regex_exclude_match=True)

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(self.files[0].name), 'a.txt')
Ejemplo n.º 14
0
    def test_raw_chars(self):
        """Test raw chars."""

        walker = rc._DirWalker(
            self.tempdir,
            file_pattern=r'*.\x74\N{LATIN SMALL LETTER X}\u0074',
            exclude_pattern=r'\.\U00000068idden',
            flags=self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            folder_regex_exclude_match=True)

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(self.files[0].name), 'a.txt')
Ejemplo n.º 15
0
    def test_non_recursive_inverse_backup(self):
        """Test non-recursive inverse search with backup."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.*|-*.file', None,
            False, False, self.default_flags,
            False, False,
            None, None, None,
            'rum-bak', False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
Ejemplo n.º 16
0
    def test_backup_folder_with_backup(self):
        """Test directory search with backup disabled and folder backup."""

        walker = rc._DirWalker(
            self.tempdir,
            r'*.txt', None,
            self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            False, False,
            None, None, None,
            '.rum-bak', True
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 0)
        self.assertEqual(len(self.files), 1)
Ejemplo n.º 17
0
    def test_time_created_greater(self):
        """Test created time greater than x."""

        walker = rc._DirWalker(
            self.tempdir,
            r'*.*', None,
            self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            False, False,
            None, None, ("gt", epoch.local_time_to_epoch_timestamp('07/07/1980', '00:00:00')),
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 0)
        self.assertEqual(len(self.files), 6)
Ejemplo n.º 18
0
    def test_size_equal(self):
        """Test size equals than x."""

        walker = rc._DirWalker(
            self.tempdir,
            r'*.*', None,
            self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            False, False,
            ("eq", 0), None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 1)
        self.assertEqual(len(self.files), 5)
Ejemplo n.º 19
0
    def test_non_recursive_inverse_backup(self):
        """Test non-recursive inverse search with backup."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.*|-*.file', None,
            self.default_flags,
            False, False,
            None, None, None,
            'rum-bak', False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
Ejemplo n.º 20
0
    def test_backup_folder_with_backup(self):
        """Test directory search with backup disabled and folder backup."""

        walker = rc._DirWalker(
            self.tempdir,
            r'*.txt', None,
            True, True, self.default_flags,
            False, False,
            None, None, None,
            '.rum-bak', True
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 0)
        self.assertEqual(len(self.files), 1)
Ejemplo n.º 21
0
    def test_time_created_greater(self):
        """Test created time greater than x."""

        walker = rc._DirWalker(
            self.tempdir,
            r'*.*', None,
            True, True, self.default_flags,
            False, False,
            None, None, ("gt", epoch.local_time_to_epoch_timestamp('07/07/1980', '00:00:00')),
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 0)
        self.assertEqual(len(self.files), 6)
Ejemplo n.º 22
0
    def test_size_equal(self):
        """Test size equals than x."""

        walker = rc._DirWalker(
            self.tempdir,
            r'*.*', None,
            True, True, self.default_flags,
            False, False,
            ("eq", 0), None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 1)
        self.assertEqual(len(self.files), 5)
Ejemplo n.º 23
0
    def test_abort(self):
        """Test aborting."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.txt', None,
            True, True, self.default_flags,
            False, False,
            None, None, None,
            None, False
        )

        records = 0
        for f in walker.imatch():
            records += 1
            walker.kill()

        self.assertEqual(records, 1)
Ejemplo n.º 24
0
    def test_recursive_hidden_folder_exclude_inverse(self):
        """Test non-recursive search with inverse."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.txt', '*|-.hidden',
            True, True, self.default_flags,
            False, False,
            None, None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 4)
        self.assertEqual(len(self.files), 2)
        self.assertEqual(os.path.basename(sorted(self.files)[0].name), 'a.txt')
Ejemplo n.º 25
0
    def test_abort_early(self):
        """Test aborting early."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.txt*', None,
            True, True, self.default_flags,
            False, False,
            None, None, None,
            None, False
        )

        walker.kill()
        records = 0
        for f in walker.imatch():
            records += 1

        self.assertTrue(records == 1 or walker.get_skipped() == 1)
Ejemplo n.º 26
0
    def test_recursive(self):
        """Test non-recursive search."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.txt', None,
            self.default_flags | wcmatch.RECURSIVE,
            False, False,
            None, None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(self.files[0].name), 'a.txt')
Ejemplo n.º 27
0
    def test_recursive_hidden_re_folder_exclude(self):
        """Test non-recursive search."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.txt', r'\.hidden',
            self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            False, True,
            None, None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(self.files[0].name), 'a.txt')
Ejemplo n.º 28
0
    def test_recursive_hidden_folder_exclude_inverse(self):
        """Test non-recursive search with inverse."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.txt', '*|-.hidden',
            self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            False, False,
            None, None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 4)
        self.assertEqual(len(self.files), 2)
        self.assertEqual(os.path.basename(sorted(self.files)[0].name), 'a.txt')
Ejemplo n.º 29
0
    def test_time_modified_less(self):
        """Test modified time less than x."""

        future = datetime.datetime.today() + datetime.timedelta(days=2)
        date = "%02d/%02d/%04d" % (future.month, future.day, future.year)

        walker = rc._DirWalker(
            self.tempdir,
            file_pattern=r'*.*',
            flags=self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            modified=("lt",
                      rc.util.local_time_to_epoch_timestamp(date, '00:00:00')))

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 0)
        self.assertEqual(len(self.files), 6)
Ejemplo n.º 30
0
    def test_raw_chars(self):
        """Test raw chars."""

        walker = rc._DirWalker(
            self.tempdir,
            r'*.\x74\N{LATIN SMALL LETTER X}\u0074', r'\.\U00000068idden',
            self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            False, True,
            None, None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(self.files[0].name), 'a.txt')
Ejemplo n.º 31
0
    def test_abort(self):
        """Test aborting."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.txt', None,
            self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            False, False,
            None, None, None,
            None, False
        )

        records = 0
        for f in walker.imatch():
            records += 1
            walker.kill()

        self.assertEqual(records, 1)
Ejemplo n.º 32
0
    def test_recursive_hidden_re_folder_exclude(self):
        """Test non-recursive search."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.txt', r'\.hidden',
            True, True, self.default_flags,
            False, True,
            None, None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(self.files[0].name), 'a.txt')
Ejemplo n.º 33
0
    def test_abort_early(self):
        """Test aborting early."""

        walker = rc._DirWalker(
            self.tempdir,
            '*.txt*', None,
            self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            False, False,
            None, None, None,
            None, False
        )

        walker.kill()
        records = 0
        for f in walker.imatch():
            records += 1

        self.assertTrue(records == 0 or walker.get_skipped() == 0)
Ejemplo n.º 34
0
    def test_raw_chars(self):
        """Test raw chars."""

        walker = rc._DirWalker(
            self.tempdir,
            r'*.\x74\N{LATIN SMALL LETTER X}\u0074', r'\.\U00000068idden',
            True, True, self.default_flags,
            False, True,
            None, None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(self.files[0].name), 'a.txt')
Ejemplo n.º 35
0
    def test_re(self):
        """Test regex search."""

        walker = rc._DirWalker(
            self.tempdir,
            r'.*?\.txt', None,
            self.default_flags,
            True, False,
            None, None, None,
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(walker.regex_mode, rc.RE_MODE)
        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(sorted(self.files)[0].name), 'a.txt')
Ejemplo n.º 36
0
    def test_time_created_less(self):
        """Test created time less than x."""

        future = datetime.datetime.today() + datetime.timedelta(days=2)
        date = "%02d/%02d/%04d" % (future.month, future.day, future.year)

        walker = rc._DirWalker(
            self.tempdir,
            r'*.*', None,
            self.default_flags | wcmatch.RECURSIVE | wcmatch.HIDDEN,
            False, False,
            None, None, ("lt", epoch.local_time_to_epoch_timestamp(date, '00:00:00')),
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 0)
        self.assertEqual(len(self.files), 6)
Ejemplo n.º 37
0
    def test_time_created_less(self):
        """Test created time less than x."""

        future = datetime.datetime.today() + datetime.timedelta(days=2)
        date = "%02d/%02d/%04d" % (future.month, future.day, future.year)

        walker = rc._DirWalker(
            self.tempdir,
            r'*.*', None,
            True, True, self.default_flags,
            False, False,
            None, None, ("lt", epoch.local_time_to_epoch_timestamp(date, '00:00:00')),
            None, False
        )

        self.crawl_files(walker)

        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 0)
        self.assertEqual(len(self.files), 6)
Ejemplo n.º 38
0
    def test_bregex(self):
        """Test `bregex` search."""

        walker = rc._DirWalker(
            self.tempdir,
            r'.*?\.txt', None,
            False, False, self.default_flags,
            True, False,
            None, None, None,
            None, False,
            rc.BREGEX_MODE
        )

        self.crawl_files(walker)

        self.assertEqual(walker.regex_mode, rc.BREGEX_MODE)
        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(sorted(self.files)[0].name), 'a.txt')
Ejemplo n.º 39
0
    def test_bad_regular_expression_mode(self):
        """Test bad regular expression mode search."""

        walker = rc._DirWalker(
            self.tempdir,
            r'.*?\.txt', None,
            False, False, self.default_flags,
            True, False,
            None, None, None,
            None, False,
            -1
        )

        self.crawl_files(walker)

        self.assertEqual(walker.regex_mode, rc.RE_MODE)
        self.assertEqual(len(self.errors), 0)
        self.assertEqual(self.skipped, 3)
        self.assertEqual(len(self.files), 1)
        self.assertEqual(os.path.basename(sorted(self.files)[0].name), 'a.txt')