- 19 Feb, 2020 2 commits
-
-
Georges Racinet authored
This is a preliminary for any CI attempt, since installing the webdriver inside a Docker container is a long and error prone process. This will allow to use a separate service image such as `selenium/standalone-chrome` and that may also turn to be a good option even outside Docker-based CI contexts. The new `Heptapod.new_webdriver()` method is now the unique one to be called to create new drivers, a preliminary to be able to run the tests with other drivers anyway. In particular, this should come handy if installing chromedriver is a problem.
-
Georges Racinet authored
In the docker execution context, we can get `None` for the output instead of an empty string.
-
- 15 Feb, 2020 1 commit
-
-
Georges Racinet authored
This means they don't need file system access anymore, and we greatly extend our coverage in remote server tests.
-
- 24 Jan, 2020 1 commit
-
-
Georges Racinet authored
Since we don't have an API to read the HGRC yet, we need file system access for these particular tests. It seemed logical to test inheritance management with the groups test.
-
- 15 Feb, 2020 3 commits
-
-
Georges Racinet authored
This is first test for heptapod#196
-
Georges Racinet authored
For now, we only have an HTTP server that will treat exactly one request, but that is expected to grow.
-
Georges Racinet authored
We'll need to have Heptapod initiate connections to the system running the tests, in order to test outbound operations such as web hooks. We introduce a marker for tests that rely on this, so that they can be skipped, together with the new `--heptapod-reverse-call-host` option, for that to be possible, with reasonable defaults.
-
- 17 Feb, 2020 1 commit
-
-
Georges Racinet authored
-
- 10 Dec, 2019 1 commit
-
-
Georges Racinet authored
See heptapod#143: since bookmarks are implicitely pushed, we have to honour that. It's also the occasion to test what happens with bookmarks deletions, which should also be allowed at all time (this is also important for people that have bookmarks because they have been using regular hg-git for a while)
-
- 18 Feb, 2020 2 commits
-
-
Georges Racinet authored
…not to be confused with the fact that our default method actually does a fast-forward if merge is not needed
-
Georges Racinet authored
To my surprise, I didn't find an API parameter to do this, had to fallback to using Selenium.
-
- 16 Feb, 2020 1 commit
-
-
Georges Racinet authored
The intent of 2b6ab4a10a1a was to move them aside, but it's been only half committed, resulting in copying them. This is the second half
-
- 15 Feb, 2020 3 commits
-
-
Georges Racinet authored
a shortcut to simplify getting a full node id, aka revision hash
-
Georges Racinet authored
-
Georges Racinet authored
-
- 09 Feb, 2020 2 commits
-
-
Georges Racinet authored
-
Georges Racinet authored
Somewhere between 10.8.0.pre and 11.2.0.pre, the success return code changes from 204 to 202 (the same as for projects)
-
- 26 Jan, 2020 1 commit
-
-
Georges Racinet authored
It seems that things are much more asynchronous if running with Gitaly for the Git inner repo.
-
- 28 Jan, 2020 2 commits
-
-
Georges Racinet authored
It was a mistake to perform assertions from inside the api_import_url helper: that prevents returning a `Project` instance for teardown. We're keeping the assertion about retrieval of project data, it's valuable information and chances that the project could be destroyed if that fails look slim.
-
Georges Racinet authored
Previously, it was based on the time spent spleeping, which becomes a problem if some of the calls turn out to last a non negligible amount of time (including because of pdb etc).
-
- 26 Jan, 2020 2 commits
-
-
Georges Racinet authored
helps reducing the boiler plate in tests
-
Georges Racinet authored
it's just more readable and focused that way
-
- 24 Jan, 2020 5 commits
-
-
Georges Racinet authored
-
Georges Racinet authored
On a bare, empty instance, the root URI is redirected to the sign-in page, but depending on this goes in the way of performing pre-flight tests on an already configured instance. There are many reasons the instance could be pre configured: - if configuration is automatic - if it already has a restored backup
-
Georges Racinet authored
The code paths are indeed quite different for this, and it's been demonstrated with the last remnaining bug of heptapod#72 before Heptapod 0.8.1 being for HTTP only.
-
Georges Racinet authored
It was convenient at first, but now that we also need to run the tests without file system access, it's been a liability to conflate basic push and hook environment aspects.
-
Georges Racinet authored
-
- 19 Jan, 2020 10 commits
-
-
Georges Racinet authored
-
Georges Racinet authored
This will be useful for testing on remote servers, since we can't know it in advance. We could probably request the API for that but we aren't at this point (and it would slow the tests down a bit). The default value is 'git', though.
-
Georges Racinet authored
This is controlled by the new `--heptapod-remote` option. It has the effect of skipping all tests marked with `@needs.fs_access`. This works by instantiation of the base `Heptapod` class for the `heptapod` fixture
-
Georges Racinet authored
Obviously the direct `rm -rf` can't succede without file system access. Not such a big deal because api_destroy is quite reliable these days, except for cases of failed creation as it can happen in import tests, in which we don't have a project id to feed the API.
-
Georges Racinet authored
There's nothing for now the tests can do to reconver from that without the ability to directly call psql
-
Georges Racinet authored
-
Georges Racinet authored
In particular, capabilities such as `fs_access` are now expressed as class attributes that will be queried for conditional skipping or to disable some fixture extra behaviours, such as second cleanup passes and the like. Some methods are now implemented by the base class, if only to raise a catchable `NotImplementedError`
-
Georges Racinet authored
For the time being (see heptapod#165), all tests that tweak server-side HGRCs need filesystem access. Those that load repos directly from tarballs need it as well
-
Georges Racinet authored
This uses the mark system of pytest, and will be leveraged for conditional skipping in a later move
-
Georges Racinet authored
The first test does not make a non-topic draft in the source project, and hence doesn't need to tweak its hgrc, while the second test is entirely about non-topic drafts not being published by the import process.
-
- 07 Jan, 2020 1 commit
-
-
Georges Racinet authored
For the jump to 10.5 we had to rewrite the tests to use the API creation method only. Because of this, we now need to test that the Web UI actually works. Instead on relying on the default MR proposal, that doesn't work as it used to before 10.5 in this tests and/or the structure of the general select-and-compare page, we jump straight to the compare-and-create page for the prescribed branches. Now the creation helper takes explicit source and target arguments.
-
- 15 Jan, 2020 2 commits
-
-
Georges Racinet authored
In other words, for heptapod#129
-
Georges Racinet authored
Now that we are fixing heptapod#129, we should not deviate from the default
-