def test_include_filter__smaller_filter(self): r = Rover('') r.set_includes(['acme/app/test/java/foo']) r.config_items = _list_as_rover_items( [('acme/project9', 'HEAD', 'cvs'), ('acme/app/src/java', 'HEAD', 'cvs'), ('acme/app/test/java', 'HEAD', 'cvs')]) r.apply_filters() expected = _list_as_rover_items( [('acme/app/test/java/foo', 'HEAD', 'cvs')]) self.assertEquals(r.config_items, expected)
def test_mixed__no_overlap(self): r = Rover('') r.set_includes(['acme/app/test/java']) r.set_excludes(['acme/project9']) r.config_items = _list_as_rover_items( [('acme/project9', 'HEAD', 'cvs'), ('acme/app/src/java', 'HEAD', 'cvs'), ('acme/app/test/java', 'HEAD', 'cvs')]) r.apply_filters() expected = _list_as_rover_items( [('acme/app/test/java', 'HEAD', 'cvs')]) self.assertEquals(r.config_items, expected)
def test_mixed__overlap__include_greater(self): r = Rover('') r.set_includes(['acme/app']) r.set_excludes(['acme/app/src/java/com/example/app/command']) r.config_items = _list_as_rover_items( [('acme/project9', 'HEAD', 'cvs'), ('acme/app/src/java', 'HEAD', 'cvs'), ('acme/app/test/java', 'HEAD', 'cvs')]) r.apply_filters() expected = _list_as_rover_items( [('acme/app/src/java !acme/app/src/java/com/example/app/command', 'HEAD', 'cvs'), ('acme/app/test/java', 'HEAD', 'cvs')]) self.assertEquals(r.config_items, expected)
def test_svn_exclude_naive(self): self.list_contents = {} self.list_contents['acme/project9/module'] = ['pk', 'cli', 'rab', 'api'] r = Rover('') r.config_items = _list_as_rover_items( [('acme/project9/module', 'HEAD', 'svn', 'http://foo.com'), ('acme/project9/module/rab', 'HEAD', 'svn', 'http://bar.com')]) r.resolve() expected = _list_as_rover_items( [('acme/project9/module/pk', 'HEAD', 'svn', 'http://foo.com'), ('acme/project9/module/cli', 'HEAD', 'svn', 'http://foo.com'), ('acme/project9/module/api', 'HEAD', 'svn', 'http://foo.com'), ('acme/project9/module/rab', 'HEAD', 'svn', 'http://bar.com')]) self.assertEquals(r.config_items, expected)