| Commit message (Collapse) | Author | Age |
| ... | |
| | |
| |
| |
| | |
Exception.
|
| | |
| |
| |
| |
| | |
* Added debug statement to reporter.
* Fixed misnamed variables in nettest.py.
|
| | | |
|
| | |
| |
| |
| | |
* Fix bad bug in reporter for OONIC
|
| | |
| |
| |
| | |
* Will trigger error if trying to run a test that requires root
|
| | |
| |
| |
| | |
* Your code has been rated at 5.68/10 (previous run: 5.63/10)
|
| | |
| |
| |
| | |
* Stop using newstyle super method on oldstyle class
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
* Add some notes on running tests in threads
* Define and document _tests attribute of out nettest TestSuite
* Remove unused code
|
| | |
| |
| |
| | |
* Refactor test case directory structure separating legacy tests from new tests
|
| | |
| |
| |
| |
| | |
* Remove unused imports
* Fix import indentation (please do not align from modules)
|
| | |
| |
| |
| |
| |
| |
| | |
* Remove some dead code
* Move authors to new directory
* Make reporter not swallow all tracebacks
* Fix some bugs in httpt
|
| | |
| |
| |
| |
| | |
default timeout could be overriden.
* Unittest for sorting out multiple inheritance issues.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
processing inputs. In ooni.inputunit
* Also added a couple of exception classes.
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
only ever be one instance of the subclass, to ooni.utils.process
* Style-fixing on a couple of assert statements.
|
| | |
| |
| |
| | |
* Moved the usage.Options ValueChecker class to the utils.assertions file.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Data Descriptor class.
* Utilities for tricks and hacks to play to pass data between instances,
and call super on a parent class that you don't yet know the name of.
* I know this stuff looks hacky, and thus it's not being used anywhere yet,
but I think it could provide later optimizations, both for runtime for
the code and also for decision trees to handle progressions of tests
without knowing what the future tests will be. Maybe.
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
* Make new generation tests work properly
|
| | |
| |
| |
| |
| |
| |
| |
| | |
* A good opportunity to refactor logging related code
* Implement time related utilities
* Start outlining configuration script
* Move netalyzr test to nettest
* XXX the new API tests are not working properly
|
| | |
| |
| |
| |
| |
| | |
* XXX we should focus on the currently API and aim for dropping support for
legacy tests. That API had some important design flaws and we should not
encourage the continued use of it.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
tests still work too. I tested all of them (both nettests and legacy tests)
and then diffed the results from before and after these changes. Some tests
*are* broken, e.g. dnstamper doesn't seem to find its inputs correctly, but
none of the tests are any more broken than they were before this commit --
the difference is that old tests will run.
* There was a rather nasty problem with old tests not finding their
subOptions(), which was due to Twisted's usage.Options class only being able
to handle one level of subOptions. When the old tests expected
ooni/ooniprobe.py to have the global_options and themselves to have
local_options, what was actually happening was that ooni/oonicli.py took the
first level, and then the test took the second, and thus was missing any
global_options.
* There was also a bug where, before, ooni/runner.py would do things like:
self.legacy_test.local_options = self.subOptions
when self.legacy_test is an already instantiated subclass of
ooni.plugoo.tests.OONITest. Because 'local_options' in this case is
obviously an attribute of the class, we have to do setattr(). Because of
this series of bugs, the legacy tests were missing a whole bunch of class
attributes which they required to run, read test inputs from files, and
really do anything at all.
* The function ooni.utils.legacy.start_legacy_test() now handles creating
a defer.gatherResults(defer.DeferredList), where the defer.DeferredList
is all of the calls to ooni.plugoo.tests.OONITest.startTest(args) with
all of the iterations of args.
* Added and updated a bunch of documentation.
* TODO some more documentation.
* TODO there might be more bugs. I sure as hell hope not. :(
* TODO go to bed now. I am getting grumpy.
|
| | |
| |
| |
| |
| | |
ooni/utils/legacy.py because they were getting a little cluttery.
* Added documentation and cleaned up code in ooni/runner.py.
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
* Fixed a problem where the reactor wouldn't get started if legacyTests were
used.
|
| | |
| |
| |
| |
| |
| |
| | |
* Added new /bin/ooniprobe start script to use the old ooniprobe.py for
legacy tests.
* Fixed a bug in ooniprobe.runTest where it returned too early.
* Fixed the inputs parser in ooni.runner.adaptLegacyTest.
|
| | |
| |
| |
| | |
to exclude *.yaml and some asset files.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
function so that they actually run old tests.
* Added a weird dynamic method-finding hack to get around old tests being
considered a module inside a module,
e.g. ooni.plugins.dnstamper.dnstamper.startTest(). This is due to the
__init__ structure of that directory, and so the test filename is a module,
which ooniprobe.py then calls the test from, which I think makes it into
another module or class. Sometimes distributed python modules have this
characteristic as well, and the hack seems to work to figure out the name of
the test we're supposed to be running and thus pass that to ooniprobe.py
correctly.
* Added another weird hack to re-add the __base__ builtin attr to subclasses
of OONITest, because for some odd reason it was missing in all of them, and
both inspect and Twisted expect it to be there.
* Moved legacy_reporter and LegacyOONITest classes out of their prior wrapper.
* TODO: Check that new-API-style tests still run correctly!
* TODO: Some of the legacy tests throw KeyErrors on assets['somekey'] when
they expect to find them and don't. The new oonicli should handle these in
case the testwriters don't.
|
| | |
| |
| |
| |
| |
| | |
destination"
warnings.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
ooni.runner.loadTestsAndOptions(), so that config['subArgs'] is accessible
by the LegacyOONITest class at instantiation.
|
| | |
| |
| |
| | |
actually a file on the system.
|
| |\ \
| | |
| | |
| | | |
hellais-test-pull
|
| | | | |
|
| |/ /
| |
| |
| | |
also working on it, I will work on something else. :)
|
| | |
| |
| |
| |
| | |
* Write input unit to avoid that bug from appearing again
* Do some progress in debugging some issues with DNSClient
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
* Discover the existence of bugs in scapy when using Arch Linux.
(probably has to do with the non existence of ifconfig, somebody should make
a ifconfig to ip wrapper that suggests the user with the equivalent ip
command. This would assist sysadmins in migrating away from a deprecated
tool and persist backward comaptibility)
* Fix bugs in runner and nettest
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Basically the problem was that we were not using yaml.safe_dump to write
reports to the log. What this means is that when we were to go back to parse
the reports we could have been loading python objects that may contain
arbitrary code. We could not out of the box use safe_dump because we were also
dumping certain objects in some test and safe_dump does not serialize complex
numbers.
* We have now a custom representer that serializes complex numbers
* We have our own custom dumper that does the type checking and can be expanded
to support other objects we think are safe to read.
* Bug fixing in other various parts of the code.
|
| | |
| |
| |
| | |
Next step run this on all the sites we want to test.
|
| | | |
|