# Copyright (c) Facebook, Inc. and its affiliates. # # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. from __future__ import absolute_import from testutil.dott import feature, sh, testtmp # noqa: F401 feature.require(["py2"]) # test interaction between sparse and treemanifest (sparse file listing) sh % "cat" << r""" [extensions] sparse= treemanifest= [treemanifest] treeonly = True [remotefilelog] reponame = master cachepath = $PWD/hgcache """ >> "$HGRCPATH" # Setup the repository sh % "hg init myrepo" sh % "cd myrepo" sh % "touch show" sh % "touch hide" sh % "mkdir -p subdir/foo/spam subdir/bar/ham hiddensub/foo hiddensub/bar" sh % "touch subdir/foo/spam/show" sh % "touch subdir/bar/ham/hide" sh % "touch hiddensub/foo/spam" sh % "touch hiddensub/bar/ham" sh % "hg add ." == r""" adding hiddensub/bar/ham adding hiddensub/foo/spam adding hide adding show adding subdir/bar/ham/hide adding subdir/foo/spam/show""" sh % "hg commit -m Init" sh % "hg sparse include show" sh % "hg sparse exclude hide" sh % "hg sparse include subdir" sh % "hg sparse exclude subdir/foo" # Test cwd sh % "hg sparse cwd" == r""" - hiddensub - hide show subdir""" sh % "cd subdir" sh % "hg sparse cwd" == r""" bar - foo""" sh % "hg sparse include foo" sh % "hg sparse cwd" == r""" bar foo"""