Commit Graph

3538 Commits

Author SHA1 Message Date
Sajith Sasidharan
5e4f2d88f1
Merge pull request #710 from sajith/3305.root-from-nevow-to-twisted-web
Move root.Root from nevow to twisted.web.template

Fixes: ticket:3305
2020-05-05 15:56:21 -04:00
Sajith Sasidharan
ab298dab9c Make ErrorBoom a new style class
ErrorBoom won't pass PythonTwoRegressions.test_new_style_classes()
check otherwise.
2020-05-05 12:56:19 -04:00
Sajith Sasidharan
edd4cab42b Replace nevow with twisted.web in test.web.test_grid 2020-05-05 11:51:28 -04:00
meejah
1e039d8364 certs big enough to make pypy happy 2020-05-04 21:59:15 -06:00
meejah
00373fc211 special-case pypy 2020-05-04 21:59:15 -06:00
meejah
13350d60c2 assertFailure instead of bespoke code 2020-05-04 21:59:15 -06:00
meejah
bddd2cc996 disable system tests on PyPy 2020-05-04 21:59:15 -06:00
meejah
29563b8f2d assert proper errors 2020-05-04 21:59:15 -06:00
meejah
f8117320cb tests which rely on memory-reclamation need gc.collect() on pypy 2020-05-04 21:59:15 -06:00
meejah
8965c77d63 look for correct error-string 2020-05-04 21:59:15 -06:00
meejah
9bcc465f76 unused import 2020-05-04 21:59:15 -06:00
meejah
4928d62d66 use set instead of WeakKeyDictionary 2020-05-04 21:59:15 -06:00
meejah
5175a6c6a0 asserts for systemexit 2020-05-04 21:59:15 -06:00
meejah
5071ddf124 add more 'with' statements 2020-05-04 21:59:15 -06:00
meejah
a348d3d507 relying on memory/gc bad 2020-05-04 21:59:15 -06:00
meejah
ca5e1ebe52 look at correct mock-call object 2020-05-04 21:59:15 -06:00
meejah
4b0c730adf use 'with open' correctly 2020-05-04 21:59:15 -06:00
Sajith Sasidharan
88b369a0c2 Remove unused variables 2020-05-04 11:48:52 -04:00
Sajith Sasidharan
58a06cb57d Update test that exercises empty nick and version 2020-05-04 09:45:36 -04:00
Sajith Sasidharan
88b7784f39 Use BeautifulSoup in test.test_system.SystemTest.test_filesystem 2020-04-30 15:09:10 -04:00
Sajith Sasidharan
6aebab28a9 Use BeautifulSoup to check rendered document 2020-04-30 10:17:48 -04:00
Sajith Sasidharan
e5733b6c90 Remove unused test code 2020-04-28 19:09:00 -04:00
Sajith Sasidharan
98322effe6 Update test to exercise services renderer 2020-04-28 19:07:57 -04:00
meejah
c385e958a8 Merge branch 'master' into ticket3252-port-web-directory.remaining.1 2020-04-23 12:24:00 -06:00
Sajith Sasidharan
b3feaae644 Use an inner JSONRequest class with renderJSON
Once nevow is removed from web/common.py, we can simplify
renderJSON(), like so:

  def renderJSON():
      req = Request()
      req.args = {"t": ["json"]}
      req.fields = {}
      return resource.render(req)

But for now we have to live with an inner class that implements the
nevow.inevow.IRequest interface.
2020-04-21 10:29:28 -04:00
Sajith Sasidharan
201c08dbe5 Declare JSON request interface using @implementer
"zope.interface.implements(IRequest)" is deprectated in favor of
"@zope.interface.implementer(IRequest)" decorator.
2020-04-20 16:54:51 -04:00
meejah
8df1ed1ba6 link to tickets 2020-04-18 02:49:14 -06:00
meejah
349aefeacc fail() takes a message, not Exception 2020-04-18 01:52:18 -06:00
meejah
018e161f19 don't allow trailing slashes
This makes /uri/xxx URIs invalid if they have a trailing slash.
It seems that the former Nevow implementation would allow this, and
some tests (and, notable, "tahoe backup") did rely on using URIs
of this style.
2020-04-18 01:52:18 -06:00
meejah
8f35f78194 temporary fix for hypothesis test 2020-04-18 01:52:18 -06:00
meejah
c246b3e049 self.assertEqual not assert 2020-04-18 01:52:18 -06:00
meejah
701915783c make unpack/pack test use Hypothesis 2020-04-18 01:52:18 -06:00
meejah
3d3feec059 encode for fail() / Exception 2020-04-18 01:52:18 -06:00
meejah
d533becc07 native strings only 2020-04-18 01:52:18 -06:00
meejah
ef5e18b6c7 unused 2020-04-18 01:52:18 -06:00
meejah
fdb3399edb just delete test_welcome 2020-04-18 01:52:18 -06:00
meejah
b44980ca01 get rid of assert_ 2020-04-18 01:52:18 -06:00
meejah
e4d556b49e assert about connected storage servers 2020-04-18 01:52:18 -06:00
meejah
f9956f4c43 remove asserts for static text 2020-04-18 01:52:18 -06:00
meejah
9ccbe562d7 add break 2020-04-18 01:52:18 -06:00
meejah
d12fd573d3 assert for noreferrer 2020-04-18 01:52:18 -06:00
meejah
48f859f5d4 document internal callback 2020-04-18 01:52:18 -06:00
meejah
685aaf14bf soup, not re 2020-04-18 01:52:17 -06:00
meejah
af35483fbf soup not re 2020-04-18 01:52:17 -06:00
meejah
b71d4993c6 more soup 2020-04-18 01:52:17 -06:00
meejah
b4fab4403f use soup, not strings 2020-04-18 01:52:17 -06:00
meejah
bd1cbde273 re/string checks -> soup 2020-04-18 01:52:17 -06:00
meejah
76516fe02e use soup, not re 2020-04-18 01:52:17 -06:00
meejah
c489c61404 refactor 2020-04-18 01:52:17 -06:00
meejah
d5ef65d326 beautifulsoup, not re 2020-04-18 01:52:17 -06:00
meejah
bf3c71c35f change not required 2020-04-18 01:52:17 -06:00
meejah
178c45eb0d remove print 2020-04-18 01:52:17 -06:00
meejah
25096715fb flake8 2020-04-18 01:52:17 -06:00
meejah
044d1cfbea correct error 2020-04-18 01:52:17 -06:00
meejah
d0c47fe1d1 irrelevant comment 2020-04-18 01:52:17 -06:00
meejah
97a3f61c28 irrelevant comment 2020-04-18 01:52:17 -06:00
meejah
bc04c9b3db detech empty pathname components, hopefully the same way as Nevow 2020-04-18 01:52:17 -06:00
meejah
d26ce3beb0 some things that fail, but not in quite the right way .. for reasons 2020-04-18 01:52:17 -06:00
meejah
e894795898 redirects don't have to be absolute 2020-04-18 01:52:17 -06:00
meejah
543a948d32 shadowed test name; reveal both tests 2020-04-18 01:52:17 -06:00
meejah
800b69047c the error-message changed 2020-04-18 01:52:17 -06:00
meejah
247fc54f8c explicit pack/unpack test 2020-04-18 01:52:17 -06:00
Sajith Sasidharan
82cd5a87fe Use DummyRequest in storage tests
Using twisted.web.server.Request causes test_new_style_classes to
fail like so:

  Traceback (most recent call last):
  Failure: testtools.testresult.real._StringException: Traceback (most recent call last):
    File ".tox/coverage/lib/python2.7/site-packages/allmydata/test/test_python2_regressions.py", line 69, in test_new_style_classes
      "Expected to find no classic classes.",
    File ".tox/coverage/lib/python2.7/site-packages/testtools/testcase.py", line 502, in assertThat
      raise mismatch_error
  testtools.matchers._impl.MismatchError: !=:
  reference = set([])
  actual    = set([<class allmydata.test.test_storage.JSONRequest at 0x7fd938040bb0>])
  : Expected to find no classic classes.

Seems that `DummyRequest` is an acceptable new style class.
2020-04-17 15:25:42 -04:00
Sajith Sasidharan
b2b7061980 Refactor storage test helpers
Rewrite `renderSynchronously()` to use `renderDeferred()`
2020-04-17 15:25:42 -04:00
Sajith Sasidharan
72b8f72080 Add docstrings to storage test helpers 2020-04-17 15:25:42 -04:00
Sajith Sasidharan
8b7ef33b3d Remove redundant render_json() method 2020-04-17 15:25:42 -04:00
Sajith Sasidharan
8c92187d92 Avoid using nevow FakeRequest in storage test.
Use twisted.web.server.Request instead, with a DummyChannel.

There's still one line of inevitable nevow now, because of code in
web/common.py; but that should be easily replaceable once we switch
that over.
2020-04-17 15:25:42 -04:00
Sajith Sasidharan
f1fe3a7588 Get rid of WebRenderingMixin in storage test 2020-04-17 15:25:42 -04:00
Sajith Sasidharan
110734daf0 Use a helper to exercise render() in storage test cases 2020-04-17 15:25:42 -04:00
Sajith Sasidharan
554c477cea Prefix member variable with "_" 2020-04-17 15:25:42 -04:00
Sajith Sasidharan
ff019e5b12 Use BeautifulSoup to check favicon in storage page 2020-04-17 15:25:42 -04:00
Sajith Sasidharan
c061f6830e Use successResultOf in renderSynchronously
Get rid of [].append trick when dealing with the deferred.
2020-04-17 15:25:42 -04:00
Sajith Sasidharan
e2fc1fc07e Move renderSynchronously to test suite 2020-04-17 15:25:42 -04:00
Sajith Sasidharan
d3ff578640 Use parentheses in test suite's import statement 2020-04-17 15:25:42 -04:00
Sajith Sasidharan
0993e61046 Drop unused ctx argument from render_space methods 2020-04-17 15:25:42 -04:00
Sajith Sasidharan
c7a63f957d Refactor so that test_util pass 2020-04-17 15:25:42 -04:00
Jean-Paul Calderone
2136ef46a1
Merge pull request #695 from tahoe-lafs/3284.remove-magic-folder
Remove magic-folder, now a stand-alone project

See https://github.com/LeastAuthority/magic-folder

Fixes: ticket:3284
2020-04-16 08:07:38 -04:00
Jean-Paul Calderone
71aa17ab0b
I assume it's utf-8 2020-04-15 09:07:23 -04:00
Jean-Paul Calderone
d4d8ce4e13
missing front matter 2020-04-15 08:55:00 -04:00
Jean-Paul Calderone
72ca4e8c53
move the imports 2020-04-15 08:54:50 -04:00
Jean-Paul Calderone
c73953d94a
Capture and report Foolscap Tub Listener creation stack on error 2020-04-14 08:40:48 -04:00
Jean-Paul Calderone
6f1f30e4bf
pyflakes cleanups 2020-02-13 12:15:09 -05:00
Jean-Paul Calderone
ef73e18f3d
Remove the greater part of the implementation 2020-02-13 10:43:50 -05:00
Jean-Paul Calderone
f032cd50d0
Merge pull request #678 from tahoe-lafs/2239.remove-tahoesvc-and-pkgresutil
Remove tahoesvc and pkgresutil

Fixes: ticket:2239
2020-02-11 13:29:46 -05:00
Jean-Paul Calderone
c1644734f1
Merge pull request #684 from tahoe-lafs/2098.remove-pyutil
Remove the direct pyutil dependency

Fixes: ticket:2098
2020-01-20 13:56:22 -05:00
Jean-Paul Calderone
c4b6ca1c7d
Merge pull request #683 from tahoe-lafs/1827.remove-tahoe-rm
Remove "tahoe rm"

Fixes: ticket:1827
2020-01-20 11:09:30 -05:00
Jean-Paul Calderone
5e1c3df336
Merge pull request #677 from tahoe-lafs/2266.remove-repeatable-random
Remove repeatable random test helper

Fixes: ticket:2266
2020-01-20 10:08:16 -05:00
Jean-Paul Calderone
6da18ad608 Remove another test for "tahoe rm" 2020-01-17 10:00:55 -05:00
Jean-Paul Calderone
abe25cb00a Remove the mention
Also delete the dirnode benchmark which has, sadly, bitrotted to the point of
uselessness.
2020-01-17 09:59:59 -05:00
Jean-Paul Calderone
e2fb2d0f4e remove "rm" uses from test suite 2020-01-17 09:45:39 -05:00
Jean-Paul Calderone
6d83b9c1e1 remove "tahoe rm" 2020-01-17 09:14:36 -05:00
Jean-Paul Calderone
d07edff33d Update monkey-patch to follow moved code 2020-01-15 15:26:08 -05:00
Jean-Paul Calderone
595295e88d Update monkey-patches to reflect moved code 2020-01-15 15:08:33 -05:00
Jean-Paul Calderone
8a808ba5c6 update imports for moved code 2020-01-15 15:06:43 -05:00
Jean-Paul Calderone
9c1250364f Remove the cleanup too 2020-01-13 15:34:30 -05:00
Jean-Paul Calderone
f6e7721dad Remove tahoesvc and pkgresutil 2020-01-13 15:33:21 -05:00
Jean-Paul Calderone
4ae6cc9775 Remove it 2020-01-13 15:29:27 -05:00
meejah
dfc032bca5 use beautifulsoup 2019-12-21 03:57:00 -07:00
meejah
3099b188ae check NoNetworkGrid for startup errors 2019-12-21 03:56:13 -07:00
Jean-Paul Calderone
ae2abd1b2e try making it frozen instead of fiddling with cmp 2019-12-18 15:23:07 -05:00
Jean-Paul Calderone
2037cd9be1 New-style the new class 2019-11-26 08:43:05 -05:00
Jean-Paul Calderone
e7d166f262 Use hyperlink instead of a string 2019-11-26 08:33:56 -05:00
Jean-Paul Calderone
bbc9c635b0 docstring 2019-11-26 07:49:25 -05:00
Jean-Paul Calderone
1fef619819 Add a test for persistent state and make it pass 2019-11-19 12:56:38 -05:00
Jean-Paul Calderone
8e6aeb49e0 Add some state to the test storage plugin 2019-11-19 12:56:26 -05:00
Jean-Paul Calderone
c2257685c2 Merge remote-tracking branch 'origin/master' into integration/storage-economics 2019-11-08 10:42:26 -05:00
meejah
b92478f89c
Merge pull request #655 from meejah/ticket3252-port-uri-handler
3257: port uri handler
2019-11-05 05:01:08 +00:00
meejah
3b07a2873e
Merge pull request #659 from tahoe-lafs/3255.python3-porting-done-oracle
Add a Python 3 porting-done oracle to the test suite
2019-11-05 05:00:25 +00:00
Jean-Paul Calderone
ff30dbcf85 Delete test_version_no_noise
Python will write to stdout and stderr what it wants when it wants.  It is
futile to believe this can be controlled without a massively greater effort.

Also, Lucid and `distribute` are long dead.
2019-10-29 08:56:14 -04:00
Jean-Paul Calderone
d909b1ed5b Run the child process with -Wignore
This test is not equipped to say anything about what warnings are or are not
emitted.
2019-10-29 08:55:42 -04:00
Jean-Paul Calderone
a55719cdc4 Raise UnknownConfigError when a server is configured with an unknown storage plugin 2019-10-16 19:56:29 -04:00
Jean-Paul Calderone
8c1f536ba4 Merge remote-tracking branch 'origin/master' into integration/storage-economics 2019-10-04 12:02:00 -04:00
meejah
2b4b8e11ce urls are bytes in Twisted 2019-09-27 12:41:14 -06:00
meejah
27e7e5e868 invalid 2019-09-27 11:51:03 -06:00
meejah
e7043f1b03 unused 2019-09-27 11:51:03 -06:00
meejah
18e24a8008 unused 2019-09-27 11:51:03 -06:00
meejah
4a226c7633 use Twisted API, and some hypothesis tests 2019-09-27 11:51:03 -06:00
meejah
fc32d1e377 simple error-case for URIHandler.render_GET 2019-09-27 11:51:03 -06:00
meejah
3adaf5a956 simple test of URIHandler.render_GET 2019-09-27 11:51:03 -06:00
meejah
119de2be8e formatting fixes 2019-09-27 11:51:03 -06:00
Jean-Paul Calderone
8a1fa9a41e remove unused imports 2019-09-17 11:35:37 -04:00
Jean-Paul Calderone
98b3a644da add some tests 2019-09-17 11:35:37 -04:00
meejah
5f14297526
Merge pull request #639 from meejah/ticket3227-remove-child-attributes-nevow
Ticket3227 remove child_ attributes/method use (nevow port)
2019-08-29 18:04:40 +00:00
meejah
747e9af19f fixup; remove fragile root tests 2019-08-24 12:21:56 -06:00
Jean-Paul Calderone
d4b5de2e08
Merge pull request #653 from tahoe-lafs/3248.pass-config-to-get_storage_client
Pass the full _Config to IFoolscapStoragePlugin.get_storage_client

Fixes: ticket:3248
2019-08-23 09:04:23 -04:00
Jean-Paul Calderone
debefdc977
Merge pull request #648 from tahoe-lafs/3241.refactor-mutable-share-write-implementation
Refactor mutable share write implementation

Fixes: ticket:3241
2019-08-23 08:45:48 -04:00
Jean-Paul Calderone
25c476aaa8
Merge pull request #654 from tahoe-lafs/3250.synchronous-get_storage_client
Synchronous IFoolscapStoragePlugin.get_storage_client

Fixes: ticket:3250
2019-08-23 08:44:52 -04:00
Jean-Paul Calderone
8faf2838f3 Pull make_broker up to module scope since it does not need the TestCase 2019-08-23 08:14:01 -04:00
Jean-Paul Calderone
7eb17f199c Clarify this docstring 2019-08-23 08:11:38 -04:00
Jean-Paul Calderone
e62d2a5a27 In reality we cannot handle a Deferred here
... yet?  This code is invoked from an `__init__` where async is always
tricky.  Maybe we can invert the relationship someday.
2019-08-20 09:28:05 -04:00
meejah
67010a9954 remove ignored html 2019-08-20 00:17:28 -06:00
meejah
0f2376ae23 more docstrings 2019-08-20 00:17:28 -06:00
meejah
5db3909478 actual str-ports string 2019-08-20 00:17:28 -06:00
meejah
c8ba9f7004 docstrings 2019-08-20 00:17:28 -06:00
meejah
9952002a49 test docs 2019-08-20 00:17:28 -06:00
meejah
093863b1cd docs 2019-08-20 00:17:28 -06:00
meejah
3f8954be08 refactor download status to get rid of a 'def child_' 2019-08-20 00:17:28 -06:00
meejah
738641249b test accesses child_operations 2019-08-20 00:17:28 -06:00
meejah
5cdf5a667a more hacky test 2019-08-20 00:17:28 -06:00
meejah
5fa2347897 add magic-folders to test 2019-08-20 00:17:28 -06:00
meejah
32a0841c0b a basic unit-test for rendering (root page) 2019-08-20 00:17:28 -06:00
Jean-Paul Calderone
9940beaae1 Thread a _Config all the way down 2019-08-19 16:09:26 -04:00
Jean-Paul Calderone
6a9f1ac1f1 Update test plugin to reflect interface change 2019-08-19 15:11:13 -04:00
Jean-Paul Calderone
a47463e032 Pass _Config instead of a smaller dict to get_client_resource 2019-08-19 11:21:03 -04:00
Jean-Paul Calderone
21bf7fc25c Merge remote-tracking branch 'origin/master' into integration/storage-economics 2019-08-16 15:39:31 -04:00
hab
985f659afe Merge remote-tracking branch 'upstream/master' into move-to-twt--introducer 2019-08-16 17:52:05 +01:00
hab
e670bb5d3b Add more docstrings; add a test hook.
In place of nevow's renderSynchronously, I think it'll be good enough
to return the Element directly so it can be flattened. It still gets
flattened with a None request, which might need to change.
2019-08-16 17:43:31 +01:00
hab
e2c2c30574 Add more docstrings. 2019-08-16 17:36:48 +01:00
hab
4e6ff4c7c7 Style fixups; be explicit about literals. 2019-08-16 16:59:15 +01:00
Jean-Paul Calderone
de8199d3b0 Improve the behavior of get_slot_leases when no shares exist 2019-08-15 11:08:04 -04:00
Jean-Paul Calderone
f1c817e3ab
Merge pull request #647 from tahoe-lafs/3240.run-sftp-test-suite
Run the SFTP test suite again

Fixes: ticket:3240
2019-08-15 08:01:05 -04:00
hab
46cc5ab8ed Remove unused imports. 2019-08-14 20:35:15 +01:00
hab
e2aba7f4bb Use beautifulsoup4+html5lib for web tests.
Assertions about the rendered template will be easier to write and
don't rely on perfect substring matches.
2019-08-14 19:45:16 +01:00
Jean-Paul Calderone
b3741ed3b5 Factor all of the logic into a helper with a flag controlling leases 2019-08-14 12:28:05 -04:00
Jean-Paul Calderone
74cb121b49 Add a test for uncovered remove-not-present-share case
Also fix the implementation to not blow up if the bucket for such a share
never existed.
2019-08-14 11:44:12 -04:00
Jean-Paul Calderone
42f6a5609f Use the better variable name 2019-08-14 09:23:11 -04:00
Jean-Paul Calderone
f435b54a8a Make this test suite contingent on the availability of Conch 2019-08-14 09:03:36 -04:00
Jean-Paul Calderone
36521d2d50 Some more Windows exclusions. 2019-08-14 08:16:34 -04:00
Jean-Paul Calderone
9231638d89 Add a couple more platform-specific exceptions 2019-08-13 19:07:44 -04:00
Jean-Paul Calderone
3d2d61f853 Merge remote-tracking branch 'origin/master' into 3239.python2-new-style-regression-test 2019-08-13 18:27:23 -04:00
Jean-Paul Calderone
097690caa8 Remove prints 2019-08-13 18:26:15 -04:00
Jean-Paul Calderone
b7e3633056 Fix a lot of classic classes in Tahoe-LAFS 2019-08-13 16:55:40 -04:00
Jean-Paul Calderone
43e19e6e51 Fix the test to really assert what it means to 2019-08-13 16:55:25 -04:00
Jean-Paul Calderone
a8a9c85e5e Skip this pending fixes elsewhere 2019-08-13 15:43:03 -04:00
Jean-Paul Calderone
d69cde293a Revert my changes, this is a much bigger job. 2019-08-13 15:38:33 -04:00
Jean-Paul Calderone
132cc4605d Only consider classes defined in the module we're looking at.
Classes can lie about their __module__, of course, but I hope none of Tahoe's
do.
2019-08-13 15:32:09 -04:00
Jean-Paul Calderone
b1c7556239 importPackages only fixes the problem for "packages"
So just call load on every module before trying to iterate its attributes.
2019-08-13 15:19:05 -04:00
Jean-Paul Calderone
13409a2449 Move the remaining package checking machinery to its own module. 2019-08-13 15:11:01 -04:00
Jean-Paul Calderone
6623ed3e4b Remove import-time dependency version checks. 2019-08-13 14:10:36 -04:00
meejah
8e4b05214a add --coverage for integration tests 2019-08-06 16:47:43 -06:00
Jean-Paul Calderone
e66ffacc9e a docstring for the matcher's match method 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
21d735ece9 whitespace more conforming to PEP8 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
3152a35618 Some additional documentation 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
d69de15664 implement the feature
improve the test slightly, too, to verify the configuration supplied to the
plugin is as expected.
2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
326e5829b0 Add a basic test for the existence of any plugin-supplied resource 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
9842447a07 Don't start or announce anonymous access if config says not to 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
6fd27097a9 Factor out some repetition of this dummy value 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
e0157ab174 Give me a tool to match announcements w/o anonymous storage furl 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
853cf62530 Allow [storage]anonymous through the validator
And provide a helpful accessor for reading it
2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
311afa8a75 Test & fix supplying plugin configuration 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
57160f65c6 Pass get_rref in to get_storage_client
plugins don't otherwise have a way to talk to the server.
2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
2616c66a49 Fix confusion between IStorageServer and the thing above it
IStorageServer is what uses a connection.  You need a thing above it to _get_
a connection.
2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
59546944ce Factor duplicate furl value out and add it where needed 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
11418a9f87 Fix test_add_rref users by making them supply coherent values
... of the right type
2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
c752fc76f1 pass the new config to StorageFarmBroker 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
6e3cd2d91c Reflect announcement changes from ticket:3119 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
f3218e6f62 basic positive path test 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
09acde41b9 refactor test_ignored_non_enabled_plugin to support more tests 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
7e9e380912 adjust to the changed parameter name 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
6b7e0dd700 add a test for the negative case 2019-08-03 06:39:31 -04:00
Jean-Paul Calderone
e8b38d8cd6 move some testing helpers into the common module 2019-08-03 06:39:27 -04:00
Jean-Paul Calderone
3b6e1e344b Don't blow up the web status if we get an unrecognized announcement 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
07bf8a3b8c Change this helper to reflect the fact that old announcements are irrelevant 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
624591e412 Change the tests to match against the announcement we need 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
6068b6c1b2 don't reach through the tahoe-lafs config object 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
251eda0b80 rename introducer_factory parameter to be private 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
8516459fa3 Python 3 syntax compatibility 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
58db131787 remove unused imports 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
e825e63590 This returned to being synchronous 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
deb3109f43 please report all errors 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
1c68157c1f verify behavior if there is a poorly behaved plugin 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
23e1631259 switch from node to client for config loading
apparently clients are the things with storage
2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
3719a107be Stop putting a useless client section in here
[client] is not a valid common section so this fails if there's validation
2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
3bc21e1b72 Re-synchronize the fake with the real implementation 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
7919cf205e Test the actual interface
get_storage_server is supposed to return a Deferred
2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
f606beb065 Test and support plugins without any configuration 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
e2982c0129 Support multiple plugins 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
646cd452b9 Add tests for announcements for plugins
And a basic implementation
2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
9608404b6e Factor plugin helper behavior into its own fixture 2019-08-03 06:19:01 -04:00
Jean-Paul Calderone
25287870ee Add a tool for matching the node key in the announcement
And use it in the recently added test
2019-08-03 06:18:55 -04:00
Jean-Paul Calderone
212f96dfe7 Baseline tests for anonymous storage server announcements 2019-08-03 05:34:21 -04:00
Jean-Paul Calderone
0f0ca5598a at least minimally test the other implementation 2019-08-03 05:34:21 -04:00
Jean-Paul Calderone
1c6433b43b Factor details of the storage announcement out of NativeStorageClient
A separate object can be responsible for the details of each kind of announcement.
2019-08-03 05:34:21 -04:00
Jean-Paul Calderone
f19b94a43d remove unused import 2019-08-03 05:34:21 -04:00
Jean-Paul Calderone
b737c6f5c5 Use the client config helper to read/test client config 2019-08-03 05:34:21 -04:00
Jean-Paul Calderone
fb4c5cf91f Allow for dynamic configuration validation rules 2019-08-03 05:34:21 -04:00
meejah
4b7e26ee60 unused import 2019-07-09 09:11:57 -06:00
meejah
6c9a3cfea1 move import 2019-07-08 14:00:39 -06:00
meejah
4be5a767fd bytes, prefixes 2019-07-08 14:00:11 -06:00
meejah
a4ed8f6372 its decryption not encryption 2019-07-08 13:59:59 -06:00
meejah
3730f1f01b fix docstrings 2019-07-08 13:59:48 -06:00
meejah
8598d98ebe better assert methods 2019-07-08 13:59:36 -06:00
meejah
5644f421fe get rid of ed25519.bytes_from_* methods 2019-07-08 12:46:22 -06:00
meejah
dd55accec8 Merge branch 'master' into 3031-replace-pycryptopp 2019-06-26 14:42:43 -06:00
Jean-Paul Calderone
6d01b995d1 remove unused import 2019-06-26 12:42:53 -04:00
Jean-Paul Calderone
3c7ab91f07 Replace the monkey-patching with attributes on instances 2019-06-26 10:59:39 -04:00
Jean-Paul Calderone
23e360577f
Merge pull request #621 from tahoe-lafs/3051.handle-weird-announcements
Handle weird static server "announcements"

Fixes: ticket:3051
2019-06-26 07:57:33 -04:00
meejah
56cf188c90 provide IEncryptor and IDecryptor interfaces 2019-06-26 01:21:05 -06:00
meejah
ac583ebc8d unused import 2019-06-25 23:58:39 -06:00
meejah
8b48b3e06e better docs 2019-06-25 15:40:10 -06:00
meejah
3d2b43b688 FilePath not os.path 2019-06-25 14:35:41 -06:00
meejah
2b0d0d4072 don't need six.text_type 2019-06-24 22:02:16 -06:00
meejah
609d5f255d more things are bytes 2019-06-24 17:00:03 -06:00
meejah
05f6b7fea0 refactor ed25519 a little; only _string variants, not _bytes of deserializers and some imports 2019-06-24 15:31:46 -06:00
meejah
de94a0fd3e fix util, error crypto imports 2019-06-24 12:29:01 -06:00
meejah
74705ba2a5 correct remove_prefix imports 2019-06-24 12:27:31 -06:00
meejah
544ad5bb59 another test 2019-06-23 00:25:14 -06:00
meejah
ec98924b45 more docstrings, more tests 2019-06-23 00:05:49 -06:00
meejah
df0153a73e
Merge pull request #615 from meejah/3041.websocket-streaming-tests
Add websocket streaming tests
(fixes🎫#3041)
2019-06-21 18:11:18 +00:00
Jean-Paul Calderone
f5fc38e8a7 remove unused locals 2019-06-21 08:17:53 -04:00
meejah
7e38198c19 fix docstrings 2019-06-18 16:04:05 -06:00
meejah
41dd143872 unused variables 2019-06-17 22:40:44 -06:00
meejah
b6cd77d547 failUnlessEqual -> assertEqual, and some comment fixups 2019-06-17 22:23:24 -06:00
meejah
9e5b6f1d0e better comment, cleanup 2019-06-17 22:16:50 -06:00
meejah
a27a5ce581 test all error-cases, and some fixups 2019-06-17 21:56:06 -06:00
meejah
802f1afde6 fix and clarify docstrings 2019-06-17 19:16:39 -06:00
meejah
310fb60247 move AES to a helper-function style 2019-06-17 15:54:46 -06:00
meejah
47ccdb0177 refactor ed25519 helpers to functional style
eliminates the wrapper classes and uses some more-explicit
names throughout (e.g "sk" -> "signing_key")
2019-06-13 22:19:28 -06:00
meejah
02bc5c1f42 codechecks fixup 2019-06-13 22:19:28 -06:00
meejah
df4671f90e refactor away from pycryptopp "helper" classes 2019-06-13 22:19:28 -06:00
heartsucker
772d4bad23 remove pycryptopp from tests 2019-06-13 22:19:28 -06:00
heartsucker
8063d93c6d replaced pytcryptopp rsa with our own wrapper 2019-06-13 22:19:28 -06:00
heartsucker
9e31bfe2f4 update code/test to use new ed25512 module 2019-06-13 22:19:28 -06:00
heartsucker
3a5a0fb572 replaced uses of pycryptopp's ed25519 with our own 2019-06-13 22:18:55 -06:00
heartsucker
74b1a0c279 ed25519 regression test 2019-06-13 22:18:55 -06:00
heartsucker
008825b0fd replaced referecnes to pycryptopp AES with own wrapper 2019-06-13 22:18:55 -06:00
heartsucker
1dff7f93bd added regression tests for aes 2019-06-13 22:18:55 -06:00
Jean-Paul Calderone
bbb1ebdd26 Make some assertions about the logging 2019-06-13 12:23:41 -04:00
Jean-Paul Calderone
b040a22ca3 Use the TempDir fixture 2019-06-13 12:22:53 -04:00
Jean-Paul Calderone
dd0cda8a41 Add a test for a bogus announcement 2019-06-12 17:05:14 -04:00
Jean-Paul Calderone
92724449a0 unicode! 2019-06-12 17:03:24 -04:00
Jean-Paul Calderone
225aec912a refactor the test to use a servers.yaml fixture 2019-06-12 17:03:09 -04:00
Jean-Paul Calderone
b604d08463 Add a test for the success case 2019-06-12 16:47:25 -04:00
Jean-Paul Calderone
b109847c43 Remove unused local 2019-06-04 10:04:00 -04:00
Jean-Paul Calderone
d32d020b05 Remove another test use of get_rref 2019-05-31 16:09:29 -04:00
Jean-Paul Calderone
e745dbfb66 Take a get_rref` call out of the test suite 2019-05-31 15:54:44 -04:00
Jean-Paul Calderone
72cf590320 Use IStorageServer instead of RemoteReference in a lot of places 2019-05-31 13:41:07 -04:00
meejah
f262e5d684 unused imports 2019-05-30 17:30:28 -06:00
meejah
04e72e208b cleanup 2019-05-30 17:30:28 -06:00
meejah
8938d556d9 whitespace 2019-05-30 17:30:28 -06:00
meejah
d2ea9c5158 get rid of flush() calls 2019-05-30 17:30:28 -06:00
meejah
811c7ea434 dead code 2019-05-30 17:30:28 -06:00
meejah
b3410c68b8 try some Autobahn websocket tests 2019-05-30 17:30:28 -06:00
tpltnt
e2b0b99e13 added old-style classes regression test 2019-05-30 09:22:08 +02:00
tpltnt
c8f11dc2d3 ported old-style classes to new-style 2019-05-26 08:28:18 +02:00
Jean-Paul Calderone
463f6ae63c sigh, I don't know 2019-05-13 09:35:31 -04:00
Jean-Paul Calderone
79a230cce5 Fix stopping on Windows 2019-05-13 09:31:46 -04:00
Jean-Paul Calderone
d8b65d1374 Merge remote-tracking branch 'origin/master' into 3025.fix-test_runner-hangs 2019-05-13 07:19:59 -04:00
Jean-Paul Calderone
6110fb0b9c Skip the PID file checks on Windows 2019-05-13 06:28:57 -04:00
Jean-Paul Calderone
628c7e7c5f remove the custom timeouts 2019-05-08 18:39:26 -06:00
meejah
bc3d48ef30 get rid of skipIf usage 2019-05-08 14:52:19 -06:00
Jean-Paul Calderone
b38a724d3d remove unused things 2019-05-03 12:09:21 -04:00
Jean-Paul Calderone
86d33e19c5 no more "tahoe start" here at all 2019-05-03 12:09:10 -04:00
Jean-Paul Calderone
aac36fb30a fix line separator 2019-05-03 12:09:03 -04:00
Jean-Paul Calderone
97e8ba8301 Remove test_client_no_noise and rewrite test_introducer
"tahoe run" has no quiet option so `test_client_no_noise` is not applicable.

This is a loss of the coverage of the quiet option for `tahoe start`.  That is
unfortunate but fixing any `tahoe start`-using test is really hard and the
functionality that is no longer covered is so trivial it hardly seems like it
made sense to test it by running multiple tahoe child processes anyway.
2019-05-03 11:36:11 -04:00
Jean-Paul Calderone
0e8472c017 rewrite test_baddir as several tahoe run-using tests 2019-05-03 08:55:35 -04:00
Jean-Paul Calderone
57fc078383 factor cleanup into api class 2019-05-03 07:27:58 -04:00
Jean-Paul Calderone
5a1183500e rewrite RunNode.test_client to use "tahoe run" 2019-05-02 14:21:35 -04:00
Jean-Paul Calderone
e6da5e6a82 Switch to simpler, declarative skip style 2019-05-02 12:52:06 -04:00
meejah
e63ee9b37e
Merge pull request #604 from ArdaXi/master
Make isdir argument to _ErrorTarget optional
2019-04-28 04:30:58 +00:00
Jean-Paul Calderone
0ab197d928 Add a test for the problematic case
Get the name in the warning right
2019-04-26 21:39:23 +02:00
meejah
27a0a7400d
Merge pull request #600 from tahoe-lafs/3019-remove-tuple-unpacking
3019 remove tuple unpacking, Fixes: ticket:3019
2019-04-26 17:37:56 +00:00
heartsucker
c0939e9b99
removed use of backticks for repr for python3 compatibility 2019-04-18 13:50:21 +02:00
heartsucker
a087a5be72
removed tuple unpacking in function definitons for python3 compatibility 2019-04-18 13:37:18 +02:00
Jean-Paul Calderone
9a30eaa83c move listenOnUnused to a place where implementation code can use it 2019-04-16 11:26:15 -04:00
Jean-Paul Calderone
7bda21aa7d
Merge pull request #593 from tahoe-lafs/3021.test-suite-hang
Fix one of the test suite hangs.

Fixes: ticket:3021
2019-04-05 15:37:49 -04:00
heartsucker
0750dbac38
updated all python files to use pep-3110 exception syntax for python3 compatibility 2019-04-04 11:57:58 +02:00
heartsucker
f4ff91a6c1
updated python2 long numeric literals for python3 compatibility 2019-04-03 10:04:02 +02:00
Jean-Paul Calderone
7b314ceab8 Attempt to avoid the hang condition
The Python 2.7 subprocess module does not promise thread safety.
2019-04-01 12:54:51 -04:00
heartsucker
d8187a0f6a
Merge pull request #589 from tahoe-lafs/3015-octal-numeric-literals
updated instances of octal literals to use the format 0o123 for python3 compatibility
2019-03-31 11:24:39 +02:00
meejah
7263ceb1d1
Merge pull request #591 from tahoe-lafs/3017.magic-folder-double-start
Fix the MagicFolder double start problem
2019-03-29 17:38:37 +00:00
heartsucker
129ef22185
updated instances of octal literals to use the format 0o123 for python3 compatibility 2019-03-29 11:08:44 +01:00
Jean-Paul Calderone
a4a73a20a2 Fix incorrect assertion 2019-03-28 16:18:43 -04:00
Jean-Paul Calderone
a7d18780f2 try really hard to bind that random ephemeral port number 2019-03-28 16:06:25 -04:00
Jean-Paul Calderone
f5e287d3e9 Use the port assigner in test_introducer 2019-03-28 15:14:48 -04:00
Jean-Paul Calderone
4265cc8afd And for the NoNetworkGrid clients' web port config 2019-03-28 15:02:53 -04:00
Jean-Paul Calderone
2898b2477b Use the port assigner for the web port config as well 2019-03-28 15:02:14 -04:00
Jean-Paul Calderone
7c97503687 Move and somewhat refactor assign_foolscap_port.
These changes make it easier to re-use and remove the notion that it is
foolscap-specific.
2019-03-28 14:54:45 -04:00
heartsucker
dbfcf8ae00
replaced StringIO imports with six.moves 2019-03-28 12:31:37 +01:00
meejah
d73626b7da
Merge pull request #580 from tahoe-lafs/3008-test-print-function
updated test code to use print function over print statement
2019-03-26 00:19:33 +00:00
Jean-Paul Calderone
848950a0c0 Merge remote-tracking branch 'origin/master' into ticket3006-websocket-streaming-logs 2019-03-25 08:42:30 -04:00
Jean-Paul Calderone
78e458328e actually this returns the logs resource itself :/ 2019-03-22 16:54:33 -04:00
Jean-Paul Calderone
5ac7efc6f3 Make sure it succeeds with _OK_ 2019-03-22 16:43:08 -04:00
Jean-Paul Calderone
febfa50a83 make sure we get bytes here 2019-03-22 16:42:50 -04:00
Jean-Paul Calderone
9de97dbdd5 Use guard and add some tests (integration failing) 2019-03-22 13:47:32 -04:00
heartsucker
df9243a3f4
updated test code to use print function over print statement 2019-03-22 17:32:36 +01:00
Jean-Paul Calderone
5bdb37b786 Remove tests for removed code 2019-03-20 12:53:24 -04:00
Jean-Paul Calderone
32d56c4dcc Merge remote-tracking branch 'origin/master' into 3004.eliotloggedruntest-addcleanup 2019-03-19 12:29:18 -04:00
Jean-Paul Calderone
6a4d461d38 only break it once because we don't do a full iteration after, now 2019-03-18 15:28:43 -04:00
Jean-Paul Calderone
d3fde4a4c5 and put the iterate into an action 2019-03-18 15:28:35 -04:00
Jean-Paul Calderone
0ac96e9113 put the _process_deque into an action too 2019-03-18 15:28:16 -04:00
Jean-Paul Calderone
20150541a7 put the _perform_scan into an eliot action 2019-03-18 15:27:38 -04:00
Jean-Paul Calderone
e1de96486c Don't re-run _perform_scan in this abstraction violating test
Just do what comes after _perform_scan
2019-03-18 15:11:25 -04:00
Jean-Paul Calderone
50867bec8b Accept positional and keyword arguments and pass them on. 2019-03-15 15:13:20 -04:00
Jean-Paul Calderone
365ff1a02c explain why we need to touch() twice 2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
5141105441 Fix typo 2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
2cb710ac1e Just touch the path once 2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
b14583f0e9 Remove this broken ignore_count thing
The only purpose it serves to make the tests invalid and useless.
2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
9ed019f8de Give the tests a little more time. Windows may need it. 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
2205bf0fdd unused 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
241b6cedfe Remove the skipped tests
They're skipped because we don't need that functionality.  If we need it in
the future, we'll implement it with tests.
2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
984d27ab62 simplify 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
e0b7919ad8 macOS is picky 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
4cccf5a316 it sure would be useful to be able to inspect these 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
515475022a add a test for deleting a file and its containing directory
at about the same time
2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
0822a71163 If it's some _other_ error then propagate it! 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
edfd9d3f92 rejected 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
cf2105364f Try to fix another race in this test 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
600f263a3b marginally improve reporting of uploader count failures 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
de9c681fe2 Let me query for direct children of a directory 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
4fc99b1b4d oops 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
b52524f701 this test probably makes no sense for watchdog 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
8bec797f66 somewhat better failure messages 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
944cb6f425 switch to testtools-compatible skips 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
1d0c862c54 convert some tests over to the new base class
in support of better logging
2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
ae59679875 log this action 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
ec5ebc2738 fix the Deferred interactions with that last Eliot change 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
641cb8a506 Make these checks a little more informative 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
c63a75dd2a Tag some of test_alice_bob with Eliot actions 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
5d4564ad51 and this test 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
2d2b8a4b7f eliot this too 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
f38f53c28d Add some more action context to this test 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
0845c9ba80 no apparent reason for ths 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
fdd603e42d keep everything in the test context 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
679b9a93c1 this is a chunk of work I guess 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
5331820325 Put some Eliot here 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
1883cee37f speed up these failures 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
331b96250d Space out file modifications to fit within macOS constraints 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
e822d43808 add more detailed logging to this test 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
7cbfc07b0c expunge low-grade debugging change 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
75d77305f9 avoid using a bool for a skip value 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
76a6f2d710 Why skip it? It works. 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
37cb9a1284 Fix the directory deletion test 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
006342d7d4 magic-folder doesn't use ignore 2019-03-14 11:23:16 -04:00
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
Chris Wood
c459b421b2 Try debugging Travis-CI... 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
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
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
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
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
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
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
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
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
c3e50a4536 convert _notify 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
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
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
abae1be9c6 Add helpers for configuring and using Eliot logging 2019-02-25 11:52:50 -05:00
Jean-Paul Calderone
0a9a962614 inline_callbacks moved 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
ebd017cf2b Clean up action relationship where it's easy to do so 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
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
dd02a23cad A few more debug prints - for now 2019-02-25 08:35:57 -05:00
Jean-Paul Calderone
d902f7567f Add a test for nested decorated generators 2019-02-22 08:39:38 -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
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
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
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
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
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
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
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
e74d2a7d01 get rid of redundant 'introducer_clients' var 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
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
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
465bfb8053 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
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
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
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
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
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
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
86a9ce5793 create _NoNetworkClient using same code as _Client 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
4aec12a92f whitespace on long lines 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
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
97dfe54f48 Remove allocate_tcp_port from Listeners tests 2018-06-08 13:31:57 -04:00
Jean-Paul Calderone
d2d343c710 Remove usage from the local TestCase 2018-06-08 13:31:57 -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
Jean-Paul Calderone
e0c73e0ea1 Merge remote-tracking branch 'origin/master' into 1455.x-frame-options.2 2018-05-01 14:39:48 -04:00
meejah
5414930184 not sure why we assert this 2018-05-01 10:52:12 -06:00
meejah
158498f61a 'positive' version of assert 2018-04-30 14:55:52 -06:00
meejah
04734dcfcb redundant test code 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
65ceda3a32 fix conflict behavior 2018-04-30 14:55:51 -06:00
meejah
affb80e39e test fixups 2018-04-30 14:55:51 -06: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
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
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
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
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
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
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
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
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
75e97e6c6d use QueuedItem directly instead of FakeStatusItem 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
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
0461cc0148 only one module import per line 2018-03-02 16:45:11 +01: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
tpltnt
c5e8d83b73 removed old test/trial helper module 2018-01-04 22:09:52 +01:00
meejah
5f00842532 use exarkun's suggestion from review 2018-01-03 14:07:38 -07: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
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
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
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
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