Commit Graph

3073 Commits

Author SHA1 Message Date
Sajith Sasidharan
81216f18bf Remove some whitespace 2020-07-08 10:15:33 -04:00
Sajith Sasidharan
d6ea30b935 Test more markup rendered by DownloadStatusElement 2020-07-07 22:20:49 -04:00
Sajith Sasidharan
0db56f99cf Add some tests for DownloadStatusElement 2020-07-07 20:49:58 -04:00
Itamar Turner-Trauring
3d0e4df5ce Lint fixes. 2020-07-07 11:30:01 -04:00
Itamar Turner-Trauring
e06d41442a Merge remote-tracking branch 'origin/master' into 3324-humanreadable-python-3 2020-07-07 11:03:33 -04:00
Sajith Sasidharan
a3bf4e0269 Remove an unused import 2020-07-06 20:18:22 -04:00
Sajith Sasidharan
e6eb387707 Remove status.RateAndTimeMixin
Both UploadResultsRenderer and DownloadResultsRenderer do not use
RateAndTimeMixin anymore: safe to remove it now.

Tests for methods formerly in RateAndTimeMixin have been moved to
test.web.test_util: specifically test_abbreviate_rate() and
test_abbreviate_time().
2020-07-06 17:11:30 -04:00
Sajith Sasidharan
4a47e8311f Merge 'origin/master' into 3288.status-download-nevow-to-twisted-web 2020-07-06 16:38:23 -04:00
Sajith Sasidharan
25f5e659fc
Merge pull request #721 from sajith/3287.status-upload-nevow-to-twisted-web
Replace nevow with twisted.web.template in status.UploadStatusPage

Fixes: ticket:3287
2020-07-06 16:20:40 -04:00
Sajith Sasidharan
61aef4caef
Merge pull request #690 from sajith/3247.storage-py-neovw-to-twt
Use twisted.web.template in web/storage.py

Fixes: ticket:3247
2020-07-06 16:18:34 -04:00
Itamar Turner-Trauring
f548593f37 Fix test_python3, and mark these two modules as being ported as well. 2020-07-06 14:18:18 -04:00
Itamar Turner-Trauring
b990334104 Add the builtins import to make Python 2 builtins match Python 3's. 2020-07-06 14:00:02 -04:00
Itamar Turner-Trauring
83b9bbf743 Switch definitely to _python3.py for listing modules, but also note if a module
has been ported in its docstring.
2020-07-03 13:28:36 -04:00
Itamar Turner-Trauring
140cb80ff7 Clarify comment. 2020-07-03 13:15:57 -04:00
Itamar Turner-Trauring
12691eb597 Only install module mappings once. 2020-07-02 14:31:33 -04:00
Itamar Turner-Trauring
70a029fb81 Tests pass on both Python 2 and Python 3. 2020-07-02 14:26:35 -04:00
Itamar Turner-Trauring
c207a0c932 Port test_humanreadable.py to Python 3. 2020-07-02 14:10:38 -04:00
Itamar Turner-Trauring
b7f88b278f Split out tests for humanreadable into their own module, so we can port just
humanreadable.py in isolation.
2020-07-02 13:40:40 -04:00
meejah
ffd24b9c7f
Merge pull request #728 from meejah/ticket3317-verified-fakes
Ticket 3317: start of verified fakes
2020-06-30 19:40:39 +00:00
meejah
aedc58ef51 unused imports 2020-06-19 17:22:42 -06:00
meejah
f0ac5a2cef more-testtools-y asserts 2020-06-19 17:19:30 -06:00
meejah
57eb875354 testtool's asserts 2020-06-19 17:16:39 -06:00
meejah
ef71fc2bfc Get rid of ?replace= handling entirely and more-correctly support /uri variants 2020-06-19 17:15:01 -06:00
meejah
02a543515f replciate Tahoe's behavior for replace=true/false 2020-06-13 01:55:14 -06:00
meejah
fa597e1735 use real parser 2020-06-12 22:57:38 -06:00
meejah
949b09ce27 actually returns CREATED for new data 2020-06-12 22:08:36 -06:00
meejah
776ee5f91c use hypothesis -- which doesn't know about Deferred, so need testtools too 2020-06-12 22:04:12 -06:00
meejah
05ea0a2fe9 copyright, header 2020-06-12 22:04:03 -06:00
meejah
00e7d01a1a unused imports 2020-06-11 15:34:40 -06:00
meejah
86a90084bb simple test of testing/web 2020-06-11 14:14:42 -06:00
Sajith Sasidharan
cf4b3ba008 Correct arguments to super()
This was incidentally found when looking at some test failures:
super(type, object) is the right invocation, and not the other way
around.
2020-05-29 09:20:18 -04:00
Sajith Sasidharan
b0e3325d03 Move time formatter tests
UploadResultsRendererMixin no longer has render_time(); moving tests
for render_time() as tests for abbreviate_time() to a more appropriate
place.
2020-05-22 20:49:34 -04:00
Sajith Sasidharan
ab4811eaa0 Move tests for abbreviate time/rate methods to utils tests
RateAndTimeMixin.render_time() is really abbreviate_time(), and
RateAndTimeMixin.render_rate() is really abbreviate_rate().  This
change moves the tests to their rightful place, and exercises them
using the right names.

We're also trying to avoid use of mixins.  RateAndTimeMixin will
eventually go.
2020-05-14 16:09:54 -04:00
meejah
466369dd69
Merge pull request #669 from meejah/make-pypy-work
Make pypy work
2020-05-13 12:44:23 -06:00
meejah
2418e90bf0 CacheDirectoryManager is unused 2020-05-06 15:22:22 -06:00
meejah
d4f29e7d6c restore old code, run the GC 2020-05-05 13:57:17 -06:00
meejah
b54dc1e5d5 whitespace (1 line per import) 2020-05-05 13:56:59 -06:00
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