--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-sparse-clone.t Sat Jul 01 10:43:29 2017 -0700
@@ -0,0 +1,72 @@
+test sparse
+
+ $ cat >> $HGRCPATH << EOF
+ > [ui]
+ > ssh = python "$RUNTESTDIR/dummyssh"
+ > username = nobody <no.reply@fb.com>
+ > [extensions]
+ > sparse=
+ > purge=
+ > strip=
+ > rebase=
+ > EOF
+
+ $ hg init myrepo
+ $ cd myrepo
+ $ echo a > index.html
+ $ echo x > data.py
+ $ echo z > readme.txt
+ $ cat > webpage.sparse <<EOF
+ > [include]
+ > *.html
+ > EOF
+ $ cat > backend.sparse <<EOF
+ > [include]
+ > *.py
+ > EOF
+ $ hg ci -Aqm 'initial'
+ $ cd ..
+
+Verify local clone with a sparse profile works
+
+ $ hg clone --enable-profile webpage.sparse myrepo clone1
+ updating to branch default
+ warning: sparse profile 'webpage.sparse' not found in rev 000000000000 - ignoring it
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ cd clone1
+ $ ls
+ index.html
+ $ cd ..
+
+Verify local clone with include works
+
+ $ hg clone --include *.sparse myrepo clone2
+ updating to branch default
+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ cd clone2
+ $ ls
+ backend.sparse
+ webpage.sparse
+ $ cd ..
+
+Verify local clone with exclude works
+
+ $ hg clone --exclude data.py myrepo clone3
+ updating to branch default
+ 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ cd clone3
+ $ ls
+ backend.sparse
+ index.html
+ readme.txt
+ webpage.sparse
+ $ cd ..
+
+Verify sparse clone profile over ssh works
+
+ $ hg clone -q --enable-profile webpage.sparse ssh://user@dummy/myrepo clone4
+ warning: sparse profile 'webpage.sparse' not found in rev 000000000000 - ignoring it
+ $ cd clone4
+ $ ls
+ index.html
+ $ cd ..