Brian Warner
2a05aa2d91
lazily create DownloadNode upon first read()/get_segment()
2010-08-04 00:28:08 -07:00
Brian Warner
abcd6e0e96
test_hung_server: update comments, remove dead "stage_4_d" code
2010-08-04 00:28:00 -07:00
Brian Warner
919938dd95
copy the rest of David-Sarah's changes to make my tree match 1.8.0beta
2010-08-04 00:27:52 -07:00
Brian Warner
20847dd876
ShareFinder: add 10s OVERDUE timer, send new requests to replace overdue ones
...
The fixed 10-second timer will eventually be replaced with a per-server
value, calculated based on observed response times.
test_hung_server.py: enhance to exercise DYHB=OVERDUE state. Split existing
mutable+immutable tests into two pieces for clarity. Reenabled several tests.
Deleted the now-obsolete "test_failover_during_stage_4".
2010-08-04 00:27:41 -07:00
Brian Warner
63b61ce7bd
Rewrite immutable downloader ( #798 ). This patch adds and updates unit tests.
2010-08-04 00:27:10 -07:00
Brian Warner
cbcb728e7e
Add a byte-spans utility class, like perl's Set::IntSpan for .newsrc files.
...
Also a data-spans class, which records a byte (instead of a bit) for each
index.
2010-08-04 00:26:00 -07:00
david-sarah
f10f9a8646
test_storage.py: avoid spurious test failure by accepting either 'Next crawl in 59 minutes' or 'Next crawl in 60 minutes'. fixes #1140
2010-08-03 03:20:58 -07:00
david-sarah
a7c474a098
CLI: further improve consistency of basedir options and add tests. addresses #118
2010-08-03 01:54:16 -07:00
david-sarah
51eeea900f
test_cli.py: make 'tahoe mkdir' tests slightly less dumb (check for 'URI:' in the output).
2010-08-03 01:47:20 -07:00
david-sarah
b9174b5fe7
test_cli.py: use u-escapes instead of UTF-8.
2010-08-03 01:35:38 -07:00
david-sarah
d81e8acf88
test_runner.py: add test_run_with_python_options, which checks that the Windows script changes haven't broken 'python <options> bin/tahoe'.
2010-08-01 23:25:58 -07:00
david-sarah
3ddb4a9bbf
test_runner.py: fix missing import of get_filesystem_encoding
2010-08-01 23:09:02 -07:00
david-sarah
3af6f19cb0
misc/build_helpers/run_trial.py: check that the root from which the module we are testing was loaded is the current directory. This version of the patch folds in later fixes to the logic for caculating the directories to compare, and improvements to error messages. addresses #1137
2010-08-01 21:55:35 -07:00
david-sarah
1fad717aaa
test_runner.py: change to code for locating the bin/tahoe script that was missed when rebasing the patch for #1074 .
2010-07-25 11:20:08 -07:00
david-sarah
37b07a545f
Changes to Tahoe needed to work with new zetuptoolz (that does not use .exe wrappers on Windows), and to support Unicode arguments and stdout/stderr -- v5
2010-07-25 01:32:16 -07:00
david-sarah
f952532f08
Basedir/node directory option improvements for ticket798 branch. addresses #188 , #706 , #715 , #772 , #890
2010-08-01 21:30:04 -07:00
david-sarah
9aae9208e3
test_runner.py: Fix error in message arguments to 'fail' calls.
2010-08-01 18:35:26 -07:00
david-sarah
2b33704d61
test_system: correct a failure in _test_runner caused by Unicode basedir patch on non-Unicode platforms.
2010-07-23 20:21:23 -07:00
david-sarah
f036dfaa4b
Fix test failures due to Unicode basedir patches.
2010-07-24 18:03:18 -07:00
david-sarah
28e6ad51a7
util.encodingutil: change quote_output to do less unnecessary escaping, and to use double-quotes more consistently when needed. This version avoids u-escaping for characters that are representable in the output encoding, when double quotes are used, and includes tests. fixes #1135
2010-07-23 00:53:14 -07:00
david-sarah
618db4867c
Replace uses of os.path.abspath with abspath_expanduser_unicode where necessary. This makes basedir paths consistently represented as Unicode.
2010-07-21 17:14:18 -07:00
david-sarah
11b18824c7
util.fileutil, test.test_util: add abspath_expanduser_unicode function, to work around < http://bugs.python.org/issue3426 >. util.encodingutil: add a convenience function argv_to_abspath.
2010-07-21 16:15:07 -07:00
jacob.lyles
e276050d5a
abbreviate time edge case python2.5 unit test
2010-07-29 14:06:38 -07:00
david-sarah
23c649c897
test_upload.py: rename test_problem_layout_ticket1124 to test_problem_layout_ticket_1124 -- fix .todo reference.
2010-07-29 08:29:27 -07:00
david-sarah
0ebe18cc73
test_upload.py: rename test_problem_layout_ticket1124 to test_problem_layout_ticket_1124 for consistency.
2010-07-29 07:22:50 -07:00
Zooko O'Whielacronx
28822dfb4e
tests: remove debug print
2010-08-01 23:33:39 -07:00
Zooko O'Whielacronx
fd874d6669
setup: fix a couple instances of hard-coded 'allmydata-tahoe' in the scripts, tighten the tests (as suggested by David-Sarah)
2010-08-01 09:42:07 -07:00
Zooko O'Whielacronx
44edecb36c
setup: replace hardcoded 'allmydata-tahoe' with allmydata.__appname__
2010-08-01 09:05:17 -07:00
Zooko O'Whielacronx
0f94923f22
immutable: use PrefixingLogMixin to organize logging in Tahoe2PeerSelector and add more detailed messages about peer
2010-07-19 01:20:00 -07:00
Zooko O'Whielacronx
2ebe2c2ff3
benchmarking: update bench_dirnode to be correct and use the shiniest new pyutil.benchutil features concerning what units you measure in
2010-07-18 21:49:48 -07:00
Zooko O'Whielacronx
9b4f412e49
trivial: rename and add in-line doc to clarify "used_peers" => "upload_servers"
2010-07-18 21:47:44 -07:00
david-sarah
bdc6fd2f8b
test_runner: test that 'tahoe --version' outputs no noise (e.g. DeprecationWarnings).
2010-07-19 18:13:45 -07:00
Zooko O'Whielacronx
c076c0b19b
immutable: add test case of #1128 , fix test case of #1118
2010-07-19 01:16:12 -07:00
Zooko O'Whielacronx
1dbfcf753d
immutable: extend the tests to check that the shares that got uploaded really do make a sufficiently Happy distribution
...
This patch also renames some instances of "find_shares()" to "find_all_shares()" and other instances to "find_uri_shares()" as appropriate -- the conflation between those names confused me at first when writing these tests.
2010-07-18 21:50:47 -07:00
Zooko O'Whielacronx
2e83f243c2
immutable: test for #1118
2010-07-18 15:15:37 -07:00
Zooko O'Whielacronx
0f46766a51
immutable: test for #1124
2010-07-18 15:29:07 -07:00
Zooko O'Whielacronx
8f201c75f0
trivial: fix unused import (sorry about that, pyflakes)
2010-07-18 14:51:33 -07:00
Zooko O'Whielacronx
16bb529339
tests, NEWS, CREDITS re: #1117
...
Give Brian and Kevan promotions, move release date in NEWS to the 18th, commit Brian's test for #1117 .
fixes #1117
2010-07-18 13:32:25 -07:00
Kevan Carstensen
054c4553b5
test/test_upload.py: test to see that aborted buckets are ignored by the storage server
2010-07-15 17:10:46 -07:00
Kevan Carstensen
677f3b1f63
test/test_storage.py: test for the new remote_abort semantics.
2010-07-15 16:21:48 -07:00
Kevan Carstensen
5becaf0309
test/test_upload.py: changes to test plumbing for #1117 tests
...
- Add a callRemoteOnly method to FakeBucketWriter.
- Change the abort method in FakeBucketWriter to not return a
RuntimeError.
2010-07-15 16:18:20 -07:00
david-sarah
638a3b2af4
test_encodingutil: correct an error in the previous patch to StdlibUnicode.test_open_representable.
2010-07-18 08:14:20 -07:00
david-sarah
74c41ebb8b
test_dirnode and test_web: don't use failUnlessReallyEqual in cases where the return type from simplejson.loads can vary between unicode and str. Use to_str when comparing URIs parsed from JSON.
2010-07-18 07:29:15 -07:00
david-sarah
9a4a864573
test_encodingutil: StdlibUnicode.test_open_representable no longer uses a mock.
2010-07-18 05:54:12 -07:00
Zooko O'Whielacronx
7cc98759bd
docs: add comment clarifying #1051
2010-07-17 22:32:50 -07:00
david-sarah
d346e0853d
Add tests of caps from the future that have non-ASCII characters in them (encoded as UTF-8). The changes to test_uri.py, test_client.py, and test_dirnode.py add tests of non-ASCII future caps in addition to the current tests. The changes to test_web.py just replace the tests of all-ASCII future caps with tests of non-ASCII future caps. We also change uses of failUnlessEqual to failUnlessReallyEqual, in order to catch cases where the type of a string is not as expected.
2010-07-11 13:02:52 -07:00
Zooko O'Whielacronx
3c4fe0706f
M-x whitespace-cleanup
2010-07-17 20:27:39 -07:00
Zooko O'Whielacronx
6a7023efbe
benchmarking: update bench_dirnode.py to reflect the new directory interfaces
2010-07-17 20:17:10 -07:00
david-sarah
bdb10553eb
test_encodingutil: fix test_open_representable, which is only valid when run on a platform for which we know an unrepresentable filename.
2010-07-17 20:03:33 -07:00
david-sarah
a8161c915a
Correct stringutils->encodingutil patch to be the newer version, rather than the old version that was committed in error.
2010-07-17 18:34:35 -07:00
david-sarah
0d79a4a7d1
test_cli.py: fix error that crept in when rebasing the patch for #1072 .
2010-07-17 17:01:23 -07:00
david-sarah
c59f9b162f
stringutils: add test for when sys.stdout has no encoding attribute ( fixes #1099 ).
2010-07-16 21:58:16 -07:00
david-sarah
8090785716
CLI: add 'tahoe unlink' as an alias to 'tahoe rm', for forward-compatibility.
2010-07-17 15:04:11 -07:00
Zooko O'Whielacronx
6e8477114e
minor code clean-up in dirnode.py
...
Impose micro-POLA by passing only the writekey instead of the whole node object to {{{_encrypt_rw_uri()}}}. Remove DummyImmutableFileNode in nodemaker.py, which is obviated by this. Add micro-optimization by precomputing the netstring of the empty string and branching on whether the writekey is present or not outside of {{{_encrypt_rw_uri()}}}. Add doc about writekey to docstring.
fixes #967
2010-07-13 23:02:55 -07:00
david-sarah
11077ea74d
Rename stringutils to encodingutil, and drop listdir_unicode and open_unicode (since the Python stdlib functions work fine with Unicode paths). Also move some utility functions to fileutil.
2010-07-11 17:30:15 -07:00
david-sarah
3b1b0147a8
test_storage.py: potential fix for failures when logging is enabled.
1970-07-12 21:05:46 -07:00
freestorm77
97579af73c
runnin_test_tahoe_css.dpatch
...
Runnin test for changes in tahoe.css file
2010-06-22 14:47:14 -07:00
freestorm77
0304918a77
runnin_test_directory_xhtml.dpatch
...
Runnin test for diretory.xhtml top banner
2010-06-22 13:14:03 -07:00
david-sarah
6b2f99fa9a
test_backupdb.py: skip test_unicode if we can't represent the test filenames.
2010-06-18 19:26:20 -07:00
david-sarah
a2caf6f4b2
test_web.py: correct a test that was missed in the change to not write ctime/mtime.
2010-06-18 19:17:18 -07:00
david-sarah
4712875193
dirnode.py: stop writing 'ctime' and 'mtime' fields. Includes documentation and test changes.
2010-06-18 16:01:19 -07:00
david-sarah
72e395d878
test_storage.py: print more information on test failures.
2010-06-16 20:46:23 -07:00
david-sarah
390fc78a9a
test_cli.py: fix test failure in CLI.test_listdir_unicode_good due to filenames returned from listdir_unicode no longer being normalized.
2010-06-17 21:51:10 -07:00
david-sarah
178401eb4e
tahoe backup: unicode tests.
2010-06-17 20:52:11 -07:00
david-sarah
a9fe3792de
dirnodes: fix normalization hole where childnames in directories created by nodemaker.create_mutable/immutable_directory would not be normalized. Add a test that we normalize names coming out of a directory.
2010-06-17 17:02:49 -07:00
david-sarah
5ada31034b
test_stringutils.py: take account of the output of listdir_unicode no longer being normalized. Also use Unicode escapes, not UTF-8.
2010-06-16 20:44:09 -07:00
david-sarah
025aede9e4
test_dirnode.py: partial tests for normalization changes.
2010-06-16 20:40:25 -07:00
david-sarah
408b12a7e6
test_system.py: investigate failure in allmydata.test.test_system.SystemTest.test_upload_and_download_random_key due to bytes_sent not being an int
2010-06-15 17:16:48 -07:00
david-sarah
11e88c340a
SFTP: test that renaming onto a just-opened file fails.
2010-06-11 20:37:09 -07:00
david-sarah
b67f8b66c8
SFTP: further small improvements to test coverage. Also ensure that after a test failure, later tests don't fail spuriously due to the checks for heisenfile leaks.
2010-06-11 20:07:37 -07:00
david-sarah
b4e074d250
SFTP: further improve test coverage (paths containing '.', bad data for posix-rename extension, and error in test of openShell).
2010-06-11 14:31:42 -07:00
david-sarah
52f87904ed
SFTP: improve test coverage for no-write on mutable files, and check for heisenfile table leaks in all relevant tests. Delete test_memory_leak since it is now redundant.
2010-06-11 13:57:52 -07:00
david-sarah
546c3d2ed4
SFTP: add test for extension of file opened with FXF_APPEND.
2010-06-10 11:26:47 -07:00
Zooko O'Whielacronx
f19c240ca8
tests: bump up the timeout on this iputil test from 2s to 4s
2010-06-09 07:30:17 -07:00
david-sarah
3c44389440
SFTP: fix most significant memory leak described in #1045 (due to a file being added to all_heisenfiles under more than one direntry when renamed).
2010-06-09 01:00:03 -07:00
david-sarah
5786874d38
test_stringutils.py: Fix test failure on CentOS builder, possibly Python 2.4.3-related.
2010-06-08 23:50:56 -07:00
david-sarah
ffd1c5aca5
Fix for Unicode-related test failures on Zooko's OS X 10.6 machine.
2010-06-08 22:54:48 -07:00
david-sarah
32d9deace3
Back out Windows-specific Unicode argument support for v1.7.
2010-06-08 17:08:03 -07:00
david-sarah
195b4afa8f
SFTP: ignore permissions when opening a file (needed for sshfs interoperability).
2010-06-07 22:57:00 -07:00
david-sarah
a67e745b26
test_web.py: fix pyflakes warnings introduced by byterange patch.
2010-06-07 21:20:12 -07:00
Jeremy Fitzhardinge
63b28d707b
Improve HTTP/1.1 byterange handling
...
Fix parsing of a Range: header to support:
- multiple ranges (parsed, but not returned)
- suffix byte ranges ("-2139")
- correct handling of incorrectly formatted range headers
(correct behaviour is to ignore the header and return the full
file)
- return appropriate error for ranges outside the file
Multiple ranges are parsed, but only the first range is returned.
Returning multiple ranges requires using the multipart/byterange
content type.
2010-03-09 20:59:13 -07:00
Zooko O'Whielacronx
d13784b649
tests: bump up the timeout on these tests; MM's buildslave is sometimes extremely slow on tests, but it will complete them if given enough time. MM is working on making that buildslave more predictable in how long it takes to run tests.
2010-06-07 20:37:54 -07:00
david-sarah
3c883e6e44
test_cli.py: remove invalid 'test_listdir_unicode_bad' test.
2010-06-07 11:37:30 -07:00
david-sarah
71f8757bd1
check_memory.py: adapt to servers-of-happiness changes.
2010-06-07 18:35:28 -07:00
david-sarah
7092de1b6f
Remove the 'tahoe debug consolidate' subcommand.
2010-06-07 11:37:57 -07:00
Zooko O'Whielacronx
faade8b20a
tests: drastically increase timeout of this very time-consuming test in honor of François's ARM box
2010-06-07 04:59:29 -07:00
david-sarah
8b014372b1
test_stringutils.py: trivial error in exception message for skipped test.
2010-06-06 23:14:55 -07:00
david-sarah
529c9f673a
More Unicode test fixes.
2010-06-06 22:33:58 -07:00
david-sarah
65b6f4e3ce
Unicode fixes for platforms with non-native-Unicode filesystems.
2010-06-06 21:32:38 -07:00
david-sarah
80252debcd
Unicode fixes.
2010-06-06 18:02:15 -07:00
Zooko O'Whielacronx
5bcca5151e
unicode tests: fix missing import
2010-06-04 07:26:30 -07:00
Zooko O'Whielacronx
db8a6f3aa6
unicode: make test_cli test a non-ascii argument, and make the fallback term encoding be locale.getpreferredencoding()
2010-06-04 07:12:51 -07:00
Zooko O'Whielacronx
442008a690
unicode: always decode json manifest as utf-8 then encode for stdout
...
pyflakes pointed out that the exception handler fallback called an un-imported function, showing that the fallback wasn't being exercised.
I'm not 100% sure that this patch is right and would appreciate François or someone reviewing it.
2010-06-04 01:48:40 -07:00
Zooko O'Whielacronx
952f3bf3ef
fix flakes
2010-06-04 00:58:45 -07:00
Francois Deppierraz
0eb4d83937
test_stringutils.py: Skip test test_listdir_unicode_good if filesystem supports only ASCII filenames
2010-05-21 09:08:39 -07:00
Francois Deppierraz
01da7f06e6
test_stringutils.py: Skip test_listdir_unicode on mocked platform which cannot store non-ASCII filenames
2010-05-21 09:05:59 -07:00
Francois Deppierraz
58e9df9f5a
test_stringutils.py: Add a test class for OpenBSD 4.1 with LANG=C
2010-05-21 07:00:53 -07:00
Francois Deppierraz
1aeff62161
test_stringutils.py: Mock the open() call in test_open_unicode
...
This test ensure that open(a_unicode_string) is used on Unicode platforms
(Windows or MacOS X) and that open(a_correctly_encoded_bytestring) on other
platforms such as Unix.
2010-05-21 06:58:17 -07:00
Francois Deppierraz
eecaaca6b7
test_stringutils.py: Fix a trivial Python 2.4 syntax incompatibility
2010-05-21 02:33:45 -07:00
Francois Deppierraz
6c70fb7b3c
test_cli.py: Fix tests when sys.stdout.encoding=None and refactor this code into functions
2010-05-20 01:44:47 -07:00