Skip to content

Unit tests for Python >= 3.10 don't actually test much of anything #90

@briantist

Description

@briantist

In #35 I got the tests working for Python 3.10 and 3.11.

This introduced some branching code in the definition of a MockArtifactoryPath class due to changes in pathlib (the underlying base class):

if sys.version_info.major == 3 and sys.version_info.minor >= 10:
_accessor = _artifactory_accessor
__new__ = _new__new__
_make_child = _new_make_child
_make_child_relpath = _new_make_child_relpath
else:
# in 3.9 and below Pathlib limits what members can be present in 'Path' class
__slots__ = ("auth", "verify", "cert", "session", "timeout", "_galactory_mocked_path")

Although I got the tests to "pass", it turns out that it's not working properly.

I haven't been able to completely figure out why yet, but it seems like is_dir() is always returning True and that means in our tests we end up testing nothing

if repo.is_dir() and not repo.name.endswith('.tar.gz'):

Galactory still works fine with Python 3.10 and 3.11 and I expect that will continue, but means there's even less testing than I thought 😞

I've still not made enough headway on #21 , I really need to step up testing in this project.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions