Commit Graph

4990 Commits

Author SHA1 Message Date
Jean-Paul Calderone
5273a930aa magic-folder doesn't use autoAdd=True 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
19400cc13d Neither of these events is used 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
e0c5905a7e Fix the move skips. And explain them. 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
2cfa88265b Turns out we don't care about IN_CREATE either 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
c57a70dbec remove skipped tests for behavior we obviously don't care about 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
df1c30d0d9 consistent whitespace 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
3a1dcb6bf6 macOS should now be considered a supported platform 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
720d2c67e6 Change to nicer used-names idiom
This avoids the pyflakes warning and tells users what they should use from the
module.
2019-03-14 11:23:16 -04:00
Chris Wood
c459b421b2 Try debugging Travis-CI... 2019-03-14 11:23:16 -04:00
Chris Wood
f5ca88c1f4 Fix broken conditional statement
Because sys.platform will never return "linux" on python2 -- only
"linux2" -- this statement will always be False. Instead, use the
startswith idiom to both provide the intended behavior and ensure future
compatibility with python3.
2019-03-14 11:23:16 -04:00
David Stainton
806215ad99 Fix inotify test skipping for windows 2019-03-14 11:23:16 -04:00
David Stainton
ed29b65325 Attempt to fix the inotify test skips 2019-03-14 11:23:16 -04:00
David Stainton
e0ab0db84a Attempt to fix test run on windows 2019-03-14 11:23:16 -04:00
David Stainton
beb84feb2d Fix broken test for inotify 2019-03-14 11:23:16 -04:00
David Stainton
26277c218c Skip inotify tests on windows 2019-03-14 11:23:16 -04:00
David Stainton
6cd2ab7965 Add watchdog inotify and tests 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
5004cdf7ea Remove the now *duplicate* notification. :/ 2019-03-14 10:16:19 -04:00
Jean-Paul Calderone
c507b78656 Always fire the hook in case someone is waiting. 2019-03-14 09:47:15 -04:00
Jean-Paul Calderone
a3fb74ae9c Time out the others, too. 2019-03-14 09:47:06 -04:00
Jean-Paul Calderone
b9be85bc8c Also time out the delete operation 2019-03-14 09:46:34 -04:00
Jean-Paul Calderone
156257bcd8 YES RECURSIVE PLEASE 2019-03-14 09:20:37 -04:00
Jean-Paul Calderone
101c3cf1c5 Put some Eliot messages in the info processing loop 2019-03-14 09:20:05 -04:00
Jean-Paul Calderone
8fa6c66c2f Convert this message to an action for success/failure reporting 2019-03-14 09:19:50 -04:00
Jean-Paul Calderone
5cf223645d Apply a reasonable timeout to this way.
The notification should be basically instantaneous...
2019-03-14 09:04:26 -04:00
Jean-Paul Calderone
b2facd133c Add a smarter FileOperationsHelper.write condition
Wait for the file we care about, not any random file.
2019-03-14 09:04:01 -04:00
Jean-Paul Calderone
0902277613 another primitive debug helper 2019-03-14 09:02:46 -04:00
Jean-Paul Calderone
17509e25d8 Add missing import. 2019-03-12 20:32:45 -04:00
Jean-Paul Calderone
831452f776 Add missing import 2019-03-12 20:32:15 -04:00
Jean-Paul Calderone
1c6725fcdd is there even the slightest chance you could possibly give me a break 2019-03-12 19:37:28 -04:00
Jean-Paul Calderone
9bac375c38 tell me what you're reading, too 2019-03-12 19:36:42 -04:00
Jean-Paul Calderone
aed5c4604e Log fs events on Windows 2019-03-12 19:36:10 -04:00
Jean-Paul Calderone
0e3c4d40b8 Add some Eliot events related to fs notifications 2019-03-12 19:35:36 -04:00
Jean-Paul Calderone
a9ec9c00bd Attempt to apply previous fix to second test
It worked there.  Therefore, it will work here!
2019-03-12 19:34:24 -04:00
Jean-Paul Calderone
aef9c53be8 Perhaps actually fix this test on Windows 2019-03-12 19:33:25 -04:00
Jean-Paul Calderone
5b49fd5813 Perhaps fix this test on Windows 2019-03-12 19:33:14 -04:00
Jean-Paul Calderone
a73f4d77b5
Merge pull request #568 from tahoe-lafs/2992.some-more-simple-magic-folder-tests
Add a couple simple Magic Folder unit  tests

Fixes: ticket:2992
2019-03-11 08:10:20 -04:00
Jean-Paul Calderone
bbb4671823
Merge pull request #567 from tahoe-lafs/2991.test_eliotutil-improvements
Quality of implementation improvements to test_eliotutil

Fixes: ticket:2991
2019-03-11 08:08:32 -04:00
Jean-Paul Calderone
5f2d74ef1b some simple tests 2019-03-08 14:15:20 -05:00
Jean-Paul Calderone
0831229953 Switch to testtools-style skip
Raising SkipTest just errors out the test.
2019-03-08 13:29:27 -05:00
Jean-Paul Calderone
9c3832a9e7 Skip this on Linux
testtools doesn't have this "todo" feature.  It has "expected failure" feature
but I'm not ready to try to use that.
2019-03-08 12:52:14 -05:00
Jean-Paul Calderone
fc0cfb1a59 testtools does not support the skip attribute 2019-03-08 12:52:08 -05:00
Jean-Paul Calderone
912152d6b2 just rely on the functionality from the base class 2019-03-08 12:17:31 -05:00
Jean-Paul Calderone
30d07d3fb5 explicitly publish these classes 2019-03-08 12:17:16 -05:00
Jean-Paul Calderone
9ad76688cc Clean up a couple logged errors.
I don't really understand them but I can flush them. :/
2019-03-08 11:54:42 -05:00
Jean-Paul Calderone
62531f020b Fix Eliot logging for tearDown 2019-03-08 11:54:42 -05:00
Jean-Paul Calderone
f0f478195d Fix Eliot logging for setUp 2019-03-08 11:54:42 -05:00
Jean-Paul Calderone
9abec67e43 Add Eliot logging for a couple setup helpers 2019-03-08 11:54:42 -05:00
Jean-Paul Calderone
a8d67a09a5 Add Eliot logging for cleanup action 2019-03-08 11:54:42 -05:00
Jean-Paul Calderone
eba642a9a1 Get rid of the duplicate base TestCase 2019-03-08 11:54:42 -05:00
Jean-Paul Calderone
64c5796a21
Merge pull request #565 from tahoe-lafs/2989.tempdir-cleanup
Add some tempfile cleanup to the test suite

Fixes: ticket:2989
2019-03-08 11:48:53 -05:00
Jean-Paul Calderone
859efdc589 there's another feature 2019-03-08 08:23:44 -05:00
Jean-Paul Calderone
c45b91e63c
Merge pull request #564 from tahoe-lafs/2988.mixin-supercalls
Fix some mixin supercalls

Fixes: ticket:2988
2019-03-08 07:47:36 -05:00
Jean-Paul Calderone
e4242704b1
Merge pull request #563 from tahoe-lafs/2987.log_call_deferred
Add Eliot logging helper

Fixes: ticket:2987
2019-03-08 07:46:36 -05:00
Jean-Paul Calderone
77b63e2855 This is unused! 2019-03-07 18:56:44 -05:00
Jean-Paul Calderone
1fdb13579a Oops. Testtools doesn't have these. 2019-03-07 18:56:37 -05:00
Jean-Paul Calderone
b2afe86b84 These tests leak resources. Clean them up. 2019-03-07 18:56:25 -05:00
Jean-Paul Calderone
925a3aed7b Add support for "broken" Twisted-style tests.
Some tests leak resources.  Clean up after them.
2019-03-07 18:55:52 -05:00
Jean-Paul Calderone
4de7077689 minimal docs 2019-03-07 18:54:15 -05:00
Jean-Paul Calderone
a1c8641359 these are always nice 2019-03-07 18:54:11 -05:00
Jean-Paul Calderone
19666c4c91 This class doesn't use poll. 2019-03-07 18:38:52 -05:00
Jean-Paul Calderone
1b6a5b60bf Switch from the decorator to EliotLoggedRunTest 2019-03-07 18:38:52 -05:00
Jean-Paul Calderone
51bee19b23 Add a testtools RunTest for Eliot integration 2019-03-07 18:38:52 -05:00
Jean-Paul Calderone
bbd3b200cb Use our base TestCase classes for these introducer tests
They gain free tempfile cleanup as a result.
2019-03-07 18:38:52 -05:00
Jean-Paul Calderone
565616dc75 Expand functionality of our base TestCase classes 2019-03-07 18:38:52 -05:00
Jean-Paul Calderone
8593bf1b1c Make helper method compatible with other unittests
The msg keyword argument is overly precise.  testtools reasonably calls it
`message` instead.
2019-03-07 18:38:52 -05:00
Jean-Paul Calderone
cb9ad3faa5 supercall tearDown *synchronously*
It doesn't like it if it only happens later, I guess.
2019-03-07 18:34:59 -05:00
Jean-Paul Calderone
afe97fdd8c Fix TestMixin 2019-03-07 18:25:31 -05:00
Jean-Paul Calderone
e26895b149 Fix SignalMixin 2019-03-07 18:25:16 -05:00
Jean-Paul Calderone
3814ccb947 Fix some setUp and tearDown 2019-03-07 14:04:17 -05:00
Jean-Paul Calderone
39694fcfde this include_args is basically useless 2019-03-07 13:30:54 -05:00
Jean-Paul Calderone
5de4f4094e let it not return a Deferred 2019-03-07 13:30:47 -05:00
Jean-Paul Calderone
9802ee4e19 Some basic tests 2019-03-07 13:30:29 -05:00
Jean-Paul Calderone
f4950cff46 Convert some code to show it off 2019-03-07 13:14:52 -05:00
Jean-Paul Calderone
7d6e36d9c7 A basic implementation of the idea. 2019-03-07 13:07:02 -05:00
Jean-Paul Calderone
bcfd2e8ea0 ADD_FILE Eliot action 2019-03-07 12:55:24 -05:00
Jean-Paul Calderone
2931721dfa
Merge pull request #560 from tahoe-lafs/2982.process-queue-logging-fix
Fix serialization errors in the Eliot logging for the queue state.

Fixes: ticket:2982
2019-03-04 12:37:24 -05:00
Jean-Paul Calderone
0be2cbccc9 We don't need quoting in Eliot structured logs.
Also quote_filepath seems to be doing the wrong thing but it's not entirely
clear how.
2019-03-04 11:00:08 -05:00
Jean-Paul Calderone
fa3429f1cc Serialize queue items using their path and type 2019-03-04 10:47:05 -05:00
Jean-Paul Calderone
26a7cc4f21 The log directory may not yet exist. 2019-03-04 10:08:53 -05:00
Jean-Paul Calderone
c6a2aa9fc7 There may not be any destinations. 2019-03-04 10:08:46 -05:00
Jean-Paul Calderone
7885ba6d72 write the logs 2019-03-04 09:44:00 -05:00
Jean-Paul Calderone
64ef320592
Merge pull request #557 from tahoe-lafs/2980.eliot-destination-escaping
Fix escaping in Eliot destinations

Fixes: ticket:2980
2019-02-27 10:16:46 -05:00
Jean-Paul Calderone
3b804d84bf Restore the log event that the integration tests depend on 2019-02-27 09:12:09 -05:00
Jean-Paul Calderone
fe60980ccc and switch away from Windows drive separator... 2019-02-27 06:42:57 -05:00
Jean-Paul Calderone
d203fde9f6 Change away from the Windows directory separator for the escape char 2019-02-26 19:06:35 -05:00
Jean-Paul Calderone
25a62001dd Improve the failure case user experience
And test it
2019-02-26 19:05:39 -05:00
Jean-Paul Calderone
46692b5835 remove the duplicate reporting of this failure
it bubbles out of _process and the caller logs it
2019-02-26 15:10:33 -05:00
Jean-Paul Calderone
f89fe3a5ad get this item status in the right action context 2019-02-26 15:10:24 -05:00
Jean-Paul Calderone
42d8e8dba4 overcome finger muscle memory 2019-02-26 15:09:55 -05:00
Jean-Paul Calderone
9351e47ae6 improve events reporting 2019-02-26 15:09:48 -05:00
Jean-Paul Calderone
ebeeba456f fix conflict logging 2019-02-26 14:38:24 -05:00
Jean-Paul Calderone
3fca501d45 unused 2019-02-26 14:38:00 -05:00
Jean-Paul Calderone
92449563d4 no callers remain 2019-02-26 14:26:45 -05:00
Jean-Paul Calderone
7d8d74425c Convert Downloader._process 2019-02-26 14:26:37 -05:00
Jean-Paul Calderone
248449fefa convert _filter_batch_to_deque 2019-02-26 14:26:00 -05:00
Jean-Paul Calderone
51e8edbad7 Don't just leave this Deferred dangling 2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
354dceda79 Get rid of last returnValue use
Supporting it with Eliot is challenging and we don't actually need it.
2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
1d97486c29 Flush the UnrecoverableFileError from perform-scan 2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
79bfb8acb6 can't log self! bluh 2019-02-26 13:45:39 -05:00
Jean-Paul Calderone
437084c300 pull this up and use it more 2019-02-26 13:45:39 -05:00
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