diff options
author | Douwe Maan <douwe@gitlab.com> | 2016-07-11 20:51:57 +0300 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2016-07-11 20:51:57 +0300 |
commit | ef9ba9050e65f9f5572100989745b1b39f764b3b (patch) | |
tree | 7fd752c121b8a6c73c3872cc4733cacd8aececfb /features | |
parent | 78a356a433f2be70ff58450b6b1d2e9b9524a9bd (diff) | |
parent | 8ee3c28bcde45e0719e0ef76731b9c92edfcddd9 (diff) |
Merge branch 'single-file-diffs' into 'master'
Single file diffs
Closes #14103. Related (not part of this MR): #19553.
This adds a `diff_for_path` action to each place we render diffs (commit, compare, new MR, existing MR) which renders the diff for a single path. The action is always available with the same params as the 'parent' action, to make it simpler to generate the URIs.
If a diff is bigger than 10 KB, it will be collapsed by default and have a data attribute added. You can then click the message or the filename to expand that diff. For expanded files, you can collapse and expand them, but they won't make any AJAX requests.
![Expand_and_collapse_diffs](/uploads/a4072029085082b85c47006f67ac531c/Expand_and_collapse_diffs.gif)
See merge request !4990
Diffstat (limited to 'features')
-rw-r--r-- | features/project/commits/commits.feature | 5 | ||||
-rw-r--r-- | features/steps/project/commits/commits.rb | 19 |
2 files changed, 0 insertions, 24 deletions
diff --git a/features/project/commits/commits.feature b/features/project/commits/commits.feature index a95df038357..8b0cb90765e 100644 --- a/features/project/commits/commits.feature +++ b/features/project/commits/commits.feature @@ -83,11 +83,6 @@ Feature: Project Commits #Given I visit my project's commits stats page #Then I see commits stats - Scenario: I browse big commit - Given I visit big commit page - Then I see big commit warning - And I see "Reload with full diff" link - Scenario: I browse a commit with an image Given I visit a commit with an image that changed Then The diff links to both the previous and current image diff --git a/features/steps/project/commits/commits.rb b/features/steps/project/commits/commits.rb index 239036e431d..bea9f9d198b 100644 --- a/features/steps/project/commits/commits.rb +++ b/features/steps/project/commits/commits.rb @@ -125,25 +125,6 @@ class Spinach::Features::ProjectCommits < Spinach::FeatureSteps expect(page).to have_content 'Authors' end - step 'I visit big commit page' do - # Create a temporary scope to ensure that the stub_const is removed after user - RSpec::Mocks.with_temporary_scope do - stub_const('Gitlab::Git::DiffCollection::DEFAULT_LIMITS', { max_lines: 1, max_files: 1 }) - visit namespace_project_commit_path(@project.namespace, @project, sample_big_commit.id) - end - end - - step 'I see big commit warning' do - expect(page).to have_content sample_big_commit.message - expect(page).to have_content "Too many changes" - end - - step 'I see "Reload with full diff" link' do - link = find_link('Reload with full diff') - expect(link[:href]).to end_with('?force_show_diff=true') - expect(link[:href]).not_to include('.html') - end - step 'I visit a commit with an image that changed' do visit namespace_project_commit_path(@project.namespace, @project, sample_image_commit.id) end |