Commit Graph

400 Commits

Author SHA1 Message Date
Itamar Turner-Trauring d7018905b9 Switch away from using stdin, it's flaky on Windows. 2023-03-14 09:57:29 -04:00
Itamar Turner-Trauring db445af1c4 Separate flags for forcing foolscap between client and server. 2023-03-09 09:59:36 -05:00
Itamar Turner-Trauring 5dc108dfe8 Test large immutable upload and download. 2023-03-08 11:38:31 -05:00
Itamar Turner-Trauring c9d140b05d Merge remote-tracking branch 'origin/master' into 3957-mutable-over-http-speed 2023-02-21 09:38:36 -05:00
Itamar Turner-Trauring 31024ceb4c reconfigure() is only an issue if it changes something... 2023-02-20 12:44:03 -05:00
Itamar Turner-Trauring e3ad50a084 Just skip usage of reconfigure() on Windows. 2023-02-20 11:54:50 -05:00
Itamar Turner-Trauring 3bc3cf39d0 Test using an integration test. 2023-02-07 09:45:50 -05:00
Itamar Turner-Trauring ea052b3c80 Pass in missing argument. 2023-02-07 09:08:06 -05:00
Itamar Turner-Trauring f4255cdaa3 More accurate names. 2023-02-07 09:03:45 -05:00
Itamar Turner-Trauring b0f4e463eb Work with newer i2pd. 2023-02-06 17:48:32 -05:00
Itamar Turner-Trauring 921a2083dc Make sure (immutable) test vectors are run with the segment size that was used
to generate them.
2023-01-25 15:47:35 -05:00
Jean-Paul Calderone 58f20ff9c7 advertise all the names 2023-01-20 19:50:57 -05:00
Jean-Paul Calderone f4e3e08e38 re-generate with a case using an exact segment size multiple
all of the mutables totally change because we don't try to re-use existing rsa
keys (yet...?)
2023-01-20 16:27:13 -05:00
Jean-Paul Calderone ed7bb1b41f expose the persistence api 2023-01-20 16:27:05 -05:00
Jean-Paul Calderone 781f4486ac Get the segment size parameter right 2023-01-20 16:26:23 -05:00
Jean-Paul Calderone c46ab2d88b Hit a multiple of SEGMENT_SIZE on the nose 2023-01-20 15:20:02 -05:00
Jean-Paul Calderone 4664bcb321 These didn't end up being used 2023-01-20 15:15:44 -05:00
Jean-Paul Calderone 9581eeebe5 explain the repeated save_capabilities calls 2023-01-20 15:14:18 -05:00
Jean-Paul Calderone 129c6ec11a Factor more infrastructure code out of the test module
Test vector saving implementation can go near loading implementation.  Also we
can separate out some simple types from the more complex logic.  Initially
this was to resolve a circular dependency but that ended up being resolved
mostly by treatming SEGMENT_SIZE more like a parameter than a global.  Still,
smaller modules are okay...
2023-01-18 13:52:11 -05:00
Jean-Paul Calderone 4e2c685a12 Fix test_directory_deep_check by having it re-assert its preferred config
Previously the changes test_vectors.py made to Alice's configuration
invalidated test_directory_deep_check's assumptions.
2023-01-18 13:28:24 -05:00
Jean-Paul Calderone e53f68f4d7 Move parameter definitions to their own module, away from test implementation 2023-01-17 10:59:00 -05:00
Jean-Paul Calderone 290bb5297f lint 2023-01-17 10:19:37 -05:00
Jean-Paul Calderone 1d32326659 Simpler, more correct process lifecycle handling.
The previous version included a bogus hack where we just passed
`allow_missing=True` when finalization was requested of `_run_node`.  This was
clearly wrong since if the caller asked for finalization, it's a programming
error for it to already have been done.

Fortunately we have a perfectly good finalizer already, `TahoeProcess.kill`,
which we can use instead of trying to craft a finalizer out of the various
pieces that make up that value.

Also, nothing seems to use the `_protocol` attribute set by `got_proto` so
let's just drop that.
2023-01-17 10:06:14 -05:00
Jean-Paul Calderone eb630c391f "Parametrize" in a way that gives us better test names.
The old way just put sequence numbers into the name.  This way puts expected
capability strings in.
2023-01-17 10:03:54 -05:00
Jean-Paul Calderone f2989c0a4f Correct the ProcessExitedAlready exception handling
It's always okay to get ProcessExitedAlready from signalProcess.  It just
means we haven't handled the SIGCHLD yet.
2023-01-17 09:46:22 -05:00
Jean-Paul Calderone 5424aa9737 Only run the very slow new integration test in one CI job 2023-01-17 09:27:17 -05:00
Jean-Paul Calderone 3ab7fc3853 Be able to load the data 2023-01-17 08:45:38 -05:00
Jean-Paul Calderone d14ba09dbb Some flake fixes 2023-01-17 08:41:31 -05:00
Jean-Paul Calderone c28f10057b Move some more pieces into the subdirectory 2023-01-16 16:01:11 -05:00
Jean-Paul Calderone 4eec8113ee reproducible ssk vectors 2023-01-16 15:53:24 -05:00
Jean-Paul Calderone 1827834434 Re-generate vectors with a very small CHK 2023-01-13 21:14:37 -05:00
Jean-Paul Calderone 312513587f Switch to FilePath, regenerate w/o "max" 2023-01-12 17:27:37 -05:00
Jean-Paul Calderone ed74fdc746 write the data file more safely 2023-01-12 16:56:20 -05:00
Jean-Paul Calderone dd51c7a3f1 Handle an empty test vectors file 2023-01-12 15:19:01 -05:00
Jean-Paul Calderone fa55956d29 Always write an int to the test vectors file 2023-01-12 15:18:54 -05:00
Jean-Paul Calderone bbd3e74a5f Always place an int in the parameters total field 2023-01-12 15:17:08 -05:00
Jean-Paul Calderone c211731c5f Merge remote-tracking branch 'origin/master' into 3961.test-vectors 2023-01-10 09:57:48 -05:00
Jean-Paul Calderone fb70ba1867 Generate and consumer the new structure properly 2023-01-03 19:22:38 -05:00
Jean-Paul Calderone ca00adf2b4 regenerated test vectors with a more convenient format
It's more verbose but it's easier to load and interpret.
2023-01-03 18:50:07 -05:00
Jean-Paul Calderone 40eff1523e The retry logic was removed a few revisions ago
The uploads failed because of the zfec parameters, not because of unreliable
localhost networking that might go away when retried.
2023-01-02 16:23:06 -05:00
Jean-Paul Calderone 77e5357a04 note to self 2022-12-27 09:12:56 -05:00
Jean-Paul Calderone 3f8f715aa2 Be consistent between the test and the data source 2022-12-27 09:12:34 -05:00
Jean-Paul Calderone 13a9ed0202 clarify what reliability we hope for 2022-12-27 09:03:24 -05:00
Jean-Paul Calderone 6a1a2fb705 we support other capability types now 2022-12-27 09:03:01 -05:00
Jean-Paul Calderone e11b589eba typo 2022-12-27 09:02:43 -05:00
Jean-Paul Calderone aecaaa2426 in general, do not regenerate the test vectors 2022-12-27 09:01:33 -05:00
Jean-Paul Calderone 4a39c4b7ec Add SDMF and MDMF 2022-12-26 17:08:36 -05:00
Jean-Paul Calderone 39b3f19c0e Put the generator inputs into the output file
This should make it easier for other implementations to use the test data, I
think.

Also put a version in there so we can change inputs in the future but still
talk about results meaningfully.  And some other minor refactoring
2022-12-26 12:06:34 -05:00
Jean-Paul Calderone 5af6fc0f9d reconfigure() only needs to restart the node if something changed 2022-12-22 20:53:49 -05:00
Jean-Paul Calderone 8a42720301 Move some general utility functions into the util module 2022-12-22 17:02:42 -05:00
Jean-Paul Calderone 43388ee711 Comments and minor factoring improvements and such 2022-12-22 16:52:00 -05:00
Jean-Paul Calderone daad22d1b1 comments 2022-12-22 12:13:12 -05:00
Jean-Paul Calderone 97b397870b Generate a whole mess of vectors 2022-12-22 11:35:37 -05:00
Jean-Paul Calderone 1ae98c1830 Switch back to session scope for Alice 2022-12-22 11:05:07 -05:00
Jean-Paul Calderone aa58faddaf Pass the right number of args to reconfigure 2022-12-22 11:04:48 -05:00
Jean-Paul Calderone 49b513fefc Get basic generation working, apparently 2022-12-22 10:51:59 -05:00
Jean-Paul Calderone 29a5f7a076 start of a test vector thingy 2022-12-21 17:14:08 -05:00
Itamar Turner-Trauring 98e25507df A different approach to forcing foolscap in integration tests. 2022-12-12 10:43:36 -05:00
Itamar Turner-Trauring add510701c Run integration tests both with and without HTTP storage protocol. 2022-11-16 11:44:51 -05:00
Itamar Turner-Trauring ec15d58e10 Actually clean up the container. 2022-10-03 10:49:08 -04:00
Itamar Turner-Trauring a53420c193 Use known working version of i2pd. 2022-10-03 10:49:01 -04:00
meejah 8250c5fdd5 edna -> freya 2022-09-26 15:40:55 -06:00
meejah af227fb315 coverage for grid-manager tests 2022-09-26 00:02:40 -06:00
meejah 04b0c30c11 clean up comments 2022-09-25 14:08:05 -06:00
meejah 34dd39bfbf fix race with 'await_client_ready' instead 2022-08-13 11:51:01 -06:00
meejah 34641846ab Merge branch '2916.grid-manager-integration-tests.2' of https://github.com/tahoe-lafs/tahoe-lafs into 2916.grid-manager-integration-tests.2 2022-08-13 11:46:11 -06:00
meejah 06a5176626 happy-path grid-manager test 2022-08-13 11:46:02 -06:00
meejah c4a32b65ff actually wait 2022-08-13 11:45:51 -06:00
Itamar Turner-Trauring 298600969a Fix typo. 2022-08-12 10:06:35 -04:00
Itamar Turner-Trauring 0c6881e615 Fix race condition. 2022-08-12 09:59:43 -04:00
Itamar Turner-Trauring 9ff863e6cd Fix lint. 2022-08-12 09:54:12 -04:00
meejah 1676e9e7c5 unused 2022-08-12 01:27:01 -06:00
Itamar Turner-Trauring 02cb4105b3 A lot closer to passing grid manager integration tests. 2022-07-29 09:43:37 -04:00
Itamar Turner-Trauring 106b67db55 It's bytes now. 2022-07-27 12:23:40 -04:00
Itamar Turner-Trauring 2999ca4579 It's bytes now. 2022-07-27 12:23:34 -04:00
Itamar Turner-Trauring 671e829f4e We need to pass in the furl here. 2022-07-27 12:23:20 -04:00
Itamar Turner-Trauring 6d833607db Merge remote-tracking branch 'meejah/2916.grid-manager-integration-tests.1' into 2916.grid-manager-integration-tests.2 2022-07-27 11:59:23 -04:00
Itamar Turner-Trauring 02bbce8111 Get rid of spurious sleep. 2022-05-18 13:44:18 -04:00
Itamar Turner-Trauring 90a6cf18ac Just use system Tor, for more stability. 2022-05-18 13:20:44 -04:00
Itamar Turner-Trauring 9bef8f4abd This appears to be the alternative to latest version :( 2022-05-18 13:07:40 -04:00
Itamar Turner-Trauring 33c43cb2b3 Try a different variant. 2022-05-18 13:01:57 -04:00
Itamar Turner-Trauring 32a11662a2 Install a specific version. 2022-05-18 12:56:03 -04:00
Itamar Turner-Trauring 69f1244c5a Fix keyword argument name. 2022-05-13 13:42:10 -04:00
Itamar Turner-Trauring f752f547ba More servers is fine. 2022-05-13 13:33:09 -04:00
Itamar Turner-Trauring 757b4492d7 A more semantically correct fix. 2022-05-13 13:29:08 -04:00
Itamar Turner-Trauring 20b021809c Fix(?) the intermittently failing test. 2022-05-13 12:59:04 -04:00
Itamar Turner-Trauring 3255f93a5c Try newer version of Chutney. 2022-02-15 10:47:22 -05:00
Jean-Paul Calderone a71b1d31bf Merge remote-tracking branch 'upstream/master' 2021-11-04 10:02:54 -04:00
Jean-Paul Calderone b3d1acd14a try skipping Tor integration tests on Python 2 2021-11-03 09:55:16 -04:00
Jean-Paul Calderone 5b9997f388 update the integration tests to reflect removal of sftp password auth 2021-10-26 07:16:24 -04:00
Itamar Turner-Trauring 83cc42a7c3 Choose node names that won't conflict. 2021-07-30 11:27:41 -04:00
Itamar Turner-Trauring ce2363e3de More aggressively shut down i2pd and other i2p-related processes. 2021-07-30 11:09:39 -04:00
Itamar Turner-Trauring 97522641d6 Skip on Windows. 2021-07-30 11:06:28 -04:00
Itamar Turner-Trauring 982ac3cc33 Timeout if i2pd never starts. 2021-07-29 10:02:02 -04:00
Itamar Turner-Trauring 7396130c0a Integration test for I2P. 2021-07-27 14:20:01 -04:00
Itamar Turner-Trauring 6adda0c43a A second integration test for get/put. 2021-05-21 12:52:36 -04:00
Itamar Turner-Trauring 0d5344174f First integration test for put/get. 2021-05-21 11:57:32 -04:00
Itamar Turner-Trauring 22f8b9b428 Port to Python 3. 2021-05-12 09:25:52 -04:00
Itamar Turner-Trauring 079041fc1e Port to Python 3. 2021-05-12 09:22:33 -04:00
Itamar Turner-Trauring d517304a79 A lot closer to passing on Python 3. 2021-05-11 13:47:49 -04:00
Itamar Turner-Trauring fba23ef91c Port to Python 3. 2021-05-11 13:34:35 -04:00
Itamar Turner-Trauring 02897b9968 Fix typo. 2021-05-11 13:21:47 -04:00
Itamar Turner-Trauring 4043b2fe1f Tests pass on Python 3. 2021-05-11 13:18:03 -04:00
Itamar Turner-Trauring b8b00fa2da Port to Python 3. 2021-05-11 11:13:52 -04:00
Itamar Turner-Trauring 3f2571480c Some progress towards passing on Python 3. 2021-05-10 12:03:58 -04:00
Itamar Turner-Trauring 37bcaf6c88 Port initialization "tests". 2021-05-10 11:51:41 -04:00
Itamar Turner-Trauring 1c6a324a92 Fix a byte-to-string bug on Python 3. 2021-05-10 11:11:11 -04:00
Itamar Turner-Trauring 04fc8e7046 Port to Python 3. 2021-05-07 13:21:23 -04:00
Itamar Turner-Trauring b11cc9137b Integration test passed on Python 3. 2021-05-07 10:48:50 -04:00
Itamar Turner-Trauring 6df076dc10 Bit more progress. 2021-05-07 10:16:46 -04:00
Itamar Turner-Trauring 0d093c45df Test fails on Python 3, instead of spinning until timeout. 2021-05-07 10:06:12 -04:00
Itamar Turner-Trauring 4711c9fda3 More flake fixes. 2021-05-07 09:44:44 -04:00
Itamar Turner-Trauring fa46efdb3a Enable BytesWarnings in integration tests. 2021-04-16 11:58:37 -04:00
Itamar Turner-Trauring d25a0f1ce2 Increase timeout, just to be on the safe side. 2021-01-26 12:40:39 -05:00
Itamar Turner-Trauring 6c04ea7497 Explanatory comment is better now. 2021-01-26 10:14:14 -05:00
Itamar Turner-Trauring 4e89ab2e66 Context manager. 2021-01-26 10:06:57 -05:00
Itamar Turner-Trauring e7ab792c4c Explain why Paramiko. 2021-01-26 10:06:17 -05:00
Itamar Turner-Trauring 0424ba2a48 Fix indent. 2021-01-26 09:57:11 -05:00
Itamar Turner-Trauring 3b893a56f9 Just rely on global timeout. 2021-01-26 09:55:38 -05:00
Itamar Turner-Trauring 49300ccc4e Merge remote-tracking branch 'origin/master' into 3584.integration-tests-sftp 2021-01-26 09:53:51 -05:00
Itamar Turner-Trauring db22291660 Try to minimally workaround issues causing Windows to block when writing logs. 2021-01-21 13:54:22 -05:00
Itamar Turner-Trauring 7d2aa50894 when_done is bad, at least here. 2021-01-19 17:15:07 -05:00
Itamar Turner-Trauring afcae42fd6 Notice that there's an error on the server, rather than continuing silently. 2021-01-19 11:47:23 -05:00
Itamar Turner-Trauring 9ca17d780e Add some overall timeout, and timeout on specific test that seems to be the
issue somehow.
2021-01-13 10:21:06 -05:00
Itamar Turner-Trauring dfcd75f20d Infinite blocking is bad. 2021-01-12 13:58:28 -05:00
Itamar Turner-Trauring b74ec6919d Don't blow up just because irrelevant cleanup complains. 2021-01-12 13:24:42 -05:00
Itamar Turner-Trauring 3489e381be Get rid of finalizer which, I suspect, is keeping tests from shutting down on Windows. 2021-01-12 11:16:45 -05:00
Itamar Turner-Trauring 6107e52f96 Fix flake. 2021-01-11 15:26:38 -05:00
Itamar Turner-Trauring 6b2a999f8d Replace ckeygen with Paramiko library calls, since ckeygen doesn't work on Windows. 2021-01-11 14:02:45 -05:00
Itamar Turner-Trauring e986e86431 Test failure to auth. 2021-01-08 13:41:04 -05:00
Itamar Turner-Trauring 2589737e1e Public key auth test passes. 2021-01-08 13:33:22 -05:00
Itamar Turner-Trauring 3764e3b6b1 A (so far failing) test for SSH public key authentication. 2021-01-07 13:59:57 -05:00
Itamar Turner-Trauring b8879916b2 More SFTP integration tests. 2021-01-07 13:30:35 -05:00
Itamar Turner-Trauring a536a1a970 First passing end-to-end test of SFTP 2021-01-07 12:50:31 -05:00
Itamar Turner-Trauring 054af4b76e Sketch of where SFTP setup needs to happen. 2021-01-07 11:25:26 -05:00
Jean-Paul Calderone 7dda680cb2 Already using "tahoe run", de-emphasize "tahoe start" 2020-12-09 10:51:10 -05:00
Jean-Paul Calderone a0d46c6f09 Merge remote-tracking branch 'origin/master' into 3504.private-introducer-furl 2020-12-02 09:22:09 -05:00
Jean-Paul Calderone 8d6b49669b
Merge pull request #900 from tahoe-lafs/3511.config-set-config
Add `_Config.set_config`

Fixes: ticket:3511
2020-12-01 12:04:26 -05:00
Sajith Sasidharan ff49414ae9 Use Tor project's new repository signing key
Fix for https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3542
2020-11-30 17:20:50 -05:00
Jean-Paul Calderone 4c8fb8d93a unused import 2020-11-26 21:48:06 -05:00
Jean-Paul Calderone ae5351c204 Adapt test_tor to write_introducer change 2020-11-26 21:46:57 -05:00
Jean-Paul Calderone c82501e0dc Merge remote-tracking branch 'origin/master' into 3511.config-set-config 2020-11-26 11:01:18 -05:00
Jean-Paul Calderone a06caae667 Make all the config unicode 2020-11-20 16:04:29 -05:00
Jean-Paul Calderone 88ce823618 Update integration test caller of altered write_config 2020-11-18 18:26:52 -05:00
Jean-Paul Calderone 92206b907e write introducers.yaml instead of [client]introducer.furl 2020-11-16 15:02:29 -05:00
meejah 2e21286193 grid-manager tests 2020-11-16 01:19:01 -07:00
meejah 5a88dfd575 refactor integration tests and add some for grid-manager 2020-11-14 01:56:03 -07:00
Jean-Paul Calderone b9f7bcab4e flakes 2020-10-27 09:49:58 -04:00
Jean-Paul Calderone 7ca8ede88c Merge remote-tracking branch 'origin/master' into 3428.dont-return-deferred-to-twistedweb.2 2020-10-21 07:35:10 -04:00
Jean-Paul Calderone 9e26599a76 Fix the race condition 2020-10-16 13:44:37 -04:00