Commit Graph

332 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
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