Jean-Paul Calderone
15601a37e9
it's a set apparently
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
436b91b463
oops @log_call is not Deferred friendly
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
92cf9b8232
done with those!
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
9efed05571
partial conversion of complex _process
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
e820698194
Simplified _perform_scan conversion
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
ef69bb83f4
another improvement to scan_listing
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
17597e53c9
improvement to scan_listing
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
7790820efd
convert start_downloading
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
3b38a228b0
Relax restriction on mtime
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
91d86363ec
Convert the rest of _write_downloaded_file
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
529389a48c
Convert _write_downloaded_file
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
ad5cfd0e45
convert a couple rename helpers
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
03f480e5be
convert _real_notify
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
c3e50a4536
convert _notify
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
bfb039c6c6
convert _scan
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
5410acd745
use this helper
...
it might even let us refactor someday
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
999b8bdbd7
convert _full_scan
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
d7bb97ae05
Factor out repeated queue processor identification
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
f553469944
convert add_pending
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
2761d38ce2
convert start_uploading
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
28a4a61dab
convert stop(_monitoring)
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
44a8ac8161
convert start_monitoring
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
c88b66fb05
remove unused helper
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
5dd225de07
Add the necessary Eliot logging flush/assertion
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
491e0ecde3
Convert another _process and some helpers
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
83c4056a5d
Convert _process_deque
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
2b9e6784ab
news fragment
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
d52e9ccc6f
unused attribute
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
587f50882e
Convert _begin_processing
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
9207e07407
There need be no "debug log".
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
ca82d4f83d
Merge remote-tracking branch 'origin/master' into 2972.magic-folder-eliot-logs
2019-02-26 13:33:39 -05:00
Jean-Paul Calderone
8e0e136c98
Remove the attempt at grouping the subcommands.
...
The change to Twisted has made it very difficult to control the order of
subcommands in the output.
2019-02-25 13:59:35 -05:00
Jean-Paul Calderone
7fb695f956
Add user-facing help about destinations
2019-02-25 13:34:02 -05:00
Jean-Paul Calderone
1cf4fd46ed
class docstring
2019-02-25 13:15:09 -05:00
Jean-Paul Calderone
67ca5c4b4c
Give the top-level command --eliot-destination
2019-02-25 13:12:03 -05:00
Jean-Paul Calderone
4f238d0f64
Clarify possible usage here
2019-02-25 13:11:52 -05:00
Jean-Paul Calderone
f20184ce95
Declare our new dependencies
2019-02-25 11:55:47 -05:00
Jean-Paul Calderone
abae1be9c6
Add helpers for configuring and using Eliot logging
2019-02-25 11:52:50 -05:00
Jean-Paul Calderone
f90a137552
Basic housekeeping previously missed
2019-02-25 08:57:38 -05:00
Jean-Paul Calderone
89e59dde05
Revert _perform_scan to inlineCallbacks style
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
0a9a962614
inline_callbacks moved
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
121fdc141b
Slightly improved API documentation
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
7ed9b0a02e
document this TestCase thing
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
4f796312a5
Switch tests over to Eliot-friendly version of inlineCallbacks
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
42c1d3939f
_begin_processing cleanups
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
7d2827b93d
Better docs for QueueMixin.stop
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
049a535048
reduce repetition
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
a2b4455229
try to reduce the size of the diff relative to master
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
7a9f52d2e5
make sure shutdown failures go somewhere good
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
ebd017cf2b
Clean up action relationship where it's easy to do so
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
88eb368db1
Further Eliotification
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
f1a7dcf309
A fair bit more Eliot conversion
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
9966cb26d2
Basic _process logging
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
7e89776349
Convert various logging to use Eliot
...
This unfortunately also involves refactoring some inlineCallbacks-using code
to not use inlineCallbacks.
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
e226956d14
Some testing for Eliot message validity
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
3020fb979d
Hoist some of this to a shared module
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
dd02a23cad
A few more debug prints - for now
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
6ca328ba94
Fix comparison of NummedObj against non-NummedObj
...
Previously this would explode with AttributeError.
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
714a7de84a
Associate an Eliot action with magicfolder database updates
2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
19f06809e2
That was all nonsense. Throw it out.
2019-02-22 09:11:44 -05:00
Jean-Paul Calderone
e55ee7d044
Move generator context state to a generator context manager
2019-02-22 08:40:16 -05:00
Jean-Paul Calderone
d902f7567f
Add a test for nested decorated generators
2019-02-22 08:39:38 -05:00
Jean-Paul Calderone
66d4a9b4a1
Depend on Eliot
2019-02-21 13:19:57 -05:00
Jean-Paul Calderone
cd3207e543
test that close works. it does.
2019-02-21 13:11:44 -05:00
Jean-Paul Calderone
05807ace40
Split the implementation helpers out of the test suite
2019-02-21 12:54:10 -05:00
Jean-Paul Calderone
609af9ce18
unused import
2019-02-21 12:42:57 -05:00
Jean-Paul Calderone
15ae31bf23
A stab at Eliot support for inlineCallbacks
2019-02-21 12:42:52 -05:00
Jean-Paul Calderone
9ad8e21530
An Eliot-adjacent testing helper
2019-02-21 12:42:46 -05:00
Jean-Paul Calderone
c764214d0e
A note about this queue flushing.
2019-01-31 09:07:31 -05:00
Jean-Paul Calderone
f61b51619d
Improve the failure mode for this test.
...
Make it show stderr if there is any and stdout if the expected content is missing.
2019-01-31 08:16:57 -05:00
Jean-Paul Calderone
89bb68254b
Speed up MagicFolder service shutdown
...
Also work-around a tricky, mysterious failure in the test suite by explicitly
flushing the eventual call queue. I don't understand where the call that is
landing there comes from or why some other part of the code isn't properly
waiting on it.
2019-01-31 08:16:57 -05:00
Jean-Paul Calderone
2b475777d9
Return the result of the base stopService
...
It is a Deferred that indicates when things have actually stopped. Failing to
return it means callers will think everything stopped synchronously. This is
certainly not the case.
2019-01-31 08:16:57 -05:00
Jean-Paul Calderone
0f6009b97e
Fix the option setup for the webopen command.
2019-01-30 19:32:56 -05:00
Jean-Paul Calderone
b54a6e811b
Return the Deferred to make the test valid
2019-01-30 19:24:28 -05:00
Jean-Paul Calderone
f0734284e0
whitespace
2019-01-30 19:24:20 -05:00
Jean-Paul Calderone
2531c19efd
Merge pull request #537 from tahoe-lafs/2959.travis-trusty-tor
...
Move integration tests from TravisCI to CircleCI
Fixes: ticket:2959
2019-01-24 20:47:24 -05:00
Jean-Paul Calderone
7e9e447d5b
Disable Twisted's Docker check wrt inotify support
...
It breaks our container-based CI, which is perfectly happy to give us inotify
functionality, as is Docker in general as long as you don't use overlayfs.
2019-01-24 14:00:50 -05:00
Jean-Paul Calderone
dcb4a218b1
This nearby code is also dead.
2019-01-24 09:55:40 -05:00
Jean-Paul Calderone
252f9eb23a
This code has pyflakes warnings *and* is dead.
2019-01-24 09:53:49 -05:00
Jean-Paul Calderone
e36c850da4
== instead of is for string comparison
2019-01-24 09:53:02 -05:00
Jean-Paul Calderone
5ed375b145
Add more complexity to the package sanity checking
...
Support comma-separated lists of extras
2019-01-23 14:58:44 -05:00
Jean-Paul Calderone
4166551afd
Bump dependency to Twisted 16.6 and add conch extra
...
This automatically brings in the bcrypt dependency coming along with a
forthcoming Twisted release.
2019-01-23 14:02:15 -05:00
meejah
768eceacf2
unused var
2018-09-11 11:38:56 -06:00
meejah
1ad2174df9
windows yaml.safe_load returns None on unreadable files..
2018-09-11 11:14:41 -06:00
meejah
7d34f8f1a1
test case when safe_load fails
2018-09-10 21:58:28 -06:00
meejah
419dea7b3a
different import style for multi-imports from allmydata.node
2018-09-10 21:58:28 -06:00
meejah
3d35723a59
windows yamlutil.safe_load returns None when files are unreadable
2018-09-10 21:58:28 -06:00
meejah
72f17a3834
better cleanup
2018-09-10 21:58:28 -06:00
meejah
8a6a477ef7
don't depend on .called and .result (use Deferred callbacks properly)
2018-09-10 21:58:28 -06:00
meejah
054ed30757
better docstrings
2018-09-10 21:58:28 -06:00
meejah
87e0ce801a
proper assert
2018-09-10 21:58:28 -06:00
meejah
3cc64649c0
add a pointer to relevant ticket
2018-09-10 21:58:28 -06:00
meejah
d0141b2f95
better docstring from exarkun
2018-09-10 21:58:28 -06:00
meejah
edb581b434
better docstring from exarkun
2018-09-10 21:58:28 -06:00
meejah
507c2db649
better utest docstring, cleanup
2018-09-10 21:58:28 -06:00
meejah
376a1dcbd5
turn XXX into a ticket
2018-09-10 21:58:28 -06:00
meejah
8b5e988755
use docstring to mark method as async
2018-09-10 21:58:28 -06:00
meejah
2b5d3be3c8
convert XXX comment to ticket
2018-09-10 21:58:28 -06:00
meejah
7de94f623c
clarify Introducer imports
2018-09-10 21:58:28 -06:00
meejah
9a8ef9512e
clarify comments
2018-09-10 21:58:28 -06:00
meejah
f488b79c71
self._portnumfile -> config.portnum_fname
2018-09-10 21:58:28 -06:00
meejah
692128ad1d
better defaults handling
2018-09-10 21:58:28 -06:00
meejah
2e2bdf1ea1
test for EnvironmentError that's not ENOENT
2018-09-10 21:58:28 -06:00
meejah
ab812ca75f
fix utests for Deferred/Failure-returning methods
2018-09-10 21:58:28 -06:00
meejah
f6b62ca192
import
2018-09-10 21:58:28 -06:00
meejah
a344bb24dc
immutable default
2018-09-10 21:58:27 -06:00
meejah
dee8b72206
dead code
2018-09-10 21:58:27 -06:00
meejah
9aae4bd459
only handle ENOENT
2018-09-10 21:58:27 -06:00
meejah
a5287add80
clarify comments
2018-09-10 21:58:27 -06:00
meejah
efce7b1f6a
use Failure for all errors from async methods
2018-09-10 21:58:27 -06:00
meejah
676a9efc23
docstring
2018-09-10 21:58:27 -06:00
meejah
714b0887dc
more docstrings
2018-09-10 21:58:27 -06:00
meejah
2d55b61dd2
fixups after rebase
2018-09-10 21:58:27 -06:00
meejah
c22d7c632e
docstring improvements
2018-09-10 21:58:27 -06:00
meejah
3974af6660
redundant imports
2018-09-10 21:58:27 -06:00
meejah
7632504373
create_client is async
2018-09-10 21:58:27 -06:00
meejah
14a66a54f0
flake8
2018-09-10 21:58:27 -06:00
meejah
0cfbdeb634
dead code
2018-09-10 21:58:27 -06:00
meejah
767f4ddd5d
reorder args to match other method
2018-09-10 21:58:27 -06:00
meejah
045af64c2b
dead code
2018-09-10 21:58:27 -06:00
meejah
06de4c88c4
codecleanup (incorrect merge?)
2018-09-10 21:58:27 -06:00
meejah
edc50f655b
get rid of is_tub_listening
2018-09-10 21:58:27 -06:00
meejah
a82aa4ba2c
code cleanup, docs
2018-09-10 21:58:27 -06:00
meejah
955d7abfa3
move validation code to parser-helper
2018-09-10 21:58:27 -06:00
meejah
2517535d2b
test for 'listen on port 0'
2018-09-10 21:58:27 -06:00
meejah
9e34d15b90
simplify _tub_portlocation helper
2018-09-10 21:58:27 -06:00
meejah
053b494054
comment
2018-09-10 21:58:27 -06:00
meejah
e74d2a7d01
get rid of redundant 'introducer_clients' var
2018-09-10 21:58:27 -06:00
meejah
c84e50baf0
post-rebase fixup: _client_factory and docs
2018-09-10 21:58:27 -06:00
meejah
c7b47f44d2
flake8
2018-09-10 21:58:27 -06:00
meejah
17fa32633c
post-rebase fixups; needs review
2018-09-10 21:58:27 -06:00
meejah
23d304814f
not required for tests
2018-09-10 21:58:27 -06:00
meejah
283be23e3a
basedir fixup, more tests
2018-09-10 21:58:27 -06:00
meejah
a628411988
basedir fixup
2018-09-10 21:58:27 -06:00
meejah
c2d1cf4400
correct service-parent in tests
2018-09-10 21:58:27 -06:00
meejah
136495e405
basedir fixup
2018-09-10 21:58:27 -06:00
meejah
2d044e1324
remove unused method
2018-09-10 21:58:27 -06:00
meejah
bb332fecf7
basedir fixup
2018-09-10 21:58:27 -06:00
meejah
548d9cbbcc
basedir fixup
2018-09-10 21:58:27 -06:00
meejah
5d6a76ffee
proper daemonize error-handling
2018-09-10 21:58:27 -06:00
meejah
08e0c3b7e2
get rid of 'add_service' (just an alias to setServiceParent anyway)
2018-09-10 21:58:27 -06:00
meejah
ea99915af6
basedir/config fixup
2018-09-10 21:58:27 -06:00
meejah
7685fb34cd
pull 'basedir' entirely into _Config
...
Put all config-related methods into _Config; change
code to ask config for paths instead of using basedir;
add some better docstrings
2018-09-10 21:58:27 -06:00
meejah
f80e61fef6
put setServiceParent calls in create_*
2018-09-10 21:58:27 -06:00
meejah
26007f363b
pull 'StorageFarmBroker' out of __init__
...
This means also pulling out introducer-clients and some
related utility methods
2018-09-10 21:58:27 -06:00
meejah
42c39d435a
imports
2018-09-10 21:58:27 -06:00
meejah
465bfb8053
cleanup
2018-09-10 21:58:27 -06:00
meejah
48f0df627e
cleanup
2018-09-10 21:58:27 -06:00
meejah
739aaa3ef9
put create() methods in i2p_, tor_provider
...
Also Provider -> _Provider, improve docs and update tests
2018-09-10 21:58:27 -06:00
meejah
903d4afaa4
handle None for providers
2018-09-10 21:58:27 -06:00
meejah
793827f8a6
put providers back in service tree
2018-09-10 21:58:27 -06:00
meejah
e7a8d39fbc
split client, introducer READMEs
2018-09-10 21:58:27 -06:00
meejah
c2946cc2e3
remove unused code
2018-09-10 21:58:27 -06:00
meejah
f0c3db0e5a
pyflakes
2018-09-10 21:58:27 -06:00
meejah
0ff21ea7d5
all tests pass. wooo
2018-09-10 21:58:27 -06:00
meejah
c7515b5d8b
more working test
2018-09-10 21:58:27 -06:00
meejah
92ca04d629
fix more tests
2018-09-10 21:58:27 -06:00
meejah
0e51bb183e
fix more things
2018-09-10 21:58:27 -06:00
meejah
279bd814fc
remember info for init_client_storage_broker temporarily
2018-09-10 21:58:27 -06:00
meejah
3c4e065e63
more tests work
2018-09-10 21:58:27 -06:00
meejah
d1307cf05c
fix one more
2018-09-10 21:58:27 -06:00
meejah
43d857a0bd
more refactor + fix some node tests
2018-09-10 21:58:27 -06:00
meejah
71484b4a12
upgrade create_introducer
2018-09-10 21:58:27 -06:00
meejah
4f2d45626c
no more reveal_ip
2018-09-10 21:58:27 -06:00
meejah
d8b432700e
more tests work
2018-09-10 21:58:27 -06:00
meejah
3d5f8becb5
more tests work
2018-09-10 21:58:27 -06:00
meejah
d1a83e9be0
more tests work
2018-09-10 21:58:27 -06:00
meejah
329ef1256a
refactor create_client to be async (works to run, some unit-test fails still)
2018-09-10 21:58:27 -06:00
meejah
41cfd8fb16
change imports; introducer client.read_config
2018-09-10 21:58:27 -06:00
meejah
eab56276e5
introduce create_node_dir
2018-09-10 21:58:27 -06:00
meejah
0f22b9bad0
fixups after rebase
2018-08-25 02:23:58 -06:00
meejah
65ebde6f9d
fix incorrect rebase resolutions
2018-08-25 02:12:02 -06:00
meejah
91517bbad0
unused import
2018-08-25 02:12:02 -06:00
meejah
cce4a92900
fix path-creation cases after merge
2018-08-25 02:12:02 -06:00
meejah
dab291c72f
docstring
2018-08-25 02:12:02 -06:00
meejah
74b560c3c2
failUnless -> assert
2018-08-25 02:10:44 -06:00
meejah
7db48e3677
skip using decorator
2018-08-25 02:10:44 -06:00
meejah
89872b832c
docstring, naming improvements
2018-08-25 02:10:44 -06:00
meejah
38dac24b2b
use skipIf decorator, not inline logic
2018-08-25 02:10:44 -06:00
meejah
d478cf3831
add some docstrings, fix comments
2018-08-25 02:10:44 -06:00
meejah
536ccf8b6d
better 'file not found' handling
2018-08-25 02:10:44 -06:00
meejah
c0772cdd5f
improve docstring
2018-08-25 02:10:44 -06:00
meejah
37d4b59a39
modern syntax
2018-08-25 02:10:44 -06:00
meejah
1b30e9edfc
consistently use 'config' not 'self.config' in __init__
2018-08-25 02:10:44 -06:00
meejah
a432fc35da
docstring improvements
2018-08-25 02:10:44 -06:00
meejah
629185d98f
skip some tests on windows (permissions)
2018-08-25 02:10:44 -06:00
meejah
5000787c18
flake8
2018-08-25 02:10:44 -06:00
meejah
27ea11d164
dead code
2018-08-25 02:10:44 -06:00
meejah
abd7b638b8
basic stfpd setup test
2018-08-25 02:10:44 -06:00
meejah
dd2209a96c
tests to cover config changes
2018-08-25 02:10:44 -06:00
meejah
6c388b9d58
test for authtoken API
2018-08-25 02:10:44 -06:00
meejah
ab947704f0
replace PortLocations tests
...
The old tests were hard to read due to all the "if"
statements; these might be slightly more verbose but
also more explicit
2018-08-25 02:10:44 -06:00
meejah
4d7f8ec9dd
keep clientdir for now, improve how we access it
2018-08-25 02:10:44 -06:00
meejah
2937c729e3
change imports; introducer client.read_config
2018-08-25 02:10:44 -06:00
meejah
4c7f60f42a
test fixups from review
2018-08-25 02:10:44 -06:00
meejah
107ddcd1ba
get rid of get_clientdir
2018-08-25 02:10:44 -06:00
meejah
d544284f92
introduce create_node_dir
2018-08-25 02:10:44 -06:00
meejah
c93ee4f867
document a test-method
2018-08-25 02:10:44 -06:00
meejah
f7f3c54f93
dead code
2018-08-25 02:10:44 -06:00
meejah
86a9ce5793
create _NoNetworkClient using same code as _Client
2018-08-25 02:10:44 -06:00
meejah
22e2d0a417
re-expand path because user input
2018-08-25 02:10:44 -06:00
meejah
f68a0ab74c
remove debug
2018-08-25 02:10:44 -06:00
meejah
79756c088e
split client, introducer READMEs
2018-08-25 02:10:44 -06:00
meejah
990f23d5c7
_Config does this for us
2018-08-25 02:10:44 -06:00
meejah
38063037c1
add documentation
2018-08-25 02:10:44 -06:00
meejah
f37ab3b12d
get_app_version -> global function
2018-08-25 02:10:44 -06:00
meejah
35810a5692
pull 'basedir' entirely into _Config
...
Put all config-related methods into _Config; change
code to ask config for paths instead of using basedir;
add some better docstrings
2018-08-25 02:10:44 -06:00
Jean-Paul Calderone
292448a423
Merge pull request #518 from LeastAuthority/test_upload_and_download_random_key
...
Avoid EADDRINUSE from allmydata.test.test_system.SystemTest
Fixes ticket:2933
2018-08-22 09:31:48 -04:00
Jean-Paul Calderone
74420fb764
Try to preserve the working directory
2018-08-17 15:53:59 -06:00
meejah
1af71e6ba3
confirm .stop() called
2018-08-17 15:53:59 -06:00
meejah
03712c9cca
add docstrings
2018-08-17 15:53:59 -06:00
meejah
0607b7331f
fix tests by overriding/patching reactor.stop in tests
2018-08-17 15:53:59 -06:00
meejah
423208f391
add a 'tahoe run' unit-test for config errors
2018-08-17 15:53:59 -06:00
meejah
e9879abc93
add unit-tests
2018-08-17 15:53:59 -06:00
meejah
bd63a4354b
fixup for errors
2018-08-17 15:53:59 -06:00
meejah
4aec12a92f
whitespace on long lines
2018-08-17 15:53:59 -06:00
meejah
8e0e96da01
improve user experience on config errors
2018-08-17 15:53:59 -06:00
meejah
3723945296
Actually validate configs when loading them
...
An indenting problem meant the validators weren't being
called, which revealed some follow-on errors.
2018-08-17 15:53:59 -06:00
Jean-Paul Calderone
f9d527f418
Avoid the chance of providing a real endpoint parser
...
This endpoint is test-grade.
2018-08-08 12:01:20 -04:00
Jean-Paul Calderone
0ca6b8ed52
An adopted-port-endpoint-based fix for the collision
2018-08-07 15:26:35 -04:00
Jean-Paul Calderone
9ec8ec814a
Some comment improvements
2018-08-07 15:26:19 -04:00
Jean-Paul Calderone
b1520c8d71
Some improved logging while waiting for connections
2018-08-07 15:22:19 -04:00
Jean-Paul Calderone
d8dfcc9de5
There are no such subclasses.
2018-08-07 14:05:16 -04:00
Jean-Paul Calderone
f576575f11
system test setup broken into manageable pieces
...
`set_up_nodes` and `_set_up_nodes_2` now a little easier to understand
2018-08-07 14:04:20 -04:00
Jean-Paul Calderone
284ea9c3b9
not gonna import from Crypto at all
2018-07-19 14:48:12 -04:00
Jean-Paul Calderone
33485c184a
No longer needed for SFTP.
...
Twisted's SFTP is now based on ``cryptography``.
2018-07-19 14:44:18 -04:00
Jean-Paul Calderone
814203961d
Merge pull request #504 from exarkun/2929.circleci
...
Configure CircleCI for much of the Linux testing
2018-07-03 12:32:51 -04:00
Jean-Paul Calderone
53adf5083d
Shorten the long path used by the long path test
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
b31b78e6cf
Merge pull request #501 from exarkun/1595.address-already-in-use-test_introducer-create_tub
...
Fix "Address already in use" errors from test_introducer on POSIX
2018-06-08 16:21:34 -04:00
Jean-Paul Calderone
1911b35499
Get the fcntl import up to the top as well
2018-06-08 13:15:19 -04:00
Jean-Paul Calderone
97e0ad627b
explain the buried reactor import, just in case
2018-06-08 13:13:26 -04:00
Jean-Paul Calderone
2c38b148bf
Move the safe interface import to the top
2018-06-08 13:12:46 -04:00
Jean-Paul Calderone
d25693145c
Factor a little more duplication out of the tests
2018-06-08 11:21:25 -04:00
Jean-Paul Calderone
c491b1a7d4
bring some imports up to the top
2018-06-08 10:36:45 -04:00
Jean-Paul Calderone
28a2e6e557
Merge pull request #502 from exarkun/2926.cli-status-exceptions
...
Fix several cases where `tahoe status` rendering raises an unhandled exception.
Closes ticket:2926
Some possible operation states were not accounted for.
2018-05-28 08:38:42 -04:00
Jean-Paul Calderone
bfedd79633
Merge pull request #487 from tahoe-lafs/1455.x-frame-options.2
...
Set `X-Frame-Options: DENY` for all web status pages.
This prevents attackers from loading web status pages in a frame as a way to trick users into interactions which attackers are restricted from performing unaided.
2018-05-28 08:12:35 -04:00
Jean-Paul Calderone
20084506b3
Handle all the status cases
2018-05-23 13:59:42 -04:00
Jean-Paul Calderone
318eea05e3
docs
2018-05-23 10:59:42 -04:00
Jean-Paul Calderone
8a5e2edb91
Also CLOEXEC the descriptor
...
This avoids leaking it into any child processes that the tests might launch.
2018-05-23 10:56:26 -04:00
Jean-Paul Calderone
be6e458770
Ensure the fd will be valid by the time we listen
2018-05-23 10:50:54 -04:00
Jean-Paul Calderone
62836b6858
Switch another test to the adoption method
2018-05-23 10:47:41 -04:00
Jean-Paul Calderone
711d63960d
Switch another test to the adoption method
2018-05-23 10:47:30 -04:00
Jean-Paul Calderone
277cd16594
Avoid race-prone allocate_tcp_port for some Tubs when possible
...
create_tub on POSIX can pre-allocate a port safely instead.
2018-05-23 10:45:15 -04:00
meejah
c219102afc
Merge pull request #492 from exarkun/2879.magic-folder-create-and-umask.0
...
Create the magic-folder local directory if necessary
2018-05-07 09:49:39 -06:00
meejah
cec3746682
explicit umask and skip part of test on windows
2018-05-01 16:45:50 -06:00
meejah
c9e00a988a
Merge pull request #475 from meejah/2909.backup-behavior.0
...
#2909 fix .backup file behavior and (some of) the incorrect .conflict cases (#2911 )
2018-05-01 15:52:10 -06:00
Jean-Paul Calderone
e0c73e0ea1
Merge remote-tracking branch 'origin/master' into 1455.x-frame-options.2
2018-05-01 14:39:48 -04:00
Jean-Paul Calderone
4cc1c2171d
Merge remote-tracking branch 'origin/master' into 2879.magic-folder-create-and-umask.0
2018-05-01 14:24:54 -04:00
meejah
458889682c
Merge pull request #493 from exarkun/lgtm-configuration
...
Add recommended lgtm configuration.
2018-05-01 11:09:29 -06:00
meejah
5bbf0abe9d
Merge pull request #490 from exarkun/pending-deprecations
...
Avoid pending Twisted deprecations
2018-05-01 11:07:09 -06:00
meejah
5414930184
not sure why we assert this
2018-05-01 10:52:12 -06:00
meejah
b54d5d88f8
unused var
2018-04-30 14:55:52 -06:00
meejah
158498f61a
'positive' version of assert
2018-04-30 14:55:52 -06:00
meejah
6352db9c01
comment + logging cleanup
2018-04-30 14:55:51 -06:00
meejah
c71116d45e
keep original exception behavior
2018-04-30 14:55:51 -06:00
meejah
b53ea0a11c
redundant
2018-04-30 14:55:51 -06:00
meejah
04734dcfcb
redundant test code
2018-04-30 14:55:51 -06:00
meejah
c2aec93209
fix windows move_into_place logic
2018-04-30 14:55:51 -06:00
meejah
fbc142d346
re-jig 'the logic'
2018-04-30 14:55:51 -06:00
meejah
6d5355fda3
moar unit-tests
2018-04-30 14:55:51 -06:00
meejah
1f529567ca
fix commented code
2018-04-30 14:55:51 -06:00
meejah
7c71194eea
utest fixup
2018-04-30 14:55:51 -06:00
meejah
5f417c5179
objects_conflicted fixup
2018-04-30 14:55:51 -06:00
meejah
99c3d7f23f
this shouldn't have gotten removed
2018-04-30 14:55:51 -06:00
meejah
927ee097e5
remove prints
2018-04-30 14:55:51 -06:00
meejah
65ceda3a32
fix conflict behavior
2018-04-30 14:55:51 -06:00
meejah
7975efbe8d
whitespace and a comment
2018-04-30 14:55:51 -06:00
meejah
cc93a12a85
Test fixups
2018-04-30 14:55:51 -06:00
meejah
435b30c7aa
use local last_uploaded_uri, last class of conflict from spec
2018-04-30 14:55:51 -06:00
meejah
affb80e39e
test fixups
2018-04-30 14:55:51 -06:00
meejah
47b1787633
stop writing .backup files for normal overwrites
2018-04-30 14:55:51 -06:00
meejah
a1db8f4708
some logging fixups and notes on backup behavior
2018-04-30 14:55:51 -06:00
Jean-Paul Calderone
b623a4a199
Remove dead Tor TCP control port setup code.
...
If someone wants this I bet they can figure it out.
2018-04-26 15:32:27 -04:00
Jean-Paul Calderone
87daa3ec5a
Remove dead debug logging code.
2018-04-26 15:32:02 -04:00
Jean-Paul Calderone
3705264740
Use preferred exception raising syntax.
...
Also, make the `WindowsError` class "reachable".
2018-04-26 15:27:00 -04:00
Jean-Paul Calderone
b6d33c92ff
Remove disabled ad hoc debug logging
2018-04-26 15:26:17 -04:00
Jean-Paul Calderone
8d4d000132
Fix pre-release matching regex character class
...
Previously matched any single character from `abc|r` (with duplicate
specification of `c`). Now matches any single character from `abc` or
the two character sequence `rc`.
I guess this was the intent, anyway.
2018-04-26 15:20:27 -04:00
Jean-Paul Calderone
6b16afaa2e
Avoid using the list comprehension loop variable
...
It works fine but it relies on leaky scopes.
2018-04-26 15:16:00 -04:00
Jean-Paul Calderone
9f8c90393f
Remove dead synopsis
definition
2018-04-26 15:10:02 -04:00
Jean-Paul Calderone
7609fd1861
Remove impossible third codepath
2018-04-26 15:09:01 -04:00
Jean-Paul Calderone
64243527eb
Remove the strange option to not use flog
2018-04-26 15:08:14 -04:00
Jean-Paul Calderone
6d9f0c59b7
Remove pointless conditional
2018-04-26 14:59:47 -04:00
Jean-Paul Calderone
da9d0ded94
Remove pointless conditional
2018-04-26 14:59:18 -04:00
Jean-Paul Calderone
a7218cb16f
Some nice documnetation and proper exception types
2018-04-23 18:46:12 -04:00
Jean-Paul Calderone
169ccbfbca
directory creation fixes
2018-04-23 18:46:07 -04:00
Jean-Paul Calderone
035dc6dc76
reduce fragility of tests .. maybe?
...
only trivially, at best, of course.
2018-04-23 11:41:36 -04:00
Jean-Paul Calderone
e1c469e3b6
make sure we pass the client node
2018-04-23 11:41:29 -04:00
Jean-Paul Calderone
cfa33332a5
Add missing information/import
2018-04-23 11:09:24 -04:00
Jean-Paul Calderone
8d104dab1c
Move the complicated MagicFolder constructor
...
All that complexity can be part of MagicFolder itself.
2018-04-23 10:59:33 -04:00
Jean-Paul Calderone
ac6269dd2d
Only read magic-folder config from config reader
...
Also, fix the umask feature which was completely broken previously due
to failure to parse the umask string into an integer.
2018-04-23 10:41:48 -04:00
Jean-Paul Calderone
0bdabacce3
document the node_directory parameter
2018-04-23 10:41:48 -04:00
Jean-Paul Calderone
8eb83bbfb9
avoid about-to-be-deprecated getClientIP if we can
...
Use the replacement, getClientAddress. But have a fallback to
getClientIP to keep supporting older versions of Twisted.
2018-04-20 16:03:19 -04:00
Jean-Paul Calderone
edf3c7aac7
reformat to fit within 80 cols
2018-04-20 15:59:35 -04:00
Jean-Paul Calderone
06a1ada624
Remove double-encoding of magic-folder params
2018-04-20 14:43:34 -04:00
Jean-Paul Calderone
234db487cd
Add a unit test for X-Frame-Options being set
2018-04-13 12:56:50 -04:00
Jean-Paul Calderone
7bc207cdcb
Shift this out of the way
2018-04-13 12:52:12 -04:00
Jean-Paul Calderone
36c7756890
Reference X-Frame-Options documentation
2018-04-13 12:48:03 -04:00
Daira Hopwood
718fa4493c
Add "X-Frame-Options: DENY" header to all pages. refs #1455
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-13 12:43:18 -04:00
Jean-Paul Calderone
dc4d30f7c2
Switch to TAHOE_LAFS prefix
2018-04-03 14:07:12 -04:00
Jean-Paul Calderone
6bca749592
this is still needed
2018-04-03 13:59:35 -04:00
Jean-Paul Calderone
f6f617c33c
Teach it about a CI profile
...
This profile does not have time-based warnings.
2018-04-03 13:15:54 -04:00
Jean-Paul Calderone
da2e4a80cd
Get rid of these individual suppressions
2018-04-03 13:15:54 -04:00
Chris Wood
c850638537
Fix PyInstaller builds
...
This commit contains a few small changes to fix PyInstaller frozen
builds (which were recently broken in a few ways by changes introduced
with `tahoe invite`, `tahoe daemonize`, and the addition of "setuptools
>= 28.8.0" to setup_requires) and removes a couple of hacks that are no
longer necessary to create working frozen tahoe executables with
PyInstaller.
2018-03-29 14:11:15 -04:00
Brian Warner
ce473bd5f4
cli.test_alias: move skip-unless utility to common_util.py
...
next to the other skip-unless function
2018-03-28 15:30:24 -07:00
Brian Warner
0616aa7de7
test_absolute_storage_dir: don't use uSNOWMAN on non-unicode platforms
...
Exercising the unicode possibilities are nice, but not critical to this test,
so let's just avoid the non-ascii characters when the filesystem encoding
can't handle them
2018-03-28 15:17:23 -07:00
Brian Warner
0964bc0d05
test_alias: skip unicode tests on non-unicode platform
...
This was flunking the OS-X buildbot, which runs in an environment without
$LANG being set, and thus encodingutil deduces (correctly but unhelpfully)
that we're limited to ASCII. Other tests detect this situation and raise
SkipTest, so let's do that here too.
2018-03-27 15:56:10 -07:00
Jean-Paul Calderone
6ec5005ccd
Merge pull request #474 from exarkun/1587.basic-progress-report
...
Basic progress reporting for `tahoe backup`
Fixes ticket:1587
2018-03-27 07:47:01 -04:00
Jean-Paul Calderone
fa567958c3
2 blank between top-level; 1 blank between methods
...
Just like PEP8 says
2018-03-26 20:15:45 -04:00
Jean-Paul Calderone
bafe043b73
Explicit new-style class
2018-03-26 20:12:47 -04:00
Jean-Paul Calderone
b78c6cc5ed
Implement the progress reporting
2018-03-26 11:34:31 -04:00
Jean-Paul Calderone
6690aa7337
restore, with tests, checked counters
2018-03-26 10:27:19 -04:00
Jean-Paul Calderone
c55d2823ae
first pass refactoring
...
now collect backup work up-front instead of mixed with processing
2018-03-26 10:02:42 -04:00
Brian Warner
38da8f471c
test_web: appease pyflakes
2018-03-21 00:22:31 -07:00
Brian Warner
e6ddd03338
test_web: remove noisy print statement
2018-03-21 00:13:52 -07:00
meejah
544f87a318
need setuptools for PEP440 identifiers
...
(needs fixup, probably, just depending on latest setuptools)
2018-03-20 17:45:08 -07:00
Jean-Paul Calderone
3bb4c979c8
Revert "Merge PR470"
...
This reverts commit 7960a1b2a4
, reversing
changes made to 3fa74d860f
.
2018-03-20 18:10:44 -04:00
meejah
4eac3caa77
need setuptools for PEP440 identifiers
...
(needs fixup, probably, just depending on latest setuptools)
2018-03-20 14:15:33 -07:00
meejah
643e2f9107
fix windows, maybe
2018-03-20 11:40:50 -06:00
meejah
fcfcbaa6a2
fix behavior of fake fileops test-helper
2018-03-20 11:40:49 -06:00
meejah
2fd2a9b2c7
nicer assert
2018-03-20 11:40:49 -06:00
meejah
9df84e71fe
use better error-testing idiom and don't tweak internal method
2018-03-20 11:40:49 -06:00
meejah
57cc877c57
add some context to logging
2018-03-20 11:40:49 -06:00
meejah
ee0f548aa7
describe test
2018-03-20 11:40:49 -06:00
meejah
a06fe375ec
describe test
2018-03-20 11:40:49 -06:00
meejah
c7cbb4a6b3
better var names
2018-03-20 11:40:49 -06:00
meejah
30811d8818
typo
2018-03-20 11:40:49 -06:00
meejah
9032539860
flake8; naming
2018-03-20 11:40:49 -06:00
meejah
797932244d
log failure properly, add test
2018-03-20 11:40:49 -06:00
meejah
39080852cc
ensure 'in progress' items return status
2018-03-20 11:40:49 -06:00
meejah
1f495ec41f
cover uploads and downloads in tests
2018-03-20 11:40:49 -06:00
meejah
dbc9f7e06c
remove code that sets item size (from review)
2018-03-20 11:40:49 -06:00
meejah
75e97e6c6d
use QueuedItem directly instead of FakeStatusItem
2018-03-20 11:40:49 -06:00
meejah
1b16e1f792
Some documentation for QueueMixin
2018-03-20 11:40:49 -06:00
meejah
472d6ba78b
cover some of get_status
2018-03-20 11:40:49 -06:00
meejah
bfabfeba64
add 'size' to tests, print unicode
2018-03-20 11:40:49 -06:00
meejah
0ebb587666
report download sizes in magic-folder status
2018-03-20 11:40:49 -06:00
meejah
0431be14fa
log inotify callback errors
2018-03-20 11:40:49 -06:00
meejah
42766da553
add a 'size' to pending uploads
2018-03-20 11:40:49 -06:00
meejah
8ac63cf5bd
only keep history for items that are processed
2018-03-20 11:40:49 -06:00
meejah
bcdd15394b
ensure there are no gaps in magic-folder status
2018-03-20 11:40:49 -06:00
Jean-Paul Calderone
371965f7d4
Specify the new optFlag correctly
2018-03-19 15:12:59 -04:00
Jean-Paul Calderone
1f92879788
improve test coverage
2018-03-19 14:21:28 -04:00
Ruben Pollan
136de7d7f7
Add storage_dir config field
...
On the [storage] section of the tahoe.cfg now there is a field
'storage_dir' where the path to the storage folder can be configured.
2018-03-19 11:20:04 -04:00
meejah
a1cb401f06
Merge pull request #452 from meejah/list-aliases-json.1
...
Add --json option to 'tahoe list aliases'
2018-03-13 17:05:20 -06:00
tpltnt
a41d827f79
_None() as new style class
2018-03-02 17:17:30 +01:00
tpltnt
1967cd7357
removed unnecessary after return
2018-03-02 16:45:11 +01:00
tpltnt
1a14d5218b
added some docstrings
2018-03-02 16:45:11 +01:00
tpltnt
3f99eceb36
minor whitespace fixes
2018-03-02 16:45:11 +01:00
tpltnt
0461cc0148
only one module import per line
2018-03-02 16:45:11 +01:00
tpltnt
f7bbc9dffe
made mkstemp() call compatible with mktemp()
2018-03-02 16:45:11 +01:00
tpltnt
710ba84a02
switched to secure mkstemp()
2018-02-27 18:35:08 +01:00
meejah
0b25cad71e
documentation fixups from daira's review
2018-02-06 15:28:02 -07:00
meejah
1171bf13af
ticket #2882 : preserve user mtime
2018-02-06 15:27:56 -07:00
meejah
68783d8b8a
directories get +x, files do not
2018-01-09 01:26:37 -07:00
meejah
3466088717
add --json option for 'tahoe list-aliases'
...
some new tests to cover previously-uncovered code that changed
2018-01-05 18:07:52 -07:00
meejah
187eb562f2
Merge pull request #447 from tpltnt/ticket-1307
...
Ticket 1307
2018-01-04 17:50:21 -07:00
tpltnt
95acd57fdd
removed exact version info from header
2018-01-04 22:29:57 +01:00
tpltnt
48b442f8c1
mentioned ctx
2018-01-04 22:29:57 +01:00
tpltnt
6d4f4f4a65
adjusted doc string
2018-01-04 22:29:57 +01:00
tpltnt
68b1271190
added docstring
2018-01-04 22:29:57 +01:00
tpltnt
005bcf5012
added code as described in ticket 1307
2018-01-04 22:29:57 +01:00
tpltnt
c5e8d83b73
removed old test/trial helper module
2018-01-04 22:09:52 +01:00
tpltnt
c7cf7c3956
make twisted >= 16.4.0 a requirement
2018-01-04 22:09:52 +01:00
meejah
c351a1d327
Merge pull request #453 from meejah/magic-folder-test-time
...
use '5 years ago' instead of absolute timestamp
2018-01-03 15:41:32 -07:00
meejah
5f00842532
use exarkun's suggestion from review
2018-01-03 14:07:38 -07:00
Brian Warner
5e62118e14
hush somewhat-real problems found by static analysis
...
These would have caused problems if a certain unlikely code path was taken:
mostly error-handling pathways.
2017-12-31 00:23:43 +01:00
Brian Warner
da4e7dcfbe
hush a bunch of not-really-problems caught by the lgtm.com static analyzer
...
This is all minor stuff: unreachable debug code (that should be commented-out
instead of in an 'if False:' block), unnecessary 'pass' and 'global'
statements, redundantly-initialized variables. No behavior changes. Nothing
here was actually broken, it just looked suspicious to the static analysis at
https://lgtm.com/projects/g/tahoe-lafs/tahoe-lafs/alerts/?mode=list .
2017-12-31 00:19:41 +01:00
meejah
e5d6272b62
use '5 years ago' instead of absolute timestamp
2017-12-20 13:17:54 -07:00
meejah
6c0c90829f
cheezy test for more coverage
2017-12-05 12:02:16 -07:00
meejah
87ad3cb8e9
fix 2880
...
- remember upload URI so we don't re-download
- account for empty files in "should_download"
- fix 'conflicted' asserts in tests
2017-12-05 12:02:16 -07:00
meejah
672475cb2b
Multiple magic-folders
...
This moves all magic-folder configs to a single YAML
file. We load legacy config fine and don't mess with
legacy config unless you use a magic-folder command that
changes the config.
Increase test coverage
2017-12-05 10:34:48 -07:00
meejah
1b6f477549
Pull "config" handling out of Node and hide node-derivitives
...
This includes:
- refactor to create_client and _Client
- refactor to _IntroducerNode and create_introducer
2017-11-20 12:57:20 -07:00
meejah
50f8397c99
Merge branch 'invalid-pidfile' into delete-invalid-pidfile--lpirl
...
Conflicts:
src/allmydata/scripts/startstop_node.py
src/allmydata/test/cli/test_cli.py
2017-11-08 14:49:29 -07:00
Brian Warner
a1711088ed
test_i2p_provider: exercise escaping of apiEndpoint attribute
2017-11-03 00:24:46 -07:00
Brian Warner
1f1afe65ec
tor_provider.get_listener(): return a real endpoint, instead of a descriptor
...
get_listener() is allowed to return either, and the Tor provider is currently
simple enough to not really need more than a basic descriptor, but have it
return a full Endpoint for use as an example of what I2P can do later.
2017-11-03 00:24:46 -07:00
Brian Warner
d713e0e57d
address review feedback: docstrings, better test class name
2017-11-03 00:24:46 -07:00
Brian Warner
097abb42fa
tahoe.cfg: add tub.port=listen:i2p (and/or listen:tor)
...
This delegates the construction of the server Endpoint object to the i2p/tor
Provider, which can use the i2p/tor section of the config file to add options
which would be awkward to express as text in an endpoint descriptor string.
refs ticket:2889 (but note this merely makes room for a function to be
written that can process I2CP options, it does not actually handle such
options, so it does not close this ticket yet)
2017-11-03 00:24:46 -07:00
Brian Warner
d1fd43aa4f
tor/i2p: rename create_onion/create_dest to create_config
2017-11-03 00:24:46 -07:00
meejah
fd90346c88
Wait up to 60s for node start; improve messaging; look for errors
2017-09-20 00:55:19 -06:00
meejah
263a3f43c1
stop chdir
2017-09-19 10:39:19 -06:00
meejah
9375056b61
Split up startstop_node and add 'tahoe daemonize'
...
This sets the stage for further changes to the startup
process so that "async things" are done before we create
the Client instance while still reporting early failures
to the shell where "tahoe start" is running
Also adds a bunch of test-coverage for the things that got
moved around, even though they didn't have coverage before
2017-09-19 10:39:19 -06:00
Lukas Pirl
89bacbb70a
Merge branch 'master' into invalid-pidfile
2017-08-24 18:40:00 +02:00
Lukas Pirl
46305c74e1
added test for (ignoring an) invalid PID file when starting a node
2017-08-24 17:56:57 +02:00
Jean-Paul Calderone
86f79e8111
Add a test for the non-numeric case
2017-08-24 16:46:46 +02:00
Jean-Paul Calderone
354567cb85
Add a test for the non-numeric case
2017-08-24 10:34:58 -04:00
Lukas Pirl
1bf032959f
delete invalid PID file on `tahoe (re)start
`
2017-08-24 15:22:25 +02:00
Lukas Pirl
dd9b951c4b
fix crash when stopping/restarting with an invalid pidfile
...
in node directory
2017-08-23 20:23:15 +02:00
Brian Warner
8dd0a5f772
dictutil: remove unused move, subtract, del_if_present
2017-08-12 21:48:05 -07:00
Brian Warner
61b85dbf78
dictutil: remove unused ValueOrderedDict
2017-08-12 21:34:24 -07:00
Brian Warner
4f493b1a03
remove unused UtilDict
2017-08-12 21:31:47 -07:00
Brian Warner
a76d9e084f
dictutil: remove unused NumDict
2017-08-12 21:21:04 -07:00
Brian Warner
3afa38adb4
NummedObj: stop using dictutil.NumDict
2017-08-12 21:02:32 -07:00
Brian Warner
3f2f7dfb05
dictutil: fix bug in str(ValueOrderedDict), and improve test coverage
...
It looks like str() was meant to truncate the dict, but a missing i+=1 meant
that it never actually did. I also changed the format to include a clear
"..." in case we truncate it, to avoid confusion with a non-truncated dict of
the same size.
This also improves test coverage in subtract() and
NumDict.item_with_largest_value().
refs ticket:2891
2017-08-10 10:27:02 -07:00
Brian Warner
95ac5494ff
test_backupdb: tolerate newer sqlite-3.20.0 error messages
2017-08-10 10:21:39 -07:00
meejah
798bf57e28
Add 'tahoe invite' and 'tahoe create-node --join' commands
...
This opens a wormhole and sends appropriate JSON down
it to a tahoe-gui using a wormhole server running on
tahoe-lafs.org
The other end uses the 'tahoe create-node' command (with
new --join option) to read the configuration JSON from
a 'tahoe invite' command
2017-08-08 18:27:06 -06:00
meejah
e2a5751d02
at least use random port
2017-08-08 10:42:11 -06:00
Brian Warner
a4be2dce71
avoid variable coverage by using a defaultdict
...
refs ticket:2891
2017-07-27 18:19:57 -07:00
Brian Warner
05317d4d12
test_web: replace all shouldHTTPError with assertHTTPError
...
and update to inlineCallbacks while we're in there
2017-07-27 16:31:44 -07:00
Brian Warner
2687ee90c5
test_web: remove last traces of deprecated client.getPage
2017-07-27 16:31:44 -07:00
Brian Warner
965e974ce8
test_web: fix POST(url,body) calls that should have been POST2()
...
and remove the followRedirect= argument from POST
2017-07-27 16:31:44 -07:00
Brian Warner
0deb903888
test_web: rewrite all POST(followRedirect=True) calls with do_http
...
Since POST() is about to lose followRedirect=True
2017-07-27 16:31:44 -07:00
Brian Warner
3f03367d2f
test_web: remove all other uses of shouldRedirect
2017-07-27 16:31:44 -07:00
Brian Warner
76063b1c12
test_web: replace some instances of shouldRedirect with shouldRedirectTo
2017-07-27 16:31:44 -07:00
Brian Warner
6be91e369c
test_web: replace shouldReplace2 with shouldReplaceTo
...
This removes many uses of self.POST (since shouldReplaceTo does its own
HTTP), which will make it easier to remove client.getPage from POST.
2017-07-27 16:31:44 -07:00
Brian Warner
4745239c2c
test_web: use inlineCallbacks in many functions
...
specifically everywhere we use self.shouldRedirect2
2017-07-27 16:31:44 -07:00
Brian Warner
73d09082d7
test_web.web.Web.POST: split out build_form() helper function
2017-07-27 16:31:44 -07:00
Brian Warner
202a9714c4
test_web test_bad_method: remove a client.getPage
...
Add WebErrorMixin.assertHTTPError, to replace (getPage + shouldHTTPError)
2017-07-27 16:31:44 -07:00
Brian Warner
bee05e883c
test_web: remove HTTPClientGETFactory
...
This also changes the tests to handle the new API: URL can be unicode, and
the returned Headers object is not a dictionary.
2017-07-27 16:31:44 -07:00
Brian Warner
5a895b5fb6
GridTestMixin.GET: use treq instead of HTTPClientGETFactory
2017-07-27 16:31:44 -07:00
Brian Warner
3311f9520d
test.cli.test_status: replace getPage with treq
2017-07-27 16:31:44 -07:00
Brian Warner
bd1e4507ee
remove unused HTTPClientHEADFactory
2017-07-27 16:31:44 -07:00
Jean-Paul Calderone
e32f581d07
Get rid of the reliance on rref
...
It provides information more correctly obtained from
get_connection_status().
2017-07-27 16:31:41 -04:00
Jean-Paul Calderone
1f16a173f0
flatten the result structure
...
flat is better than nested
2017-07-27 15:32:47 -04:00
Jean-Paul Calderone
7027547ecc
fix buggy test; restructure data
...
scared about duplicate nodeids in the data getting lost, switch to a list
2017-07-27 15:26:30 -04:00
Jean-Paul Calderone
754304e4d5
Switch Root over to MultiFormatPage
2017-07-27 15:26:30 -04:00
Jean-Paul Calderone
f518c2a521
Switch over to stdlib json
2017-07-27 15:26:30 -04:00
Jean-Paul Calderone
e339130e63
Just make an assertion against the full value
2017-07-27 15:26:30 -04:00
Jean-Paul Calderone
e3e49632a5
use preferred spelling for new assertions
2017-07-27 15:26:30 -04:00
David Stainton
cd97f8519b
web test: get_version should use a version string
2017-07-27 15:26:29 -04:00
David Stainton
923363c0d6
web test: test for server key in json welcome
2017-07-27 15:26:29 -04:00
David Stainton
16e56611f3
web: set json welcome content type to json utf8
2017-07-27 15:26:29 -04:00
David Stainton
ecb6651926
Add basic unit test for json welcome page
2017-07-27 15:26:29 -04:00
David Stainton
876a7b6602
Fix indention
2017-07-27 15:26:29 -04:00
David Stainton
ad66caeaff
Make sure server.rref is not None
2017-07-27 15:26:29 -04:00
David Stainton
180975b0af
Make sure version is not None
2017-07-27 15:26:29 -04:00
David Stainton
b2d4374976
Add more server info to welcome json page
2017-07-27 15:26:29 -04:00
David Stainton
32110bfc68
Add storage and introducer summaries to json welcome output
2017-07-27 15:26:29 -04:00
David Stainton
822ed78b13
Add rough sketch of json welcome page
2017-07-27 15:26:29 -04:00
Jean-Paul Calderone
1e885fa40b
Convert storage.py over to MultiFormatPage
2017-07-27 13:57:02 -04:00
Jean-Paul Calderone
6e4c4b7abc
Convert status.py over to MultiFormatPage
2017-07-27 13:57:02 -04:00
Jean-Paul Calderone
5a30bd6169
Convert introweb.py over to MultiFormatPage
2017-07-27 13:57:02 -04:00
Jean-Paul Calderone
0581ce7270
Convert directory.py over to MultiFormatPage
2017-07-27 13:57:02 -04:00
Jean-Paul Calderone
7c8c63a01f
a helper for the ?t=json resources
2017-07-27 13:57:02 -04:00
Brian Warner
ad92b2b9b2
test_web: replace HEAD/PUT/DELETE with treq
2017-07-12 17:10:49 -07:00
Brian Warner
486fca0d5c
web.test_introducer: replace getPage with treq
2017-07-12 17:10:49 -07:00
Brian Warner
8be5072fca
test_system: replace getPage with treq
2017-07-12 17:10:49 -07:00
Brian Warner
2ec3791411
test_deepcheck: replace t.w.client.getPage with treq
2017-07-12 17:10:46 -07:00
Brian Warner
74e7ef4b98
test_happiness: limit string sizes to 30 chars
...
I think these are supposed to represent share ids or server ids, so we don't
need to exercise them being too huge.
2017-07-12 16:37:44 -07:00
Brian Warner
11c39325fb
test_happiness: suppress the hypothesis 'too_slow' check
...
I was seeing buildbot failures where the host machine was too busy, and
hypothesis was spooked into thinking that data generation was too slow.
2017-07-12 16:27:13 -07:00
meejah
0977e52cbf
Add a test for 'tahoe list-aliases --readonly-uri'
2017-06-06 18:03:05 +01:00
Daira Hopwood
d3acf82776
Rename FilesystemOptions to FileStoreOptions. refs #2345
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2017-06-06 11:20:49 +01:00
Daira Hopwood
2055a66cf2
Doc changes that require more careful review. refs #2345
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2017-06-06 11:20:49 +01:00
Daira Hopwood
4723af6e2f
LAFS now stands for "Least-Authority File Store" rather than "Least-Authority File System". refs #2345
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2017-06-06 11:20:49 +01:00
meejah
05f48c3601
Various cleanups, fixes and improvements
...
Squashed all commits that were meejah's between
30d68fb499f300a393fa0ced5980229f4bb6efda
and
33c268ed3a8c63a809f4403e307ecc13d848b1ab
On the branch meejah:1382.markberger-rewrite-rebase.6 as
per review
2017-06-05 16:31:41 -06:00
David Stainton
19c5bbb43b
Fix test test_lost_servers
...
Remove old hypothesis tests
Fix allmydata.test.cli.test_cli.Errors.test_get
this was broken due to differing share placements
whereas we need to allow this.
Fix test_5_overdue_immutable
This change makes the test not depend on the value
of PYTHONHASHSEED.
Revert "Fix test_5_overdue_immutable"
This reverts commit 5f3696d9a53e7df8781a2c463c7112282397cd69.
fix test to actually hang the first 5 *servers*
sort keys for stable output
use file-context-managers
remove probably-unneeded assert (that fails sometimes)
another non-deterministic test?
2017-06-05 16:26:46 -06:00
meejah
56f6dbd363
distribute only to read/write peers
...
correctly calculate happiness
guard with except
fix tests, and happiness calculation
remove debug
fix placements to None
happiness calc shouldn't have to filter None
WIP fixing some tests etc
2017-06-05 16:26:46 -06:00
David Stainton
a611673934
Make a correction to a hypothesis test comment
...
Comment out all debug print statements
Add hypothesis tests for the old servers of happiness implementation
Attempt to speed up meejah's servers of happiness
WIP
Fix test_calc_happy
WIP
2017-06-05 16:26:46 -06:00
meejah
b6d9945b95
default answer for every share
...
refactor hypothesis to be 'pytest style' and add another one
get rid of 'shares->set(1 thing)' in generate_mappings return
Add a unittest hypothesis came up with
fix tests since we return peers, not sets-of-1-peer
add more debug
add a unit-test that's like test_problem_layout_ticket_1128
fix bug
add a note
fix utest
unit-test for bigger numbers
re-insert markberger code for testing
results of pairing with david
2017-06-05 16:26:46 -06:00
David Stainton
e68b331bb1
Add servers of happiness hypothesis testing
...
Fix happiness test var names
Remove unused imports
Get rid of trailing whitespace
2017-06-05 16:26:46 -06:00
meejah
ef17ef2c62
fix happiness calculation
...
unit-test for happiness calculation
unused function
put old servers_of_happiness() calculation back for now
test for calculate_happiness
remove some redundant functions
2017-06-05 16:26:46 -06:00