1.1pre1
This commit is contained in:
parent
3a2b273316
commit
6b030fd41d
83 changed files with 1089 additions and 136 deletions
|
@ -14,6 +14,22 @@ describe "Profile" do
|
|||
it { page.should have_content(@user.email) }
|
||||
end
|
||||
|
||||
describe "Profile update" do
|
||||
before do
|
||||
visit profile_path
|
||||
fill_in "user_skype", :with => "testskype"
|
||||
fill_in "user_linkedin", :with => "testlinkedin"
|
||||
fill_in "user_twitter", :with => "testtwitter"
|
||||
click_button "Save"
|
||||
@user.reload
|
||||
end
|
||||
|
||||
it { @user.skype.should == 'testskype' }
|
||||
it { @user.linkedin.should == 'testlinkedin' }
|
||||
it { @user.twitter.should == 'testtwitter' }
|
||||
end
|
||||
|
||||
|
||||
describe "Password update" do
|
||||
before do
|
||||
visit profile_password_path
|
||||
|
|
|
@ -82,12 +82,18 @@ describe "Projects" do
|
|||
end
|
||||
|
||||
describe "GET /project_code/blob" do
|
||||
it { blob_project_path(@project).should be_allowed_for @u1 }
|
||||
it { blob_project_path(@project).should be_allowed_for @u3 }
|
||||
it { blob_project_path(@project).should be_denied_for :admin }
|
||||
it { blob_project_path(@project).should be_denied_for @u2 }
|
||||
it { blob_project_path(@project).should be_denied_for :user }
|
||||
it { blob_project_path(@project).should be_denied_for :visitor }
|
||||
before do
|
||||
@commit = @project.commit
|
||||
@path = @commit.tree.contents.select { |i| i.is_a?(Grit::Blob)}.first.name
|
||||
@blob_path = blob_project_path(@project, :commit_id => @commit.id, :path => @path)
|
||||
end
|
||||
|
||||
it { @blob_path.should be_allowed_for @u1 }
|
||||
it { @blob_path.should be_allowed_for @u3 }
|
||||
it { @blob_path.should be_denied_for :admin }
|
||||
it { @blob_path.should be_denied_for @u2 }
|
||||
it { @blob_path.should be_denied_for :user }
|
||||
it { @blob_path.should be_denied_for :visitor }
|
||||
end
|
||||
|
||||
describe "GET /project_code/edit" do
|
||||
|
@ -107,5 +113,14 @@ describe "Projects" do
|
|||
it { project_issues_path(@project).should be_denied_for :user }
|
||||
it { project_issues_path(@project).should be_denied_for :visitor }
|
||||
end
|
||||
|
||||
describe "GET /project_code/snippets" do
|
||||
it { project_snippets_path(@project).should be_allowed_for @u1 }
|
||||
it { project_snippets_path(@project).should be_allowed_for @u3 }
|
||||
it { project_snippets_path(@project).should be_denied_for :admin }
|
||||
it { project_snippets_path(@project).should be_denied_for @u2 }
|
||||
it { project_snippets_path(@project).should be_denied_for :user }
|
||||
it { project_snippets_path(@project).should be_denied_for :visitor }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -72,7 +72,10 @@ describe "Projects" do
|
|||
current_path.should == project_path(@project)
|
||||
end
|
||||
|
||||
it_behaves_like :tree_view
|
||||
it "should beahave like dashboard" do
|
||||
page.should have_content("History")
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
describe "GET /projects/team" do
|
||||
|
@ -134,8 +137,6 @@ describe "Projects" do
|
|||
it "should show project" do
|
||||
page.should have_content("Awesome")
|
||||
end
|
||||
|
||||
it_behaves_like :tree_view
|
||||
end
|
||||
|
||||
#describe "DELETE /projects/:id", :js => true do
|
||||
|
|
101
spec/requests/snippets_spec.rb
Normal file
101
spec/requests/snippets_spec.rb
Normal file
|
@ -0,0 +1,101 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe "Snippets" do
|
||||
let(:project) { Factory :project }
|
||||
|
||||
before do
|
||||
login_as :user
|
||||
project.add_access(@user, :read, :write)
|
||||
end
|
||||
|
||||
describe "GET /snippets" do
|
||||
before do
|
||||
@snippet = Factory :snippet,
|
||||
:author => @user,
|
||||
:project => project
|
||||
|
||||
visit project_snippets_path(project)
|
||||
end
|
||||
|
||||
subject { page }
|
||||
|
||||
it { should have_content(@snippet.title) }
|
||||
it { should have_content(@snippet.project.name) }
|
||||
it { should have_content(@snippet.author.name) }
|
||||
|
||||
describe "Destroy" do
|
||||
before do
|
||||
# admin access to remove snippet
|
||||
@user.users_projects.destroy_all
|
||||
project.add_access(@user, :read, :write, :admin)
|
||||
visit project_snippets_path(project)
|
||||
end
|
||||
|
||||
it "should remove entry" do
|
||||
expect {
|
||||
click_link "destroy_snippet_#{@snippet.id}"
|
||||
}.to change { Snippet.count }.by(-1)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe "New snippet" do
|
||||
before do
|
||||
visit project_snippets_path(project)
|
||||
click_link "New Snippet"
|
||||
end
|
||||
|
||||
it "should open new snippet popup" do
|
||||
page.current_path.should == new_project_snippet_path(project)
|
||||
end
|
||||
|
||||
describe "fill in" do
|
||||
before do
|
||||
fill_in "snippet_title", :with => "login function"
|
||||
fill_in "snippet_file_name", :with => "test.rb"
|
||||
fill_in "snippet_content", :with => "def login; end"
|
||||
end
|
||||
|
||||
it { expect { click_button "Save" }.to change {Snippet.count}.by(1) }
|
||||
|
||||
it "should add new snippet to table" do
|
||||
click_button "Save"
|
||||
page.current_path.should == project_snippet_path(project, Snippet.last)
|
||||
page.should have_content "login function"
|
||||
page.should have_content "test.rb"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe "Edit snippet" do
|
||||
before do
|
||||
@snippet = Factory :snippet,
|
||||
:author => @user,
|
||||
:project => project
|
||||
visit project_snippets_path(project)
|
||||
click_link "Edit"
|
||||
end
|
||||
|
||||
it "should open edit page" do
|
||||
page.current_path.should == edit_project_snippet_path(project, @snippet)
|
||||
end
|
||||
|
||||
describe "fill in" do
|
||||
before do
|
||||
fill_in "snippet_title", :with => "login function"
|
||||
fill_in "snippet_file_name", :with => "test.rb"
|
||||
fill_in "snippet_content", :with => "def login; end"
|
||||
end
|
||||
|
||||
it { expect { click_button "Save" }.to_not change {Snippet.count} }
|
||||
|
||||
it "should update snippet fields" do
|
||||
click_button "Save"
|
||||
|
||||
page.current_path.should == project_snippet_path(project, @snippet)
|
||||
page.should have_content "login function"
|
||||
page.should have_content "test.rb"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
|
@ -7,6 +7,15 @@ describe "TeamMembers" do
|
|||
@project.add_access(@user, :read, :admin)
|
||||
end
|
||||
|
||||
describe "View profile" do
|
||||
it "should be available" do
|
||||
visit(team_project_path(@project))
|
||||
find(:xpath, "//table[@id='team-table']//a[1]").click
|
||||
page.should have_content @user.skype
|
||||
page.should_not have_content 'Twitter'
|
||||
end
|
||||
end
|
||||
|
||||
describe "New Team member", :js => true do
|
||||
before do
|
||||
@user_1 = Factory :user
|
||||
|
|
|
@ -7,10 +7,10 @@ describe "Users Security" do
|
|||
end
|
||||
|
||||
describe "GET /login" do
|
||||
it { new_user_session_path.should be_denied_for @u1 }
|
||||
it { new_user_session_path.should be_denied_for :admin }
|
||||
it { new_user_session_path.should be_denied_for :user }
|
||||
it { new_user_session_path.should be_allowed_for :visitor }
|
||||
#it { new_user_session_path.should be_denied_for @u1 }
|
||||
#it { new_user_session_path.should be_denied_for :admin }
|
||||
#it { new_user_session_path.should be_denied_for :user }
|
||||
it { new_user_session_path.should_not be_404_for :visitor }
|
||||
end
|
||||
|
||||
describe "GET /keys" do
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue