Mercurial > hg > fetch
annotate tests/doctest.txt @ 56:6ebd2d10fc03 default tip
stub embedding fetch
| author | Jeff Hammel <jhammel@mozilla.com> | 
|---|---|
| date | Fri, 02 Dec 2011 17:41:12 -0800 | 
| parents | 1c963875e6cd | 
| children | 
| rev | line source | 
|---|---|
| 0 | 1 Test fetch | 
| 22 | 2 ========== | 
| 0 | 3 | 
| 21 | 4 The obligatory imports:: | 
| 0 | 5 | 
| 6 >>> import fetch | |
| 22 | 7 >>> import os | 
| 8 >>> import shutil | |
| 9 >>> import tempfile | |
| 29 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 10 >>> from StringIO import StringIO | 
| 22 | 11 | 
| 12 Create a staging directory:: | |
| 13 | |
| 14 >>> stage = tempfile.mkdtemp() | |
| 0 | 15 | 
| 21 | 16 Create a Fetch object:: | 
| 0 | 17 | 
| 22 | 18 >>> f = fetch.Fetch(relative_to=stage, strict=True) | 
| 29 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 19 | 
| 22 | 20 Call Fetch directly:: | 
| 0 | 21 | 
| 22 | 22 >>> def url(*args): | 
| 23 ... return 'file://' + os.path.join(*([here] + list(args))) | |
| 24 >>> f(url=url('sample1.txt'), destination=stage, type='file') | |
| 29 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 25 >>> dest = os.path.join(stage, 'sample1.txt') | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 26 >>> file(dest).read().strip() | 
| 22 | 27 'sample1' | 
| 29 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 28 >>> os.remove(dest) | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 29 | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 30 Parse a Fetch "manifest":: | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 31 | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 32 >>> dest = os.path.join(stage, 'example1.txt') | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 33 >>> manifest = '%s %s file' % (url('sample1.txt'), 'example1.txt') # SOURCE DEST TYPE | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 34 >>> buffer = StringIO() | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 35 >>> buffer.write(manifest) | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 36 >>> buffer.seek(0) | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 37 >>> contents = fetch.read_manifests(buffer) | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 38 >>> len(contents) | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 39 1 | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 40 >>> f.fetch(*contents) | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 41 >>> file(dest).read().strip() | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 42 'sample1' | 
| 
1c963875e6cd
add a test for manifest and fix resulting bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
22diff
changeset | 43 >>> os.remove(dest) | 
| 22 | 44 | 
| 45 Cleanup:: | |
| 46 | |
| 47 >>> shutil.rmtree(stage) | 
