Commit 2d842b61 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Merge branch 'master' of github.com:gitlabhq/gitlabhq

parents 221210a5 0a1176d6
...@@ -15,15 +15,16 @@ ...@@ -15,15 +15,16 @@
%span.file-mode= "#{diff_file.diff.a_mode}#{diff_file.diff.b_mode}" %span.file-mode= "#{diff_file.diff.a_mode}#{diff_file.diff.b_mode}"
.diff-btn-group .diff-btn-group
- unless params[:view] == 'parallel' - if blob.text?
%label - unless params[:view] == 'parallel'
= check_box_tag nil, 1, false, class: "js-toggle-diff-line-wrap" %label
Wrap text = check_box_tag nil, 1, false, class: 'js-toggle-diff-line-wrap'
  Wrap text
= link_to "#", class: "js-toggle-diff-comments btn btn-small" do  
%i.icon-chevron-down = link_to '#', class: 'js-toggle-diff-comments btn btn-small' do
Diff comments %i.icon-chevron-down
  Diff comments
 
- if @merge_request && @merge_request.source_project - if @merge_request && @merge_request.source_project
= link_to project_edit_tree_path(@merge_request.source_project, tree_join(@merge_request.source_branch, diff_file.new_path), from_merge_request_id: @merge_request.id), { class: 'btn btn-small' } do = link_to project_edit_tree_path(@merge_request.source_project, tree_join(@merge_request.source_branch, diff_file.new_path), from_merge_request_id: @merge_request.id), { class: 'btn btn-small' } do
......
User.seed do |s| Gitlab::Seeder.quiet do
s.id = 1 User.seed do |s|
s.name = "Administrator" s.id = 1
s.email = "admin@example.com" s.name = 'Administrator'
s.username = 'root' s.email = 'admin@example.com'
s.password = "5iveL!fe" s.username = 'root'
s.password_confirmation = "5iveL!fe" s.password = '5iveL!fe'
s.admin = true s.password_confirmation = '5iveL!fe'
s.projects_limit = 100 s.admin = true
s.confirmed_at = DateTime.now s.projects_limit = 100
s.confirmed_at = DateTime.now
end
end end
...@@ -20,4 +20,22 @@ Gitlab::Seeder.quiet do ...@@ -20,4 +20,22 @@ Gitlab::Seeder.quiet do
print '.' print '.'
end end
end end
project = Project.find_with_namespace('gitlab-org/testme')
params = {
source_branch: 'feature',
target_branch: 'master',
title: 'Can be automatically merged'
}
MergeRequests::CreateService.new(project, User.admins.first, params).execute
print '.'
params = {
source_branch: 'feature_conflict',
target_branch: 'feature',
title: 'Cannot be automatically merged'
}
MergeRequests::CreateService.new(project, User.admins.first, params).execute
print '.'
end end
...@@ -24,12 +24,32 @@ Feature: Project Browse files ...@@ -24,12 +24,32 @@ Feature: Project Browse files
Given I click on "new file" link in repo Given I click on "new file" link in repo
Then I can see new file page Then I can see new file page
@javascript
Scenario: I can create and commit file
Given I click on "new file" link in repo
And I edit code
And I fill the new file name
And I fill the commit message
And I click on "Commit changes"
Then I am redirected to the new file
And I should see its new content
@javascript @javascript
Scenario: I can edit file Scenario: I can edit file
Given I click on ".gitignore" file in repo Given I click on ".gitignore" file in repo
And I click button "edit" And I click button "edit"
Then I can edit code Then I can edit code
@javascript
Scenario: I can edit and commit file
Given I click on ".gitignore" file in repo
And I click button "edit"
And I edit code
And I fill the commit message
And I click on "Commit changes"
Then I am redirected to the ".gitignore"
And I should see its new content
@javascript @javascript
Scenario: I can see editing preview Scenario: I can see editing preview
Given I click on ".gitignore" file in repo Given I click on ".gitignore" file in repo
...@@ -38,6 +58,16 @@ Feature: Project Browse files ...@@ -38,6 +58,16 @@ Feature: Project Browse files
And I click link "Diff" And I click link "Diff"
Then I see diff Then I see diff
@javascript
Scenario: I can remove file and commit
Given I click on ".gitignore" file in repo
And I see the ".gitignore"
And I click on "remove"
And I fill the commit message
And I click on "Remove file"
Then I am redirected to the files URL
And I don't see the ".gitignore"
Scenario: I can browse directory with Browse Dir Scenario: I can browse directory with Browse Dir
Given I click on files directory Given I click on files directory
And I click on history link And I click on history link
......
...@@ -16,12 +16,24 @@ class Spinach::Features::ProjectBrowseFiles < Spinach::FeatureSteps ...@@ -16,12 +16,24 @@ class Spinach::Features::ProjectBrowseFiles < Spinach::FeatureSteps
page.should have_content "LICENSE" page.should have_content "LICENSE"
end end
step 'I see the ".gitignore"' do
page.should have_content '.gitignore'
end
step 'I don\'t see the ".gitignore"' do
page.should_not have_content '.gitignore'
end
step 'I click on ".gitignore" file in repo' do step 'I click on ".gitignore" file in repo' do
click_link ".gitignore" click_link ".gitignore"
end end
step 'I should see its content' do step 'I should see its content' do
page.should have_content "*.rbc" page.should have_content old_gitignore_content
end
step 'I should see its new content' do
page.should have_content new_gitignore_content
end end
step 'I click link "raw"' do step 'I click link "raw"' do
...@@ -37,18 +49,38 @@ class Spinach::Features::ProjectBrowseFiles < Spinach::FeatureSteps ...@@ -37,18 +49,38 @@ class Spinach::Features::ProjectBrowseFiles < Spinach::FeatureSteps
end end
step 'I can edit code' do step 'I can edit code' do
execute_script('editor.setValue("GitlabFileEditor")') set_new_content
evaluate_script('editor.getValue()').should == "GitlabFileEditor" evaluate_script('editor.getValue()').should == new_gitignore_content
end end
step 'I edit code' do step 'I edit code' do
execute_script('editor.setValue("GitlabFileEditor")') set_new_content
end
step 'I fill the new file name' do
fill_in :file_name, with: new_file_name
end
step 'I fill the commit message' do
fill_in :commit_message, with: 'Not yet a commit message.'
end end
step 'I click link "Diff"' do step 'I click link "Diff"' do
click_link 'Diff' click_link 'Diff'
end end
step 'I click on "Commit changes"' do
click_button 'Commit changes'
end
step 'I click on "remove"' do
click_link 'remove'
end
step 'I click on "Remove file"' do
click_button 'Remove file'
end
step 'I see diff' do step 'I see diff' do
page.should have_css '.line_holder.new' page.should have_css '.line_holder.new'
end end
...@@ -97,12 +129,48 @@ class Spinach::Features::ProjectBrowseFiles < Spinach::FeatureSteps ...@@ -97,12 +129,48 @@ class Spinach::Features::ProjectBrowseFiles < Spinach::FeatureSteps
click_link 'permalink' click_link 'permalink'
end end
step 'I am redirected to the files URL' do
current_path.should == project_tree_path(@project, 'master')
end
step 'I am redirected to the ".gitignore"' do
expect(current_path).to eq(project_blob_path(@project, 'master/.gitignore'))
end
step 'I am redirected to the permalink URL' do step 'I am redirected to the permalink URL' do
expect(current_path).to eq(project_blob_path( expect(current_path).to eq(project_blob_path(
@project, @project.repository.commit.sha + '/.gitignore')) @project, @project.repository.commit.sha + '/.gitignore'))
end end
step 'I am redirected to the new file' do
expect(current_path).to eq(project_blob_path(
@project, 'master/' + new_file_name))
end
step "I don't see the permalink link" do step "I don't see the permalink link" do
expect(page).not_to have_link('permalink') expect(page).not_to have_link('permalink')
end end
private
def set_new_content
execute_script("editor.setValue('#{new_gitignore_content}')")
end
# Content of the gitignore file on the seed repository.
def old_gitignore_content
'*.rbc'
end
# Constant value that differs from the content
# of the gitignore of the seed repository.
def new_gitignore_content
old_gitignore_content + 'a'
end
# Constant value that is a valid filename and
# not a filename present at root of the seed repository.
def new_file_name
'not_a_file.md'
end
end end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment