Exemple #1
0
 def test_wildcard(self):
     aliases = PathAliases()
     aliases.add('/ned/home/*/src', './mysrc')
     self.assertEqual(aliases.map('/ned/home/foo/src/a.py'), './mysrc/a.py')
     aliases = PathAliases()
     aliases.add('/ned/home/*/src/', './mysrc')
     self.assertEqual(aliases.map('/ned/home/foo/src/a.py'), './mysrc/a.py')
Exemple #2
0
 def test_wildcard(self):
     aliases = PathAliases()
     aliases.add('/ned/home/*/src', './mysrc')
     self.assertEqual(aliases.map('/ned/home/foo/src/a.py'), './mysrc/a.py')
     aliases = PathAliases()
     aliases.add('/ned/home/*/src/', './mysrc')
     self.assertEqual(aliases.map('/ned/home/foo/src/a.py'), './mysrc/a.py')
Exemple #3
0
    def test_paths_are_os_corrected(self):
        aliases = PathAliases()
        aliases.add('/home/ned/*/src', './mysrc')
        aliases.add(r'c:\ned\src', './mysrc')
        mapped = aliases.map(r'C:\Ned\src\sub\a.py')
        self.assertEqual(mapped, './mysrc/sub/a.py')

        aliases = PathAliases()
        aliases.add('/home/ned/*/src', r'.\mysrc')
        aliases.add(r'c:\ned\src', r'.\mysrc')
        mapped = aliases.map(r'/home/ned/foo/src/sub/a.py')
        self.assertEqual(mapped, r'.\mysrc\sub\a.py')
Exemple #4
0
    def test_paths_are_os_corrected(self):
        aliases = PathAliases()
        aliases.add('/home/ned/*/src', './mysrc')
        aliases.add(r'c:\ned\src', './mysrc')
        mapped = aliases.map(r'C:\Ned\src\sub\a.py')
        self.assertEqual(mapped, './mysrc/sub/a.py')

        aliases = PathAliases()
        aliases.add('/home/ned/*/src', r'.\mysrc')
        aliases.add(r'c:\ned\src', r'.\mysrc')
        mapped = aliases.map(r'/home/ned/foo/src/sub/a.py')
        self.assertEqual(mapped, r'.\mysrc\sub\a.py')
Exemple #5
0
    def test_dot(self):
        for d in ('.', '..', '../other', '~'):
            aliases = PathAliases()
            aliases.add(d, '/the/source')
            the_file = os.path.join(d, 'a.py')
            the_file = os.path.expanduser(the_file)
            the_file = os.path.abspath(os.path.realpath(the_file))

            assert '~' not in the_file  # to be sure the test is pure.
            self.assertEqual(aliases.map(the_file), '/the/source/a.py')
Exemple #6
0
    def test_dot(self):
        for d in ('.', '..', '../other', '~'):
            aliases = PathAliases()
            aliases.add(d, '/the/source')
            the_file = os.path.join(d, 'a.py')
            the_file = os.path.expanduser(the_file)
            the_file = os.path.abspath(os.path.realpath(the_file))

            assert '~' not in the_file  # to be sure the test is pure.
            self.assertEqual(aliases.map(the_file), '/the/source/a.py')
Exemple #7
0
def coverage3x_combine(files, data):
    """
        Combine all coverage files from @files
        into @data.

        Note: this works with coverage 3.6 (and possibly older) versions.
    """

    aliases = PathAliases()

    for f in files:
        new_lines, new_arcs = data._read_file(f)

        for filename, file_data in iitems(new_lines):
            filename = aliases.map(filename)
            data.lines.setdefault(filename, {}).update(file_data)
        for filename, file_data in iitems(new_arcs):
            filename = aliases.map(filename)
            data.arcs.setdefault(filename, {}).update(file_data)

    return data
Exemple #8
0
 def test_no_accidental_munging(self):
     aliases = PathAliases()
     aliases.add(r'c:\Zoo\boo', 'src/')
     aliases.add('/home/ned$', 'src/')
     self.assertEqual(aliases.map(r'c:\Zoo\boo\foo.py'), 'src/foo.py')
     self.assertEqual(aliases.map(r'/home/ned$/foo.py'), 'src/foo.py')
Exemple #9
0
 def test_nomatch(self):
     aliases = PathAliases()
     aliases.add('/home/*/src', './mysrc')
     self.assertEqual(aliases.map('/home/foo/a.py'), '/home/foo/a.py')
Exemple #10
0
 def test_noop(self):
     aliases = PathAliases()
     self.assertEqual(aliases.map('/ned/home/a.py'), '/ned/home/a.py')
Exemple #11
0
 def test_no_accidental_munging(self):
     aliases = PathAliases()
     aliases.add(r'c:\Zoo\boo', 'src/')
     aliases.add('/home/ned$', 'src/')
     self.assertEqual(aliases.map(r'c:\Zoo\boo\foo.py'), 'src/foo.py')
     self.assertEqual(aliases.map(r'/home/ned$/foo.py'), 'src/foo.py')
Exemple #12
0
 def test_leading_wildcard(self):
     aliases = PathAliases()
     aliases.add('*/d1', './mysrc1')
     aliases.add('*/d2', './mysrc2')
     self.assertEqual(aliases.map('/foo/bar/d1/x.py'), './mysrc1/x.py')
     self.assertEqual(aliases.map('/foo/bar/d2/y.py'), './mysrc2/y.py')
Exemple #13
0
 def test_no_accidental_match(self):
     aliases = PathAliases()
     aliases.add('/home/*/src', './mysrc')
     self.assertEqual(aliases.map('/home/foo/srcetc'), '/home/foo/srcetc')
Exemple #14
0
 def test_multiple_patterns(self):
     aliases = PathAliases()
     aliases.add('/home/*/src', './mysrc')
     aliases.add('/lib/*/libsrc', './mylib')
     self.assertEqual(aliases.map('/home/foo/src/a.py'), './mysrc/a.py')
     self.assertEqual(aliases.map('/lib/foo/libsrc/a.py'), './mylib/a.py')
Exemple #15
0
 def test_no_accidental_match(self):
     aliases = PathAliases()
     aliases.add('/home/*/src', './mysrc')
     self.assertEqual(aliases.map('/home/foo/srcetc'), '/home/foo/srcetc')
Exemple #16
0
 def test_nomatch(self):
     aliases = PathAliases()
     aliases.add('/home/*/src', './mysrc')
     self.assertEqual(aliases.map('/home/foo/a.py'), '/home/foo/a.py')
Exemple #17
0
 def test_noop(self):
     aliases = PathAliases()
     self.assertEqual(aliases.map('/ned/home/a.py'), '/ned/home/a.py')
Exemple #18
0
 def test_multiple_patterns(self):
     aliases = PathAliases()
     aliases.add('/home/*/src', './mysrc')
     aliases.add('/lib/*/libsrc', './mylib')
     self.assertEqual(aliases.map('/home/foo/src/a.py'), './mysrc/a.py')
     self.assertEqual(aliases.map('/lib/foo/libsrc/a.py'), './mylib/a.py')
Exemple #19
0
 def test_leading_wildcard(self):
     aliases = PathAliases()
     aliases.add('*/d1', './mysrc1')
     aliases.add('*/d2', './mysrc2')
     self.assertEqual(aliases.map('/foo/bar/d1/x.py'), './mysrc1/x.py')
     self.assertEqual(aliases.map('/foo/bar/d2/y.py'), './mysrc2/y.py')