GitLab FOSS merge requestshttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests2017-10-25T00:07:30Zhttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14742Cleanup data-page attribute after each Karma test2017-10-25T00:07:30Zusername-removed-892863contact@ericeastwood.comCleanup data-page attribute after each Karma test## What does this MR do?
- Cleanup `data-page` attribute after each Karma test to avoid leaking into the next test
## Are there points in the code the reviewer needs to double check?
- Are we okay with moving to consistent `.attr('d...## What does this MR do?
- Cleanup `data-page` attribute after each Karma test to avoid leaking into the next test
## Are there points in the code the reviewer needs to double check?
- Are we okay with moving to consistent `.attr('data-page', ...` for easier Ctrl+F?
## Why was this MR needed?
See https://gitlab.com/gitlab-org/gitlab-ce/issues/38871
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by Frontend
- [x] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #38871https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14682Make use of a `gitlab-qa-sandbox` group if available2017-10-24T23:58:10ZRobert SpeicherMake use of a `gitlab-qa-sandbox` group if availableThis will use a top-level group if it's available, or create one if it's
not, then create our `qa_test_*` groups as subgroups of the sandbox
group.
See https://gitlab.com/gitlab-org/gitlab-ce/issues/37996
This does not yet fully addres...This will use a top-level group if it's available, or create one if it's
not, then create our `qa_test_*` groups as subgroups of the sandbox
group.
See https://gitlab.com/gitlab-org/gitlab-ce/issues/37996
This does not yet fully address @grzesiek's note:
> Note that we might want to pass top-level group name using an environment variable, and create one if environment variable is not set to make it work with any instance.Grzegorz BizonGrzegorz Bizonhttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14653Replaces `tag: true` into `:tag` in the specs2017-10-24T23:58:08Zusername-removed-331646intrip@gmail.comReplaces `tag: true` into `:tag` in the specs## What does this MR do?
- Replaces all the explicit include metadata syntax in the specs `tag:true` into the implicit one `:tag`.
- Added a cop to prevent future errors and handle autocorrection.
## Are there points in the code t...## What does this MR do?
- Replaces all the explicit include metadata syntax in the specs `tag:true` into the implicit one `:tag`.
- Added a cop to prevent future errors and handle autocorrection.
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [x] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #3755210.1username-removed-128633username-removed-128633https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14512WIP: Refactor the testing documentation and divide it into multiple pages2017-10-25T00:07:32Zusername-removed-128633WIP: Refactor the testing documentation and divide it into multiple pagesSee the general Documentation guidelines http://docs.gitlab.com/ce/development/doc_styleguide.html
## What does this MR do?
(briefly describe what this MR is about)
## Moving docs to a new location?
See the guidelines: http://docs.gi...See the general Documentation guidelines http://docs.gitlab.com/ce/development/doc_styleguide.html
## What does this MR do?
(briefly describe what this MR is about)
## Moving docs to a new location?
See the guidelines: http://docs.gitlab.com/ce/development/doc_styleguide.html#changing-document-location
- [ ] Make sure the old link is not removed and has its contents replaced with a link to the new location.
- [ ] Make sure internal links pointing to the document in question are not broken.
- [ ] Search and replace any links referring to old docs in GitLab Rails app, specifically under the `app/views/` directory.
- [ ] If working on CE, submit an MR to EE with the changes as well.10.1username-removed-128633username-removed-128633https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14164WIP: Run migration specs separately as part of the `migration:path-*` jobs2017-09-11T16:59:20ZRobert SpeicherWIP: Run migration specs separately as part of the `migration:path-*` jobsIdea from https://gitlab.com/gitlab-org/gitlab-ce/issues/37608#note_39727527Idea from https://gitlab.com/gitlab-org/gitlab-ce/issues/37608#note_3972752710.1Robert SpeicherRobert Speicherhttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13834Add log splitter for CI rspec failed examples2017-09-26T10:44:50Zusername-removed-864731maks.rydkin@gmail.comAdd log splitter for CI rspec failed examples## What does this MR do?
- Adds log splitter from this blogpost (section `Change #3 — Extracting logs from failed tests`) - https://building.buildkite.com/5-ways-weve-improved-flakey-test-debugging-4b3cfb9f27c8#f03c (gist - https://gi...## What does this MR do?
- Adds log splitter from this blogpost (section `Change #3 — Extracting logs from failed tests`) - https://building.buildkite.com/5-ways-weve-improved-flakey-test-debugging-4b3cfb9f27c8#f03c (gist - https://gist.github.com/keithpitt/74950281d01b11bac7b076fb1d3eda1a)
- Example of artifact in this failed job - https://gitlab.com/innerwhisper/gitlab-ce/-/jobs/31416936 (directory `log/test`)
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
It helps to work:
- with flaky tests: with it we can catch errors in test environment logs
- with any failed specs: we can analyze them using CI artifacts
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?10.1username-removed-864731maks.rydkin@gmail.comusername-removed-864731maks.rydkin@gmail.comhttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13322WIP: Experiment to use build_stubbed instead of create in model specs2017-09-07T16:34:19Zusername-removed-128633WIP: Experiment to use build_stubbed instead of create in model specs## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs....## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- Tests
- [ ] Added for this feature/bug
- [ ] All builds are passing
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] Branch has no merge conflicts with `master` (if it does - rebase it please)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #36008username-removed-128633username-removed-128633https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13321WIP: Experiment to make user/author use project.creator in factories2017-09-06T11:56:57Zusername-removed-128633WIP: Experiment to make user/author use project.creator in factories## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs....## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- Tests
- [ ] Added for this feature/bug
- [ ] All builds are passing
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] Branch has no merge conflicts with `master` (if it does - rebase it please)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #36009username-removed-128633username-removed-128633https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13237Improve MR feature specs and reduce duplication2017-08-16T12:11:34Zusername-removed-128633Improve MR feature specs and reduce duplication## What does this MR do?
In this MR:
- Better organization of files:
- `spec/features/merge_request/` => single MR scenari
- `spec/features/merge_requests/` => MRs list scenari
- Better file naming: `<actor>_<action>_spec.rb...## What does this MR do?
In this MR:
- Better organization of files:
- `spec/features/merge_request/` => single MR scenari
- `spec/features/merge_requests/` => MRs list scenari
- Better file naming: `<actor>_<action>_spec.rb`
- Better feature title, e.g. "Merge request > User sees merge widget"
- Usage of RSpec's default DSL: `describe`, `let`, `before`, `it`
- Removal of wrong-level assertions, e.g. `expect_tokens`
- Grouping of multiple `it`
- Extraction of shared behaviors to 2 new shared examples files
Next steps:
- Migrate `features/project/merge_requests.feature` to RSpec
- Take the opportunity to remove duplicate scenari
- Further streamline redundant specs in `spec/features/merge_request/` and `spec/features/merge_requests/`
- Apply the same rules and refactoring to other feature specs
- Use `spec/features/merge_request/` and `spec/features/merge_requests/` as examples of good practices9.5username-removed-128633username-removed-128633https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/12654Fix the transient failure on runners spec2017-07-25T17:19:26ZShinya MaedaFix the transient failure on runners specFix the transient failure on runners spec
e.g. https://gitlab.com/gitlab-org/gitlab-ce/pipelines/9594945/failuresFix the transient failure on runners spec
e.g. https://gitlab.com/gitlab-org/gitlab-ce/pipelines/9594945/failureshttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/12606WIP: Upgrade capybara from 2.6.2 (2016-01-27) to 2.14.4 (most recent)2017-07-28T14:29:21ZGabriel MazettoWIP: Upgrade capybara from 2.6.2 (2016-01-27) to 2.14.4 (most recent)## What does this MR do?
Upgrade capybara to latest version in hopes of getting more stable builds.
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does ...## What does this MR do?
Upgrade capybara to latest version in hopes of getting more stable builds.
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- Tests
- [ ] Added for this feature/bug
- [ ] All builds are passing
- [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] Branch has no merge conflicts with `master` (if it does - rebase it please)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?Gabriel MazettoGabriel Mazettohttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/12533Re-add auth order spec2017-07-25T17:20:25ZDrew BlessingRe-add auth order specFixes #30220
This was originally fixed in 8.16 and was subsequently changed starting in 9.1, reintroducing this bug. There was a test, but someone removed the test when it failed. The MR re-adds the spec that was accidentally removed...Fixes #30220
This was originally fixed in 8.16 and was subsequently changed starting in 9.1, reintroducing this bug. There was a test, but someone removed the test when it failed. The MR re-adds the spec that was accidentally removed. The actual fix was re-introduced in another commit. Drew BlessingDrew Blessinghttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/12244WIP: Replace PhantomJS with headless Chrome for Rspec and Spinach tests2017-11-22T00:10:11ZStan HuWIP: Replace PhantomJS with headless Chrome for Rspec and Spinach testsTo run:
You need to download ChromeDriver 2.31 and install it: http://chromedriver.storage.googleapis.com/index.html?path=2.31/
Current Issues:
- [x] `unknown error: an X display is required for keycode conversions, consider u...To run:
You need to download ChromeDriver 2.31 and install it: http://chromedriver.storage.googleapis.com/index.html?path=2.31/
Current Issues:
- [x] `unknown error: an X display is required for keycode conversions, consider using Xvfb` (e.g. https://gitlab.com/gitlab-org/gitlab-ce/builds/18894684).
Bug report: https://bugs.chromium.org/p/chromedriver/issues/detail?id=1772. Some users mention compiling with `use_ozone` on Chrome and ChromeDriver solves this problem.
Alternatives: Use xvfb (https://github.com/Automattic/wp-e2e-tests/issues/515#issuecomment-301165065)
- [ ] https://gitlab.com/gitlab-org/gitlab-ce/-/jobs/27344249: Selenium does not support `status_code`: https://stackoverflow.com/questions/7908907/how-to-test-the-response-code-with-capybara-selenium
- [ ] https://gitlab.com/gitlab-org/gitlab-ce/-/jobs/28861088: Selenium does not support `response_headers`
- [ ] https://gitlab.com/gitlab-org/gitlab-ce/-/jobs/28877991: Selenium does not support `network_traffic`: https://stackoverflow.com/questions/12034013/is-there-any-way-to-log-http-requests-responses-using-selenium-webdriver-firefo/12036058#12036058
Be sure to read https://makandracards.com/makandra/7617-change-how-capybara-sees-or-ignores-hidden-elements about how Chrome/Selenium behaves differently with hidden elements.
Closes #30876username-removed-636429username-removed-636429https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/12172WIP: Fail tests for non-mocked Ajax requests2018-12-12T07:31:30ZWinnie HellmannWIP: Fail tests for non-mocked Ajax requests## What does this MR do?
Fail tests if Ajax requests are not mocked.
## What are the relevant issue numbers?
fixes #33715## What does this MR do?
Fail tests if Ajax requests are not mocked.
## What are the relevant issue numbers?
fixes #33715Winnie HellmannWinnie Hellmannhttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/11152WIP: Resolve "Add feature tests for real-time pipeline#show and merge_request...2017-08-15T08:04:09ZShinya MaedaWIP: Resolve "Add feature tests for real-time pipeline#show and merge_requests#show"## What does this MR do?
This MR adds feature tests for real-time pipeline update in `merge_requests#show` and `pipeline#show`. For the purpose, the dedicated helper class of mocking pipeline would be added.
## Are there points in the ...## What does this MR do?
This MR adds feature tests for real-time pipeline update in `merge_requests#show` and `pipeline#show`. For the purpose, the dedicated helper class of mocking pipeline would be added.
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
Because Currently Gitlab is working on real-time update for everything, however, there are not enough feature tests.
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- Tests
- [ ] Added for this feature/bug
- [ ] All builds are passing
- [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] Branch has no merge conflicts with `master` (if it does - rebase it please)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #31198Shinya MaedaShinya Maedahttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/10682Profile capybara network requests with poltergeist2017-05-04T20:08:17ZJames EJProfile capybara network requests with poltergeist## What
Uses poltergeist's `page.driver.network_traffic` to profile browser network requests and store them to disk. This can then be used to display total/average time per endpoint.
## Why
Help us determine which requests are s...## What
Uses poltergeist's `page.driver.network_traffic` to profile browser network requests and store them to disk. This can then be used to display total/average time per endpoint.
## Why
Help us determine which requests are slowing down our test suite. Inspired by noticing that sign in was taking seconds per test, this might help us identify other requests. If, for example, we noticed that `GET 127.0.0.1/:namespace/:project/settings/ci_cd` was taking a long time we might either opt to stub it with a quick response for tests, or to improve its performance generally.
## Preview
Output in https://gitlab.com/gitlab-org/gitlab-ce/builds/14374233, with all requests stored in the build artifacts.
<pre>
Total Time - Average Time - Endpoint
418.s - 271ms - GET 127.0.0.1/
408.s - 70ms - GET 127.0.0.1/assets/application.css
256.s - 45ms - GET 127.0.0.1/assets/print.css
235.s - 151ms - POST 127.0.0.1/users/sign_in
233.s - 144ms - GET 127.0.0.1/users/sign_in
177.s - 619ms - GET 127.0.0.1/namespace$/gitlabhq/merge_requests/$
174.s - 508ms - GET 127.0.0.1/namespace$/gitlabhq/merge_requests/$/pipeline_status.json
159.s - 427ms - GET 127.0.0.1/namespace$/gitlabhq/merge_requests/$.json
158.s - 621ms - GET 127.0.0.1/namespace$/gitlabhq/merge_requests/$/merge_check
143.s - 405ms - GET 127.0.0.1/namespace$/gitlabhq/merge_requests/$/ci_environments_status
129.s - 405ms - GET 127.0.0.1/namespace$/project$/boards/$/lists/$/issues
122.s - 343ms - GET 127.0.0.1/namespace$/gitlabhq/merge_requests/$/ci_status
90.3s - 1.11s - GET 127.0.0.1/namespace$/gitlabhq/merge_requests/$/diffs.json
79.9s - 515ms - GET 127.0.0.1/group$/gitlabhq/issues
77.6s - 392ms - GET 127.0.0.1/namespace$/gitlabhq/issues/$
70.3s - 364ms - GET 127.0.0.1/namespace$/gitlabhq/issues/$/related_branches
67.1s - 524ms - POST 127.0.0.1/namespace$/gitlabhq/notes
66.8s - 1.31s - GET 127.0.0.1/user$/gitlabhq/refs/master/logs_tree/
66.2s - 860ms - GET 127.0.0.1/namespace$/gitlabhq/merge_requests/$/diffs
65.7s - 388ms - GET 127.0.0.1/namespace$/gitlabhq/issues/$/can_create_branch
61.4s - 318ms - GET 127.0.0.1/namespace$/gitlabhq/issues/$/referenced_merge_requests
50.5s - 318ms - GET 127.0.0.1/namespace$/project$/issues
47.0s - 220ms - GET 127.0.0.1/namespace$/gitlabhq/issues/$.json
43.1s - 214ms - GET 127.0.0.1/namespace$/gitlabhq/issues/$/rendered_title
38.7s - 322ms - GET 127.0.0.1/namespace$/gitlabhq/merge_requests
31.9s - 625ms - GET 127.0.0.1/profile/two_factor_auth
28.4s - 261ms - GET 127.0.0.1/namespace$/project$/boards/$
25.4s - 1.41s - GET 127.0.0.1/namespace$/gitlabhq/refs/master/logs_tree/
22.1s - 1.58s - GET 127.0.0.1/user$/gitlabhq/wikis/home
21.9s - 318ms - GET 127.0.0.1/assets/lib/ace.js
</pre>
## Are there points in the code the reviewer needs to double check?
If we decide to use this long term:
Should we use the redash dashboard for this? How would that work?
Does this profiling slow tests down?
## Acceptance criteria
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] Tests added for this feature/bug
## Relevant issues
Closes #30923James EJJames EJ