75b3bf1097
Refuse to continue if the introducer fURL has no location hints.
2020-10-16 11:27:05 -04:00
7f5643a096
Add note on Tor integration test failures on Windows
2020-07-21 14:59:04 -04:00
74a77a48cc
Merge 'origin/master' into 3320.github-actions-windows-integration-tests
2020-07-21 13:50:47 -04:00
957e089715
Fix typo
2020-07-21 11:56:44 -04:00
e4e59c7aab
Use a Chutney revision that works with Python 2
2020-07-21 10:44:49 -04:00
9e82df4fa7
Use skipif decorator to omit Tor integration test setup on Windows
2020-07-19 09:19:19 -04:00
Sajith Sasidharan
aab598c2f5
Update integration test for status page
...
As a fallout of transition from nevow to twisted web, list of hrefs in
the parsed status page will be [u'/status/down-0', u'/status/up-0',
u'/'] (with an added '/status/' prefix) so we need to update our
assumptions.
See 5c886b1b2
for the change that necessitated this.
2020-07-17 15:19:06 -04:00
1f2ad6e634
the tests are unit-tests
2020-07-09 16:05:29 -04:00
6e2285ed2c
proof-of-concept verified-fake for testing
2020-07-09 16:05:29 -04:00
7d93ae9213
Skip Tor tests on Windows
2020-06-22 20:18:00 -04:00
25edce6257
Don't create the magic-folder directories for each node
2020-04-13 12:13:45 -04:00
1fba2d6ea2
Remove the magic-folder integration tests
2020-02-13 10:28:25 -05:00
3b2fcc0d28
remove some irrelevant comments
2019-08-24 14:36:14 -06:00
b6f0832945
clarify comment
2019-08-24 14:26:27 -06:00
0f6d6659e9
fewer magic numbers (and a fix to upload encoding)
2019-08-24 14:26:09 -06:00
20f907f5d3
get rid of potential infinite loops
2019-08-24 12:53:26 -06:00
e88d0c4b48
docstring
2019-08-24 12:40:24 -06:00
bdd3531555
remove debug
2019-08-24 12:37:49 -06:00
489f4677c0
split test, remove debug
2019-08-24 12:37:28 -06:00
1d095686e2
split a test
2019-08-24 12:20:41 -06:00
221b2ca87f
file-contents are unicode
2019-08-20 00:18:14 -06:00
31348fcce6
test more of deep-check page
2019-08-20 00:18:14 -06:00
5ca3a3a1ab
consistent naming for client fixtures / helpers
2019-08-20 00:18:14 -06:00
5e15470f55
test for mkdir-with-children
2019-08-20 00:18:14 -06:00
626f4b1b1a
use html5lib instead of microdom
2019-08-20 00:18:14 -06:00
9a4411d0a3
more web integration tests
2019-08-20 00:17:28 -06:00
adc6e39cde
introducer fixture returns a TahoeProcess
2019-08-20 00:17:28 -06:00
e1da080637
test the detailed json event rendering too
2019-08-20 00:17:28 -06:00
c60c758616
refine test for web status
2019-08-20 00:17:28 -06:00
73402605ed
missed merge conflict
2019-08-20 00:17:28 -06:00
68e408118b
WIP: test the status pages (download is weird still; requests problem?)
2019-08-20 00:17:28 -06:00
5db3909478
actual str-ports string
2019-08-20 00:17:28 -06:00
2a39ae91a6
parse capability properly instead of using string-compares
2019-08-20 00:17:28 -06:00
30100c8165
unicode
2019-08-20 00:17:28 -06:00
947c4c2691
Instead of abusing the process transport, introduce a new object
2019-08-20 00:17:28 -06:00
415ab63813
centralize 'wait for ready'
2019-08-20 00:17:28 -06:00
191087ef0a
cleanup
2019-08-20 00:17:28 -06:00
473a935aab
confirm /operations function
2019-08-20 00:17:28 -06:00
9d4ba78302
more web tests; directory creation etc
2019-08-20 00:17:28 -06:00
9aca93f6ff
clean up tests
2019-08-20 00:17:28 -06:00
4feba8d7f9
add a --helper command-line option, and a helper-using test
2019-08-20 00:17:28 -06:00
47e177be68
import
2019-08-20 00:17:28 -06:00
90bb4cf587
test index json
2019-08-20 00:17:28 -06:00
7244f3516d
Merge pull request #641 from meejah/integration-test-wait-for-ready
...
Better method of "waiting for readiness" in integration tests
2019-08-13 18:14:19 +00:00
f1be3e12df
get rid of sleep() we don't need
2019-08-13 10:41:14 -06:00
643b26978f
unused import
2019-08-13 10:37:02 -06:00
7225cfb18f
continue waiting for storage-servers under more error-conditions
2019-08-13 10:33:56 -06:00
4dc7f9637e
naming
2019-08-10 20:00:04 -06:00
926fa77ccb
naming for tor-introducer fixture
2019-08-10 13:53:09 -06:00
84a320db34
more client awaiting
2019-08-08 21:39:53 -06:00
68036dd773
save a second if we're already ready
2019-08-08 21:03:40 -06:00
ff23ad1b89
spelling
2019-08-08 21:03:40 -06:00
425d16e39d
get rid of time.sleep usage for 'readiness'
2019-08-08 21:03:39 -06:00
9b3d37e03e
ValueError not RuntimeError
2019-08-08 21:02:51 -06:00
e7c387a7fc
Instead of abusing the process transport, introduce a new object
2019-08-08 21:02:50 -06:00
731c58754f
re-word docs/args
2019-08-08 21:02:44 -06:00
d939ed5042
move response-check to function
2019-08-08 21:02:44 -06:00
7738f9f4e3
add test_put and refactor a little
2019-08-08 21:02:44 -06:00
eb0a582d1c
add a --helper command-line option to 'tahoe create-node'
2019-08-08 17:41:57 -06:00
1af4593e16
some simple web integration tests
2019-08-08 12:41:27 -06:00
ba5f44354b
Merge pull request #636 from meejah/integration-test-coverage
...
coverage for integration tests
2019-08-08 18:40:29 +00:00
0227b0945e
refactor; use _tahoe_runner_optional_coverage
2019-08-08 09:53:57 -06:00
97e130aa25
refactor; use _tahoe_runner_optional_coverage
2019-08-08 09:52:00 -06:00
025b89855f
refactor so we only check coverage in one place
2019-08-07 14:03:16 -06:00
8e4b05214a
add --coverage for integration tests
2019-08-06 16:47:43 -06:00
cd0ec043a8
Rely on the PATH now being passed down to find git
2019-08-02 16:50:21 -06:00
7f1673596f
Pass the whole parent environment down to the child
...
You never know what is in here that is totally essential to the operation of
some random thing. :(
2019-08-02 16:49:50 -06:00
988c3c6c16
Made sudo optional
2019-04-06 09:14:41 -04:00
1c5b284a3b
Attempt to support more distros
2019-04-04 15:50:24 -04:00
4f4ff3ff3c
Good practice for scripts
2019-04-04 13:52:09 -04:00
dbfcf8ae00
replaced StringIO imports with six.moves
2019-03-28 12:31:37 +01:00
670182c32a
Force a log event so the test completes.
2019-03-24 13:28:08 -04:00
f2ddb27ee0
trivial debug print
2019-03-22 14:16:50 -04:00
9de97dbdd5
Use guard and add some tests (integration failing)
2019-03-22 13:47:32 -04:00
8814261e18
Note a possible better solution and my own laziness
...
Actually, I'm sick, give me a break.
2019-03-18 19:20:12 -04:00
420000bfdb
Account for state from other tests
2019-03-18 19:19:57 -04:00
262485bd14
add a test for the conflict behavior
2019-03-18 16:35:42 -04:00
9bc00c4f76
add a couple more helpers
2019-03-18 16:35:35 -04:00
a44c5d0f11
respect the timeout
2019-03-18 16:35:31 -04:00
c42e5b10c6
Take the necessary fixtures
2019-03-07 12:38:38 -05:00
9e4fa3972e
Assert against the correct path
...
magic_folder contains the magic folder paths, of course.
The Tahoe-LAFS node directories are below the temp_dir.
2019-03-04 10:35:34 -05:00
1121cdd527
The logs should be written
2019-03-04 09:43:46 -05:00
432aaa2904
Do some Eliot logging in the integration test suite
2019-02-27 09:12:00 -05:00
29503c5648
Get all the nodes to turn on Eliot logging.
2019-02-27 09:11:47 -05:00
Jean-Paul Calderone
6f7e1250e8
Merge pull request #549 from tahoe-lafs/2971.super-argument-order
...
Fix super() argument order
Fixes: ticket:2971
2019-02-18 09:53:05 -05:00
Jean-Paul Calderone
4611e38b01
Merge pull request #548 from tahoe-lafs/2970.keep-tempdir
...
Document --keep-tempdir correctly
Fixes: ticket:2970
2019-02-18 09:51:42 -05:00
6d948b68cf
The fix
2019-02-15 13:58:02 -05:00
f5b7058efe
Allow an error exit status from flogtool dump
...
If the flog is truncated, parsing it will fail and flogtool will exit with an
error. There's no particular reason to allow this to fail a test.
2019-02-15 13:46:25 -05:00
9a77f1d2e9
This default is also not necessary.
2019-02-15 13:37:42 -05:00
7226fedd9c
Avoid having this line crammed onto the end of a line of pytest output
2019-02-15 13:37:27 -05:00
845e1e7a4a
There is no need for a default. There is always a value.
2019-02-15 13:24:23 -05:00
2c994b4417
Document the usage correctly
2019-02-15 13:24:17 -05:00
e511adbf63
Use the new cleanup helper for process cleanup
...
This removes some repetition of logic and switches to a more aggressive
cleanup approach.
2019-02-15 12:41:45 -05:00
cec31e6e5a
add a helper for vigorously cleaning up processes
2019-02-15 12:39:30 -05:00
19e03bbff0
pyflakes cleanups
2019-02-15 11:50:14 -05:00
f905d80760
switch to pytest_twisted
2019-02-05 11:03:35 -05:00
ab58c7a938
Link to the ticket for that
2019-01-24 15:57:35 -05:00
402b2c3bd3
If TorNet status fails, proceed anyway
2019-01-24 15:57:35 -05:00
bedf092ca3
Try to report the child process output
2019-01-24 15:57:35 -05:00
6e5ba22f59
do as I ask
2019-01-24 10:31:12 -05:00
a7bf6b2264
Switch to Tor repo for distro we're now using
2019-01-24 10:16:50 -05:00
83cd20d4da
updated Tor release key
2018-08-31 14:11:35 -06:00
0eb359b59b
below code expects >=1 error, but await_all implies 2
2018-05-07 19:38:19 -06:00
e719a3b4d6
more-robust tests
2018-04-30 14:55:52 -06:00
2cd74dbb3a
exception name wrong in super()
2018-04-30 14:55:52 -06:00
0d7a703756
simplify some utility code
2018-04-30 14:55:52 -06:00
c5a20127a1
unify tests
2018-04-30 14:55:52 -06:00
21c6825172
fix exception stuff
2018-04-30 14:55:52 -06:00
a0546fff7b
custom exception types
2018-04-30 14:55:51 -06:00
6352db9c01
comment + logging cleanup
2018-04-30 14:55:51 -06:00
c445ac4c14
use custom exception type
2018-04-30 14:55:51 -06:00
113f87a931
whitespace
2018-04-30 14:55:51 -06:00
7cb36bda7e
unused code
2018-04-30 14:55:51 -06:00
41e6ec0fff
integration test fixups
2018-04-30 14:55:51 -06:00
a146afcf84
refactor integration tests
2018-04-30 14:55:51 -06:00
16d59ab582
fix integration test
2018-04-30 14:55:51 -06:00
cc93a12a85
Test fixups
2018-04-30 14:55:51 -06:00
affb80e39e
test fixups
2018-04-30 14:55:51 -06:00
e000047932
integration-test for #2909
2018-04-30 14:55:51 -06:00
9e5a6ac123
test_smoke -> test_magic_folder
2018-04-30 14:55:51 -06:00
4f1735586d
integration test for #2882
2018-02-06 15:28:02 -07:00
f7cfd62908
tell travis + tox about pytest.twisted in a different way
2018-01-23 12:52:46 -07: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
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
5b93e193c3
An integration test for ticket 2880
2017-12-05 12:02:16 -07:00
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
b481fc46f6
go back to happy=7
...
now that there are only 5 storage servers instead of 8 as expected
2017-07-26 11:30:02 -04:00
86b48960e3
pyflakes cleanups
2017-07-26 11:29:47 -04:00
dece729857
refactor to remove unnecessary negation
...
also add missing import!
2017-07-26 11:29:15 -04:00
a8917d553c
rewrite the config file more safely
...
use cli options for whatever we can
use the config apis for the other thing
this avoids clobbering configuration we don't know about -
such as the storage=False setting (which made all nodes storage servers).
2017-07-26 10:49:43 -04:00
Brian Warner
e7deb2c80f
integration/install-tor.sh: use trusty instead of precise
2017-07-12 09:36:50 -07:00
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
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
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
David Stainton
c83dde8629
Use first element returned by which
2017-01-09 19:54:51 +00:00
David Stainton
805be64769
Use which
from twisted
...
fixes #2856
2017-01-09 17:58:41 +00:00
e32b664b2b
Adjust default poll_interval
...
Also adds a --poll-interval option to both 'magic-folder join'
and 'magic-folder create' so that the integration tests can pass
something "very short".
2016-12-14 20:29:41 -07:00
b96122a8ff
Adding to the py.test integration tests, this:
...
- (on travis) installs Tor
- installs Chutney
- uses it to build a local Tor test-network
- set up an introducer on this test-network
- sets up two storage servers on this test-network
- proves that one can add a file, and the other can download it
I also mark the two tests that occasionally fail as
expected failures for now
2016-10-18 18:06:41 -07:00
ffdf4bf878
longer timeouts for windows' benefit
2016-09-26 13:33:45 -07:00
52e4bf0503
slightly more reliable...
2016-09-26 13:33:45 -07:00
2497435c1a
use full paths for everything
2016-09-26 13:33:45 -07:00
b2628b0826
Ignore IOErrors while we're still waiting
2016-09-26 13:33:45 -07:00
a0fc80d544
Use "python -m allmydata.scripts.runner" instead of tahoe.exe
...
On windows, it seems that the generated tahoe.exe (which comes
via entry_points=) doesn't deal with signals nicely. I'm not
sure if this is a pip bug (or just "one of those Windows things")
but running with python -m allows us to kill our subprocesses.
2016-09-26 13:33:45 -07:00
a93e8d7bd0
fix create-introducer, create-node after master changes
2016-09-26 13:33:45 -07:00
72f17afa76
Move check_magicfolder_smoke.py to proper integration tests
...
This introduces a py.test-based integration suite (currently just
containing magic-folder end-to-end tests). Also adds a tox environment
("integration") to run them.
The test setup is:
- a "flogtool gather" instance
- an Introducer
- five Storage nodes
- Alice and Bob client nodes
- Alice and Bob have paired magic-folders
2016-08-30 20:47:47 -06:00