Add feature tests for real-time pipeline#show and merge_requests#show

Description

Recently Gitlab added a feature of rendering pipeline-mini-graph in real-time for merge request window. And those real-time processing will be adopted little by little into each page, such as pipeline index/show page. However, the test has not fully prepared yet, and the needs would be on demand in the future.

We also need a dedicated mock class of pipeline processing.

e.g.

scenario '...' do
  runner = create_runner(pipeline) # create a runner which processes the pipeline
  expect(page).to have_selector(...)

  # Process the first stage
  runner.start # stage: 'build' - job1 running
  expect(page).to have_selector(...)

  # Finishes the first stage
  runner.proceed_with(:success) # stage: 'build' - job1 success -> stage: 'test' - job2 running
  expect(page).to have_selector(...)
end

(NOTE: This class design may be changed)

Proposal

  1. Add feature tests with a dedicated mock class of pipeline processing
  2. The MR should reproduce
  • https://gitlab.com/gitlab-org/gitlab-ce/issues/31127
  • https://gitlab.com/gitlab-org/gitlab-ce/issues/31678
  • https://gitlab.com/gitlab-org/gitlab-ce/issues/25226#note_28964273
  1. Check the bug will be fixed by https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/11087

Links / references

Real-time && feature-tests missing

  • pipeline#show
  • merge_requests#show

Related: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/10777

/cc @grzesiek @godfat

Edited Jul 27, 2020 by Jason Yavorsky
Assignee Loading
Time tracking Loading