sapling/tests/test-fb-hgext-p4fastimport-import-lfs.t
Jun Wu 840d98a378 testcodemod: clean up some "hgext3rd" references
Summary: Tests should not refer to hgext3rd directly.

Test Plan: Ran tests.

Reviewers: durham, #mercurial

Reviewed By: durham

Subscribers: durham

Differential Revision: https://phabricator.intern.facebook.com/D6698786

Signature: 6698786:1515632845:9a63120fb13eab17f268facd2be9b374506f665c
2018-01-10 15:36:54 -08:00

111 lines
3.7 KiB
Raku

#require p4
$ . $TESTDIR/p4setup.sh
$ cat >> $HGRCPATH<<EOF
> [extensions]
> lfs=
> [p4fastimport]
> [lfs]
> threshold=10
> url=file:$TESTTMP/dummy-remote/
> EOF
populate the depot
$ mkdir Main
$ mkdir Main/b
$ echo a > Main/a
$ echo c > Main/b/c
$ echo thisisasuperlargefilebewithmorethank10Bsize >> Main/largefile
$ p4 add Main/a Main/b/c Main/largefile
//depot/Main/a#1 - opened for add
//depot/Main/b/c#1 - opened for add
//depot/Main/largefile#1 - opened for add
$ p4 submit -d initial
Submitting change 1.
Locking 3 files ...
add //depot/Main/a#1
add //depot/Main/b/c#1
add //depot/Main/largefile#1
Change 1 submitted.
$ p4 edit Main/a Main/b/c Main/largefile
//depot/Main/a#1 - opened for edit
//depot/Main/b/c#1 - opened for edit
//depot/Main/largefile#1 - opened for edit
$ echo a >> Main/a
$ echo c >> Main/b/c
$ echo thisisasuperlargefilebewithmorethank10Bsize >> Main/largefile
$ p4 submit -d second
Submitting change 2.
Locking 3 files ...
edit //depot/Main/a#2
edit //depot/Main/b/c#2
edit //depot/Main/largefile#2
Change 2 submitted.
Simple import
$ cd $hgwd
$ hg init --config 'format.usefncache=False'
$ hg p4fastimport --debug -P $P4ROOT hg-p4-import
loading changelist numbers.
2 changelists to import.
loading list of files.
3 files to import.
reading filelog * (glob)
reading filelog * (glob)
reading filelog * (glob)
importing repository.
writing filelog: b789fdd96dc2, p1 000000000000, linkrev 0, 2 bytes, src: *, path: Main/a (glob)
writing filelog: a80d06849b33, p1 b789fdd96dc2, linkrev 1, 4 bytes, src: *, path: Main/a (glob)
writing filelog: 149da44f2a4e, p1 000000000000, linkrev 0, 2 bytes, src: *, path: Main/b/c (glob)
writing filelog: b11e10a88bfa, p1 149da44f2a4e, linkrev 1, 4 bytes, src: *, path: Main/b/c (glob)
updating the branch cache (?)
writing filelog: ee08366a1a83, p1 000000000000, linkrev 0, 44 bytes, src: rcs, path: Main/largefile
largefile: Main/largefile, oid: dde0d1d11f099d6572fa47fcbd1cae324aeaad7409cb107461b09ba4eb2177ac
writing filelog: a33f052256c3, p1 ee08366a1a83, linkrev 1, 88 bytes, src: rcs, path: Main/largefile
largefile: Main/largefile, oid: 595efb640da040786d840fbae4675925fd4621f3498b849744ce0d4446674e3f
changelist 1: writing manifest. node: e970866c1151 p1: 000000000000 p2: 000000000000 linkrev: 0
changelist 1: writing changelog: initial
changelist 2: writing manifest. node: 628c61b1c54a p1: e970866c1151 p2: 000000000000 linkrev: 1
changelist 2: writing changelog: second
updating the branch cache
2 revision(s), 3 file(s) imported.
Verify
(waiting for https://patchwork.mercurial-scm.org/patch/20582/)
$ hg --debug verify --config verify.skipflags=8192
repository uses revlog format 1
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
3 files, 2 changesets, 6 total revisions
$ test -d .hg/store/lfs/objects
# Ensure metadata is stored
$ hg debugdata Main/largefile 0
version https://git-lfs.github.com/spec/v1
oid sha256:dde0d1d11f099d6572fa47fcbd1cae324aeaad7409cb107461b09ba4eb2177ac
size 44
x-is-binary 0
# Check the blobstore is populated
$ find .hg/store/lfs/objects | sort
.hg/store/lfs/objects
.hg/store/lfs/objects/59
.hg/store/lfs/objects/59/5efb640da040786d840fbae4675925fd4621f3498b849744ce0d4446674e3f
.hg/store/lfs/objects/dd
.hg/store/lfs/objects/dd/e0d1d11f099d6572fa47fcbd1cae324aeaad7409cb107461b09ba4eb2177ac
# Check the blob stored contains the actual contents of the file
$ cat .hg/store/lfs/objects/59/5efb640da040786d840fbae4675925fd4621f3498b849744ce0d4446674e3f
thisisasuperlargefilebewithmorethank10Bsize
thisisasuperlargefilebewithmorethank10Bsize
End Test
stopping the p4 server