Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop release #123

Closed
wants to merge 61 commits into from
Closed

Develop release #123

wants to merge 61 commits into from

Conversation

mulkieran
Copy link
Contributor

No description provided.

It makes pylint happy to run on test directories.

It makes it possible to put code that both plugins and tests use
in a directory that they can access.

Signed-off-by: mulhern <amulhern@redhat.com>
Make a separate target, for convenience.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
For hypothesis and for vim.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Change pytest required version to 2.3.

Signed-off-by: mulhern <amulhern@redhat.com>
It is not reliably raised.

Signed-off-by: mulhern <amulhern@redhat.com>
Updated rhbz#1255191 with this info.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
This reverts commit 5a86fa2.

Better not to skip these tests.
Signed-off-by: mulhern <amulhern@redhat.com>
Hypothesis is not supported for 3.2.

See: https://github.com/DRMacIver/hypothesis/iss

Signed-off-by: mulhern <amulhern@redhat.com>
Remove remaining bits of udev_database plugin.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
This gives fewer distracting skip messages, because the skipped tests
get filtered out during input selection by hypothesis.

This results in fewer tests being assembled and fewer skipped.

Runtime is more variable, because of hypothesis database. Should expect it
to be consistently longer on Travis CI by a factor as large as 2.

Some of the @given() annotations could be usefully abstracted once it is
certain that they are correct.

Signed-off-by: mulhern <amulhern@redhat.com>
There was too much indentation in the main test file.
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Increase the number of examples in case there are other interesting
exceptions.

Signed-off-by: mulhern <amulhern@redhat.com>
Some links that udevadm reports are not actually links to their device node,
but instead to related device nodes in a multipath group.

Signed-off-by: mulhern <amulhern@redhat.com>
It is more reasonable to do this, since this appears to be an unfixed
regression.

Signed-off-by: mulhern <amulhern@redhat.com>
Read the version information from a special version file.

Signed-off-by: mulhern <amulhern@redhat.com>
This serves as a record of what we claim does not require a checker.
It cuts down the number of distracting SKIP messages.
Filter blacklisted methods in strategy in order to avoid distracting SKIP
messages.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
See rhbz#1263351.

Signed-off-by: mulhern <amulhern@redhat.com>
mulkieran and others added 28 commits November 24, 2015 17:06
Signed-off-by: mulhern <amulhern@redhat.com>
…hesis.

Signed-off-by: mulhern <amulhern@redhat.com>
Should have gone in with commit 9e2fe0a.

Signed-off-by: mulhern <amulhern@redhat.com>
Previously, ran test on a selection of operators that hypothesis sampled.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
min_satisfying_examples is a soft bound; it will not cause a failure
if the list sampled from is shorter than the bound.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Change the exceptions raised slightly:

Raise DeviceNotFoundByNumberError on bad subsystem value.
More robust, because libudev seems to handle it, and ValueErrors
should really just be used by Python libs.

Add a DeviceNotFoundByFile error and use in Devices.from_device_file().

Signed-off-by: mulhern <amulhern@redhat.com>
Verify that pathlike sysnames always fail to be looked up properly, as well
as that simple names always get looked up properly.

Signed-off-by: mulhern <amulhern@redhat.com>
These tests will fail, because of rhbz#1263441.

Signed-off-by: mulhern <amulhern@redhat.com>
Should have gone in with commit ca9b27d.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
This seems like the proper place, since both methods assume that the
origin of the identifying string is known.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Closes: #101.

Signed-off-by: mulhern <amulhern@redhat.com>
Closes: #104

Resolves: rhbz#1267584

A general requirement of a mapping is that there is a value for every key,
but this is not really the case for attributes.

This removes some methods and changes the semantics of some other methods.

* __contains__ used to return True only if there was a value corresponding
to the key. Now, it returns True if the key is what libudev calls available.
It no longer reads a value for the key, which is probably closer to the
correct semantics.

* __getitem__ used to raise a KeyError for any key that had no value,
regardless of whether the key was an available attribute or not.
Now it raises a KeyError only when the attribute is not among the available
attributes, and returns None when the attribute is among the available
attributes but has no value. This is fairer than raising a KeyError even
if the key is available, which is a bit counter-intuitive.

* asstring() used to assume that the attribute always had some value, now it
also handles the None case.

It no longer possesses the following concrete methods of Mapping:
__eq__
__ne__
get()
items()
iteritems()
iterkeys()
itervalues()
keys()
values()

The only behavior that would have given consistancy with a Mapping interface
would be to only return keys that have a corresponding value. It is,
however, not recommended to read attributes without knowing exactly what
they correspond to, as reading an attribute can have an effect.

Second commit, replaces first idea.

Stop treating Attributes as any sort of mapping from keys to values.

It turns out that the libudev methods used to get the keys and those that
look up the values have a very uncertain relationship to each other, and
the best that you can say is that the intersection between the set of keys
and the strings for which libudev will succesfully look up a value is
almost certainly non-empty.

This change forces getting rid of the __getitem__ method in the Attributes
class, because if it is still around then the 'in' operator will pass
int values to it. Change the method to one called 'lookup' to emphasize
a little more that this is not simply an access to readily available data
using a known useful key.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Get rid of traversal entirely.

Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
Signed-off-by: mulhern <amulhern@redhat.com>
…side.

There will probably be more at some time, so the better abstracted the
better.

Do the same for the deprecated QUDevMonitorObservers, for clarity.

Signed-off-by: mulhern <amulhern@redhat.com>
* Do not make DeviceNotFoundError a subtype of LookupError.
* Use abstract super classes.
* Add a new exception for a ValueError.

Signed-off-by: mulhern <amulhern@redhat.com>
@mulkieran
Copy link
Contributor Author

Supersed by develop-release-0.18

@mulkieran mulkieran closed this Dec 1, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants