- 03 Nov, 2020 3 commits
-
-
Georges Racinet authored
Amazingly, the `owner_api_request()` shortcut was all we needed for a long time, but we'll now will need to be able to pass the user explicitely.
-
Georges Racinet authored
-
Georges Racinet authored
This will help reducing the boiler plate and over long statements. Leveraging in test_import for immediate testing.
-
- 17 Nov, 2020 1 commit
-
-
Georges Racinet authored
The good thing is that we finally get back to sanity with boolean operators. This is now legit: if something and othercondition:
-
- 15 Oct, 2020 1 commit
-
-
Georges Racinet authored
This provides the way to test the repository download links (which are backed by `hg archive` and `git archive`).
-
- 12 Oct, 2020 1 commit
-
-
Georges Racinet authored
This option makes the functional tests create Mercurial native projects instead of the default type (currently `hg_git`). Hence it will be the main tool to validate HGitaly related developments. Later on, we might want to introduce dedicated CI jobs. Switching to parametrization can also be considered, but it wouldn't change so much in CI, because we now have tests sharding. The new flag is stored on the `Heptapod` object, for lack of better choice in the short term (arguably, that's not a property of the Heptapod server).
-
- 06 Oct, 2020 1 commit
-
-
Georges Racinet authored
For server-side operations, we should use the one provided by the server, obviously. The immediate need is that it varies amongst installation types With The new Omnibus packaging method (omnibus-heptapod!3) for Heptapod 0.17, it changes from /usr/local/bin (expected to be on PATH) to /opt/gitlab/embedded/bin. There are several TODOs: - read `hg_executable` from config, with remote instances being the only exceptions (but these wouldn't call server-side subprocesses from the tests). - provide a direct helper method on `Heptapod` - do the same for Git
-
- 27 Sep, 2020 1 commit
-
-
Georges Racinet authored
We still wait on the link to be displayed, but returning the whole `li` element will be useful for finer assertions, e.g., about commit SHAs. The consequence is that the `text` attribute of the returned elements is broader, encompassing the commit title, authorship and short id. --HG-- branch : stable
-
- 25 Sep, 2020 1 commit
-
-
Georges Racinet authored
It will be nicer to have it accessible from `utils.selenium` for various tests. --HG-- branch : stable
-
- 24 Sep, 2020 1 commit
-
-
Georges Racinet authored
--HG-- branch : stable
-
- 28 Aug, 2020 1 commit
-
-
Georges Racinet authored
The confirmation modal has changed a lot (the principle stays the same), including the text to type, that we now simply copy for better independence (now has a verb and the full path). We've observed the `id` for the `modal` element to differ between source and Docker contexts. Using the `<div class="modal-dialog>` ancestor wouldn't be appropriate as the corresponding CSS selector returns another one.
-
- 23 Jul, 2020 2 commits
-
-
Georges Racinet authored
This is a bit cleaner. --HG-- branch : heptapod-0-14
-
Georges Racinet authored
There's nothing Project specific about which key, and which SSH options to use: everything is related instead to the user. Besides, for Personal Snippets repository tests, we'll need to perform SSH operations without any Project context. --HG-- branch : heptapod-0-14
-
- 17 Jul, 2020 1 commit
-
-
Georges Racinet authored
--HG-- branch : heptapod-0-14
-
- 16 Jul, 2020 1 commit
-
-
Georges Racinet authored
Previously we were relying on the global application setting to infer if a project is on legacy or hashed storage. This was obviously approximative, but on GitLab 13, that setting doesn't exist any more and all new projects are on the hashed storage. We introduce here a new boolean property on the project and methods to switch from hashed to legacy and back.
-
- 03 Jun, 2020 1 commit
-
-
Georges Racinet authored
All explanations are in the code comments.
-
- 06 Jun, 2020 1 commit
-
-
Georges Racinet authored
To recall, in this test, the user has no quota to create personal projects, but can still create a project in a group. In some cases (and especially on the future GitLab 12.10), the removal of the group wouldn't remove the just created project, or at least not right away, making subsequent runs fail because there's already a project with that name. We could have made the project name unique, but it's better to leak less and to tighten the detection.
-
- 05 Jun, 2020 2 commits
-
-
Georges Racinet authored
This is a step towards having only User instances on the Heptapod object.
-
Georges Racinet authored
After this change, no test gets a webdriver directly from the dict on Heptapod object, opening the road to make webdriver initialization lazy.
-
- 03 Jun, 2020 3 commits
-
-
Georges Racinet authored
This is more direct than `webdriver_retrieve()`, with the usual benefits of API methods: performance and stability In this particular case, we were relying on the full session cookie to be accepted in the API, which is not guaranteed to be acceptable in the long run. At this point `webdriver_retrieve()` is not called any more, but we're not removing it right away.
-
Georges Racinet authored
The `wait_availability` kwarg is replaced by the separate `wait_hg_availability()` method, so that it can also be used with other project retrieval methods that we're going to add.
-
Georges Racinet authored
It's a good thing not to rely on webdriver methods for this, as it is faster and more stable.
-
- 27 May, 2020 1 commit
-
-
Georges Racinet authored
It will wait automatically for the rebase to be finished and assert its success. We could later on add options to test bad rebases if we need to.
-
- 09 May, 2020 1 commit
-
-
Georges Racinet authored
The API method won't work for a while, wrote them before noticing the version information in online documentation. So we had to make a lengthy webdriver_create_deploy_token, hoping the page structure won't change too much before we can rely on the API methods.
-
- 19 May, 2020 1 commit
-
-
Georges Racinet authored
--HG-- branch : heptapod-0-12
-
- 14 May, 2020 1 commit
-
-
Georges Racinet authored
-
- 12 May, 2020 2 commits
-
-
Georges Racinet authored
We'll start soon to write basic tests for Git support, currently SSH would be the only transport expected to work.
-
Georges Racinet authored
These will be useful in `test_repo_files`, but also in many places, notably if VCS independence is seeked.
-
- 07 May, 2020 1 commit
-
-
Georges Racinet authored
At this stage of Heptapod, the API returns Git SHAs, so we have to use it again to get the details. Usually our tests are made so that a commit can be identified by its message (`'title'` key of the returned dict) --HG-- branch : heptapod-0-12
-
- 28 Apr, 2020 2 commits
-
-
Georges Racinet authored
Amazing that it didn't exist before.
-
Georges Racinet authored
This one assumes the webdriver is already on the "New project" page. It will save time in some tests, and also does not require a permanent user (ie registered to the `Heptapod` instance) and can work with a fixture such as `external_user`
-
- 02 Apr, 2020 1 commit
-
-
Georges Racinet authored
By the time that cache had been introduced, the tests were running on the hashed storage only (GitLab 12 default). In that case, transferring a project does not change the repo path on the filesystem, but it does on the legacy storage.
-
- 27 Mar, 2020 2 commits
-
-
Georges Racinet authored
This finishes make tests needing FS access work on Heptapod 0.12 Docker images
-
Georges Racinet authored
The hashed storage has not become the universal default, for instance it's not for our current 0.12 Docker images.
-
- 25 Mar, 2020 1 commit
-
-
Georges Racinet authored
-
- 14 Mar, 2020 2 commits
-
-
Georges Racinet authored
This makes one less test to rely on FS access, and that one was creating doubt in case of failures in tests that use the PUT for their setup.
-
Georges Racinet authored
By default, projects are in the hashed path, which is derived from the SHA256 of the decimal representation of their `id`. In `load_tarball` we introduce a new convention that the tarball should make two directories, `hg` and `git` that will become PATH_TO_PROJECT.hg and PATH_TO_PROJECT.git respectively, and update the `issue-3.tar` accordingly.
-
- 10 Mar, 2020 1 commit
-
-
Georges Racinet authored
Our current solution for updating commits upon rebase/push does not produce "user x added n commits" in the discussion page, yet it fills the commit panel correctly. We consider that to be good enough. Reading the commit panel is done as a new method on the project so that we can easily test that it is as expected in other MR cases (has been problematic with GitLab 12)
-
- 29 Feb, 2020 1 commit
-
-
See heptapod#208, this is currently possible because of the inner auxiliary Git repo, but that's a pure source of trouble. --HG-- branch : heptapod-0-8
-
- 14 Mar, 2020 1 commit
-
-
Georges Racinet authored
This will be useful for users of `assert_wait_api_branches`, that returns the full branches information.
-