Fixed some tests and snippet colorize
This commit is contained in:
parent
470aa7675e
commit
9304d049de
13 changed files with 64 additions and 68 deletions
|
@ -74,6 +74,6 @@ class Admin::GroupsController < AdminController
|
|||
private
|
||||
|
||||
def group
|
||||
@group = Group.find_by_code(params[:id])
|
||||
@group = Group.find_by_path(params[:id])
|
||||
end
|
||||
end
|
||||
|
|
|
@ -50,7 +50,7 @@ class GroupsController < ApplicationController
|
|||
protected
|
||||
|
||||
def group
|
||||
@group ||= Group.find_by_code(params[:id])
|
||||
@group ||= Group.find_by_path(params[:id])
|
||||
end
|
||||
|
||||
def projects
|
||||
|
|
|
@ -86,7 +86,7 @@ class Project < ActiveRecord::Base
|
|||
|
||||
def create_by_user(params, user)
|
||||
namespace_id = params.delete(:namespace_id)
|
||||
namespace_id ||= user.namespace_id
|
||||
namespace_id ||= user.namespace.try(:id)
|
||||
|
||||
project = Project.new params
|
||||
|
||||
|
@ -222,6 +222,8 @@ class Project < ActiveRecord::Base
|
|||
end
|
||||
end
|
||||
|
||||
def move_repo
|
||||
# For compatibility with old code
|
||||
def code
|
||||
path
|
||||
end
|
||||
end
|
||||
|
|
|
@ -15,8 +15,12 @@
|
|||
%span.options
|
||||
= link_to "raw", raw_project_snippet_path(@project, @snippet), class: "btn very_small", target: "_blank"
|
||||
.file_content.code
|
||||
%div{class: current_user.dark_scheme ? "black" : ""}
|
||||
= raw @snippet.colorize(options: { linenos: 'True'})
|
||||
- unless @snippet.content.empty?
|
||||
%div{class: current_user.dark_scheme ? "black" : "white"}
|
||||
= preserve do
|
||||
= raw Pygments.highlight(@snippet.content, formatter: :gitlab)
|
||||
- else
|
||||
%h4.nothing_here_message Empty file
|
||||
|
||||
|
||||
%div
|
||||
|
|
|
@ -9,7 +9,7 @@ class AdminGroups < Spinach::FeatureSteps
|
|||
|
||||
And 'submit form with new group info' do
|
||||
fill_in 'group_name', :with => 'gitlab'
|
||||
fill_in 'group_code', :with => 'gitlab'
|
||||
fill_in 'group_path', :with => 'gitlab'
|
||||
click_button "Save group"
|
||||
end
|
||||
|
||||
|
|
|
@ -4,8 +4,6 @@ class CreateProject < Spinach::FeatureSteps
|
|||
|
||||
And 'fill project form with valid data' do
|
||||
fill_in 'project_name', :with => 'NewProject'
|
||||
fill_in 'project_code', :with => 'NPR'
|
||||
fill_in 'project_path', :with => 'newproject'
|
||||
click_button "Create project"
|
||||
end
|
||||
|
||||
|
|
|
@ -40,8 +40,7 @@ module Gitlab
|
|||
post do
|
||||
params[:code] ||= params[:name]
|
||||
params[:path] ||= params[:name]
|
||||
attrs = attributes_for_keys [:code,
|
||||
:path,
|
||||
attrs = attributes_for_keys [:path,
|
||||
:name,
|
||||
:description,
|
||||
:default_branch,
|
||||
|
|
|
@ -2,9 +2,7 @@ require 'spec_helper'
|
|||
|
||||
describe "Admin::Projects" do
|
||||
before do
|
||||
@project = create(:project,
|
||||
name: "LeGiT",
|
||||
code: "LGT")
|
||||
@project = create(:project)
|
||||
login_as :admin
|
||||
end
|
||||
|
||||
|
@ -29,7 +27,7 @@ describe "Admin::Projects" do
|
|||
end
|
||||
|
||||
it "should have project info" do
|
||||
page.should have_content(@project.code)
|
||||
page.should have_content(@project.path)
|
||||
page.should have_content(@project.name)
|
||||
end
|
||||
end
|
||||
|
@ -48,19 +46,16 @@ describe "Admin::Projects" do
|
|||
describe "Update project" do
|
||||
before do
|
||||
fill_in "project_name", with: "Big Bang"
|
||||
fill_in "project_code", with: "BB1"
|
||||
click_button "Save Project"
|
||||
@project.reload
|
||||
end
|
||||
|
||||
it "should show page with new data" do
|
||||
page.should have_content("BB1")
|
||||
page.should have_content("Big Bang")
|
||||
end
|
||||
|
||||
it "should change project entry" do
|
||||
@project.name.should == "Big Bang"
|
||||
@project.code.should == "BB1"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -77,8 +72,6 @@ describe "Admin::Projects" do
|
|||
|
||||
it "should have labels for new project" do
|
||||
page.should have_content("Project name is")
|
||||
page.should have_content("Git Clone")
|
||||
page.should have_content("URL")
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -86,8 +79,6 @@ describe "Admin::Projects" do
|
|||
before do
|
||||
visit new_admin_project_path
|
||||
fill_in 'project_name', with: 'NewProject'
|
||||
fill_in 'project_code', with: 'NPR'
|
||||
fill_in 'project_path', with: 'gitlabhq_1'
|
||||
expect { click_button "Create project" }.to change { Project.count }.by(1)
|
||||
@project = Project.last
|
||||
end
|
||||
|
|
|
@ -28,7 +28,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/issues" do
|
||||
it "should return project issues" do
|
||||
get api("/projects/#{project.code}/issues", user)
|
||||
get api("/projects/#{project.path}/issues", user)
|
||||
response.status.should == 200
|
||||
json_response.should be_an Array
|
||||
json_response.first['title'].should == issue.title
|
||||
|
@ -37,7 +37,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/issues/:issue_id" do
|
||||
it "should return a project issue by id" do
|
||||
get api("/projects/#{project.code}/issues/#{issue.id}", user)
|
||||
get api("/projects/#{project.path}/issues/#{issue.id}", user)
|
||||
response.status.should == 200
|
||||
json_response['title'].should == issue.title
|
||||
end
|
||||
|
@ -45,7 +45,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "POST /projects/:id/issues" do
|
||||
it "should create a new project issue" do
|
||||
post api("/projects/#{project.code}/issues", user),
|
||||
post api("/projects/#{project.path}/issues", user),
|
||||
title: 'new issue', labels: 'label, label2'
|
||||
response.status.should == 201
|
||||
json_response['title'].should == 'new issue'
|
||||
|
@ -56,7 +56,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "PUT /projects/:id/issues/:issue_id" do
|
||||
it "should update a project issue" do
|
||||
put api("/projects/#{project.code}/issues/#{issue.id}", user),
|
||||
put api("/projects/#{project.path}/issues/#{issue.id}", user),
|
||||
title: 'updated title', labels: 'label2', closed: 1
|
||||
response.status.should == 200
|
||||
json_response['title'].should == 'updated title'
|
||||
|
@ -67,7 +67,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "DELETE /projects/:id/issues/:issue_id" do
|
||||
it "should delete a project issue" do
|
||||
delete api("/projects/#{project.code}/issues/#{issue.id}", user)
|
||||
delete api("/projects/#{project.path}/issues/#{issue.id}", user)
|
||||
response.status.should == 405
|
||||
end
|
||||
end
|
||||
|
|
|
@ -11,14 +11,14 @@ describe Gitlab::API do
|
|||
describe "GET /projects/:id/merge_requests" do
|
||||
context "when unauthenticated" do
|
||||
it "should return authentication error" do
|
||||
get api("/projects/#{project.code}/merge_requests")
|
||||
get api("/projects/#{project.path}/merge_requests")
|
||||
response.status.should == 401
|
||||
end
|
||||
end
|
||||
|
||||
context "when authenticated" do
|
||||
it "should return an array of merge_requests" do
|
||||
get api("/projects/#{project.code}/merge_requests", user)
|
||||
get api("/projects/#{project.path}/merge_requests", user)
|
||||
response.status.should == 200
|
||||
json_response.should be_an Array
|
||||
json_response.first['title'].should == merge_request.title
|
||||
|
@ -28,7 +28,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/merge_request/:merge_request_id" do
|
||||
it "should return merge_request" do
|
||||
get api("/projects/#{project.code}/merge_request/#{merge_request.id}", user)
|
||||
get api("/projects/#{project.path}/merge_request/#{merge_request.id}", user)
|
||||
response.status.should == 200
|
||||
json_response['title'].should == merge_request.title
|
||||
end
|
||||
|
@ -36,7 +36,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "POST /projects/:id/merge_requests" do
|
||||
it "should return merge_request" do
|
||||
post api("/projects/#{project.code}/merge_requests", user),
|
||||
post api("/projects/#{project.path}/merge_requests", user),
|
||||
title: 'Test merge_request', source_branch: "stable", target_branch: "master", author: user
|
||||
response.status.should == 201
|
||||
json_response['title'].should == 'Test merge_request'
|
||||
|
@ -45,7 +45,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "PUT /projects/:id/merge_request/:merge_request_id" do
|
||||
it "should return merge_request" do
|
||||
put api("/projects/#{project.code}/merge_request/#{merge_request.id}", user), title: "New title"
|
||||
put api("/projects/#{project.path}/merge_request/#{merge_request.id}", user), title: "New title"
|
||||
response.status.should == 200
|
||||
json_response['title'].should == 'New title'
|
||||
end
|
||||
|
@ -53,7 +53,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "POST /projects/:id/merge_request/:merge_request_id/comments" do
|
||||
it "should return comment" do
|
||||
post api("/projects/#{project.code}/merge_request/#{merge_request.id}/comments", user), note: "My comment"
|
||||
post api("/projects/#{project.path}/merge_request/#{merge_request.id}/comments", user), note: "My comment"
|
||||
response.status.should == 201
|
||||
json_response['note'].should == 'My comment'
|
||||
end
|
||||
|
|
|
@ -33,7 +33,7 @@ describe Gitlab::API do
|
|||
end
|
||||
|
||||
describe "POST /projects" do
|
||||
it "should create new project without code and path" do
|
||||
it "should create new project without path" do
|
||||
expect { post api("/projects", user), name: 'foo' }.to change {Project.count}.by(1)
|
||||
end
|
||||
|
||||
|
@ -53,8 +53,7 @@ describe Gitlab::API do
|
|||
|
||||
it "should assign attributes to project" do
|
||||
project = attributes_for(:project, {
|
||||
path: 'path',
|
||||
code: 'code',
|
||||
path: project.name.parameterize,
|
||||
description: Faker::Lorem.sentence,
|
||||
default_branch: 'stable',
|
||||
issues_enabled: false,
|
||||
|
@ -79,8 +78,8 @@ describe Gitlab::API do
|
|||
json_response['owner']['email'].should == user.email
|
||||
end
|
||||
|
||||
it "should return a project by code name" do
|
||||
get api("/projects/#{project.code}", user)
|
||||
it "should return a project by path name" do
|
||||
get api("/projects/#{project.path}", user)
|
||||
response.status.should == 200
|
||||
json_response['name'].should == project.name
|
||||
end
|
||||
|
@ -94,7 +93,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/repository/branches" do
|
||||
it "should return an array of project branches" do
|
||||
get api("/projects/#{project.code}/repository/branches", user)
|
||||
get api("/projects/#{project.path}/repository/branches", user)
|
||||
response.status.should == 200
|
||||
json_response.should be_an Array
|
||||
json_response.first['name'].should == project.repo.heads.sort_by(&:name).first.name
|
||||
|
@ -103,7 +102,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/repository/branches/:branch" do
|
||||
it "should return the branch information for a single branch" do
|
||||
get api("/projects/#{project.code}/repository/branches/new_design", user)
|
||||
get api("/projects/#{project.path}/repository/branches/new_design", user)
|
||||
response.status.should == 200
|
||||
|
||||
json_response['name'].should == 'new_design'
|
||||
|
@ -113,7 +112,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/members" do
|
||||
it "should return project team members" do
|
||||
get api("/projects/#{project.code}/members", user)
|
||||
get api("/projects/#{project.path}/members", user)
|
||||
response.status.should == 200
|
||||
json_response.should be_an Array
|
||||
json_response.count.should == 2
|
||||
|
@ -123,7 +122,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/members/:user_id" do
|
||||
it "should return project team member" do
|
||||
get api("/projects/#{project.code}/members/#{user.id}", user)
|
||||
get api("/projects/#{project.path}/members/#{user.id}", user)
|
||||
response.status.should == 200
|
||||
json_response['email'].should == user.email
|
||||
json_response['access_level'].should == UsersProject::MASTER
|
||||
|
@ -133,7 +132,7 @@ describe Gitlab::API do
|
|||
describe "POST /projects/:id/members" do
|
||||
it "should add user to project team" do
|
||||
expect {
|
||||
post api("/projects/#{project.code}/members", user), user_id: user2.id,
|
||||
post api("/projects/#{project.path}/members", user), user_id: user2.id,
|
||||
access_level: UsersProject::DEVELOPER
|
||||
}.to change { UsersProject.count }.by(1)
|
||||
|
||||
|
@ -145,7 +144,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "PUT /projects/:id/members/:user_id" do
|
||||
it "should update project team member" do
|
||||
put api("/projects/#{project.code}/members/#{user3.id}", user), access_level: UsersProject::MASTER
|
||||
put api("/projects/#{project.path}/members/#{user3.id}", user), access_level: UsersProject::MASTER
|
||||
response.status.should == 200
|
||||
json_response['email'].should == user3.email
|
||||
json_response['access_level'].should == UsersProject::MASTER
|
||||
|
@ -155,14 +154,14 @@ describe Gitlab::API do
|
|||
describe "DELETE /projects/:id/members/:user_id" do
|
||||
it "should remove user from project team" do
|
||||
expect {
|
||||
delete api("/projects/#{project.code}/members/#{user3.id}", user)
|
||||
delete api("/projects/#{project.path}/members/#{user3.id}", user)
|
||||
}.to change { UsersProject.count }.by(-1)
|
||||
end
|
||||
end
|
||||
|
||||
describe "GET /projects/:id/hooks" do
|
||||
it "should return project hooks" do
|
||||
get api("/projects/#{project.code}/hooks", user)
|
||||
get api("/projects/#{project.path}/hooks", user)
|
||||
|
||||
response.status.should == 200
|
||||
|
||||
|
@ -174,7 +173,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/hooks/:hook_id" do
|
||||
it "should return a project hook" do
|
||||
get api("/projects/#{project.code}/hooks/#{hook.id}", user)
|
||||
get api("/projects/#{project.path}/hooks/#{hook.id}", user)
|
||||
response.status.should == 200
|
||||
json_response['url'].should == hook.url
|
||||
end
|
||||
|
@ -183,7 +182,7 @@ describe Gitlab::API do
|
|||
describe "POST /projects/:id/hooks" do
|
||||
it "should add hook to project" do
|
||||
expect {
|
||||
post api("/projects/#{project.code}/hooks", user),
|
||||
post api("/projects/#{project.path}/hooks", user),
|
||||
"url" => "http://example.com"
|
||||
}.to change {project.hooks.count}.by(1)
|
||||
end
|
||||
|
@ -191,7 +190,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "PUT /projects/:id/hooks/:hook_id" do
|
||||
it "should update an existing project hook" do
|
||||
put api("/projects/#{project.code}/hooks/#{hook.id}", user),
|
||||
put api("/projects/#{project.path}/hooks/#{hook.id}", user),
|
||||
url: 'http://example.org'
|
||||
response.status.should == 200
|
||||
json_response['url'].should == 'http://example.org'
|
||||
|
@ -202,7 +201,7 @@ describe Gitlab::API do
|
|||
describe "DELETE /projects/:id/hooks" do
|
||||
it "should delete hook from project" do
|
||||
expect {
|
||||
delete api("/projects/#{project.code}/hooks", user),
|
||||
delete api("/projects/#{project.path}/hooks", user),
|
||||
hook_id: hook.id
|
||||
}.to change {project.hooks.count}.by(-1)
|
||||
end
|
||||
|
@ -210,7 +209,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/repository/tags" do
|
||||
it "should return an array of project tags" do
|
||||
get api("/projects/#{project.code}/repository/tags", user)
|
||||
get api("/projects/#{project.path}/repository/tags", user)
|
||||
response.status.should == 200
|
||||
json_response.should be_an Array
|
||||
json_response.first['name'].should == project.repo.tags.sort_by(&:name).reverse.first.name
|
||||
|
@ -222,7 +221,7 @@ describe Gitlab::API do
|
|||
before { project.add_access(user2, :read) }
|
||||
|
||||
it "should return project commits" do
|
||||
get api("/projects/#{project.code}/repository/commits", user)
|
||||
get api("/projects/#{project.path}/repository/commits", user)
|
||||
response.status.should == 200
|
||||
|
||||
json_response.should be_an Array
|
||||
|
@ -232,7 +231,7 @@ describe Gitlab::API do
|
|||
|
||||
context "unauthorized user" do
|
||||
it "should not return project commits" do
|
||||
get api("/projects/#{project.code}/repository/commits")
|
||||
get api("/projects/#{project.path}/repository/commits")
|
||||
response.status.should == 401
|
||||
end
|
||||
end
|
||||
|
@ -240,7 +239,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/snippets" do
|
||||
it "should return an array of project snippets" do
|
||||
get api("/projects/#{project.code}/snippets", user)
|
||||
get api("/projects/#{project.path}/snippets", user)
|
||||
response.status.should == 200
|
||||
json_response.should be_an Array
|
||||
json_response.first['title'].should == snippet.title
|
||||
|
@ -249,7 +248,7 @@ describe Gitlab::API do
|
|||
|
||||
describe "GET /projects/:id/snippets/:snippet_id" do
|
||||
it "should return a project snippet" do
|
||||
get api("/projects/#{project.code}/snippets/#{snippet.id}", user)
|
||||
get api("/projects/#{project.path}/snippets/#{snippet.id}", user)
|
||||
response.status.should == 200
|
||||
json_response['title'].should == snippet.title
|
||||
end
|
||||
|
@ -257,8 +256,8 @@ describe Gitlab::API do
|
|||
|
||||
describe "POST /projects/:id/snippets" do
|
||||
it "should create a new project snippet" do
|
||||
post api("/projects/#{project.code}/snippets", user),
|
||||
title: 'api test', file_name: 'sample.rb', code: 'test'
|
||||
post api("/projects/#{project.path}/snippets", user),
|
||||
title: 'api test', file_name: 'sample.rb', path: 'test'
|
||||
response.status.should == 201
|
||||
json_response['title'].should == 'api test'
|
||||
end
|
||||
|
@ -266,42 +265,42 @@ describe Gitlab::API do
|
|||
|
||||
describe "PUT /projects/:id/snippets/:shippet_id" do
|
||||
it "should update an existing project snippet" do
|
||||
put api("/projects/#{project.code}/snippets/#{snippet.id}", user),
|
||||
code: 'updated code'
|
||||
put api("/projects/#{project.path}/snippets/#{snippet.id}", user),
|
||||
path: 'updated path'
|
||||
response.status.should == 200
|
||||
json_response['title'].should == 'example'
|
||||
snippet.reload.content.should == 'updated code'
|
||||
snippet.reload.content.should == 'updated path'
|
||||
end
|
||||
end
|
||||
|
||||
describe "DELETE /projects/:id/snippets/:snippet_id" do
|
||||
it "should delete existing project snippet" do
|
||||
expect {
|
||||
delete api("/projects/#{project.code}/snippets/#{snippet.id}", user)
|
||||
delete api("/projects/#{project.path}/snippets/#{snippet.id}", user)
|
||||
}.to change { Snippet.count }.by(-1)
|
||||
end
|
||||
end
|
||||
|
||||
describe "GET /projects/:id/snippets/:snippet_id/raw" do
|
||||
it "should get a raw project snippet" do
|
||||
get api("/projects/#{project.code}/snippets/#{snippet.id}/raw", user)
|
||||
get api("/projects/#{project.path}/snippets/#{snippet.id}/raw", user)
|
||||
response.status.should == 200
|
||||
end
|
||||
end
|
||||
|
||||
describe "GET /projects/:id/:sha/blob" do
|
||||
it "should get the raw file contents" do
|
||||
get api("/projects/#{project.code}/repository/commits/master/blob?filepath=README.md", user)
|
||||
get api("/projects/#{project.path}/repository/commits/master/blob?filepath=README.md", user)
|
||||
response.status.should == 200
|
||||
end
|
||||
|
||||
it "should return 404 for invalid branch_name" do
|
||||
get api("/projects/#{project.code}/repository/commits/invalid_branch_name/blob?filepath=README.md", user)
|
||||
get api("/projects/#{project.path}/repository/commits/invalid_branch_name/blob?filepath=README.md", user)
|
||||
response.status.should == 404
|
||||
end
|
||||
|
||||
it "should return 404 for invalid file" do
|
||||
get api("/projects/#{project.code}/repository/commits/master/blob?filepath=README.invalid", user)
|
||||
get api("/projects/#{project.path}/repository/commits/master/blob?filepath=README.invalid", user)
|
||||
response.status.should == 404
|
||||
end
|
||||
end
|
||||
|
|
|
@ -8,8 +8,6 @@ describe "Projects" do
|
|||
visit new_project_path
|
||||
|
||||
fill_in 'project_name', with: 'Awesome'
|
||||
find("#project_path").value.should == 'awesome'
|
||||
find("#project_code").value.should == 'awesome'
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -53,7 +51,6 @@ describe "Projects" do
|
|||
visit edit_project_path(@project)
|
||||
|
||||
fill_in 'project_name', with: 'Awesome'
|
||||
fill_in 'project_code', with: 'gitlabhq'
|
||||
click_button "Save"
|
||||
@project = @project.reload
|
||||
end
|
||||
|
|
|
@ -28,4 +28,10 @@ module StubbedRepository
|
|||
end
|
||||
end
|
||||
|
||||
class Namespace
|
||||
def ensure_dir_exist
|
||||
true
|
||||
end
|
||||
end
|
||||
|
||||
Project.send(:include, StubbedRepository)
|
||||
|
|
Loading…
Reference in a new issue