Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
0e1635a6
Commit
0e1635a6
authored
Nov 23, 2012
by
Dmitriy Zaporozhets
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixing requests after namespaces. Fixed admin bug with access to project
parent
e92b563a
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
35 additions
and
62 deletions
+35
-62
app/controllers/admin/projects_controller.rb
app/controllers/admin/projects_controller.rb
+10
-0
app/helpers/application_helper.rb
app/helpers/application_helper.rb
+1
-1
app/observers/user_observer.rb
app/observers/user_observer.rb
+2
-2
lib/api/projects.rb
lib/api/projects.rb
+1
-4
spec/controllers/commits_controller_spec.rb
spec/controllers/commits_controller_spec.rb
+1
-1
spec/factories.rb
spec/factories.rb
+1
-1
spec/mailers/notify_spec.rb
spec/mailers/notify_spec.rb
+1
-3
spec/observers/user_observer_spec.rb
spec/observers/user_observer_spec.rb
+6
-1
spec/observers/users_project_observer_spec.rb
spec/observers/users_project_observer_spec.rb
+1
-3
spec/requests/admin/admin_hooks_spec.rb
spec/requests/admin/admin_hooks_spec.rb
+1
-3
spec/requests/admin/admin_projects_spec.rb
spec/requests/admin/admin_projects_spec.rb
+2
-35
spec/requests/admin/admin_users_spec.rb
spec/requests/admin/admin_users_spec.rb
+1
-0
spec/requests/api/milestones_spec.rb
spec/requests/api/milestones_spec.rb
+4
-4
spec/requests/api/projects_spec.rb
spec/requests/api/projects_spec.rb
+3
-4
No files found.
app/controllers/admin/projects_controller.rb
View file @
0e1635a6
...
@@ -42,4 +42,14 @@ class Admin::ProjectsController < AdminController
...
@@ -42,4 +42,14 @@ class Admin::ProjectsController < AdminController
redirect_to
projects_url
,
notice:
'Project was successfully deleted.'
redirect_to
projects_url
,
notice:
'Project was successfully deleted.'
end
end
protected
def
project
id
=
params
[
:project_id
]
||
params
[
:id
]
id
=
id
.
split
(
"/"
)
if
id
.
include?
(
"/"
)
@project
||=
Project
.
find_by_path
(
id
)
@project
||
render_404
end
end
end
app/helpers/application_helper.rb
View file @
0e1635a6
...
@@ -88,7 +88,7 @@ module ApplicationHelper
...
@@ -88,7 +88,7 @@ module ApplicationHelper
[
"Users"
,
users
.
map
{
|
u
|
[
u
.
human_name
,
u
.
id
]}
]
[
"Users"
,
users
.
map
{
|
u
|
[
u
.
human_name
,
u
.
id
]}
]
]
]
if
selected
==
:current_user
if
selected
==
:current_user
&&
current_user
.
namespace
selected
=
current_user
.
namespace
.
id
selected
=
current_user
.
namespace
.
id
end
end
...
...
app/observers/user_observer.rb
View file @
0e1635a6
class
UserObserver
<
ActiveRecord
::
Observer
class
UserObserver
<
ActiveRecord
::
Observer
def
after_create
(
user
)
def
after_create
(
user
)
user
.
create_namespace
(
code
:
user
.
username
,
name:
user
.
name
)
user
.
create_namespace
(
path
:
user
.
username
,
name:
user
.
name
)
log_info
(
"User
\"
#{
user
.
name
}
\"
(
#{
user
.
email
}
) was created"
)
log_info
(
"User
\"
#{
user
.
name
}
\"
(
#{
user
.
email
}
) was created"
)
...
@@ -13,7 +13,7 @@ class UserObserver < ActiveRecord::Observer
...
@@ -13,7 +13,7 @@ class UserObserver < ActiveRecord::Observer
def
after_save
user
def
after_save
user
if
user
.
username_changed?
and
user
.
namespace
if
user
.
username_changed?
and
user
.
namespace
user
.
namespace
.
update_attributes
(
code
:
user
.
username
)
user
.
namespace
.
update_attributes
(
path
:
user
.
username
)
end
end
end
end
...
...
lib/api/projects.rb
View file @
0e1635a6
...
@@ -38,10 +38,7 @@ module Gitlab
...
@@ -38,10 +38,7 @@ module Gitlab
# Example Request
# Example Request
# POST /projects
# POST /projects
post
do
post
do
params
[
:code
]
||=
params
[
:name
]
attrs
=
attributes_for_keys
[
:name
,
params
[
:path
]
||=
params
[
:name
]
attrs
=
attributes_for_keys
[
:path
,
:name
,
:description
,
:description
,
:default_branch
,
:default_branch
,
:issues_enabled
,
:issues_enabled
,
...
...
spec/controllers/commits_controller_spec.rb
View file @
0e1635a6
...
@@ -13,7 +13,7 @@ describe CommitsController do
...
@@ -13,7 +13,7 @@ describe CommitsController do
describe
"GET show"
do
describe
"GET show"
do
context
"as atom feed"
do
context
"as atom feed"
do
it
"should render as atom"
do
it
"should render as atom"
do
get
:show
,
project_id:
project
.
code
,
id:
"master.atom"
get
:show
,
project_id:
project
.
path
,
id:
"master.atom"
response
.
should
be_success
response
.
should
be_success
response
.
content_type
.
should
==
'application/atom+xml'
response
.
content_type
.
should
==
'application/atom+xml'
end
end
...
...
spec/factories.rb
View file @
0e1635a6
...
@@ -12,7 +12,7 @@ FactoryGirl.define do
...
@@ -12,7 +12,7 @@ FactoryGirl.define do
factory
:user
,
aliases:
[
:author
,
:assignee
,
:owner
]
do
factory
:user
,
aliases:
[
:author
,
:assignee
,
:owner
]
do
email
{
Faker
::
Internet
.
email
}
email
{
Faker
::
Internet
.
email
}
name
name
username
'john'
username
{
Faker
::
Internet
.
user_name
}
password
"123456"
password
"123456"
password_confirmation
{
password
}
password_confirmation
{
password
}
...
...
spec/mailers/notify_spec.rb
View file @
0e1635a6
...
@@ -169,9 +169,7 @@ describe Notify do
...
@@ -169,9 +169,7 @@ describe Notify do
end
end
describe
'project access changed'
do
describe
'project access changed'
do
let
(
:project
)
{
create
(
:project
,
let
(
:project
)
{
create
(
:project
)
}
path:
"Fuu"
,
code:
"Fuu"
)
}
let
(
:user
)
{
create
(
:user
)
}
let
(
:user
)
{
create
(
:user
)
}
let
(
:users_project
)
{
create
(
:users_project
,
let
(
:users_project
)
{
create
(
:users_project
,
project:
project
,
project:
project
,
...
...
spec/observers/user_observer_spec.rb
View file @
0e1635a6
...
@@ -13,7 +13,12 @@ describe UserObserver do
...
@@ -13,7 +13,12 @@ describe UserObserver do
end
end
context
'when a new user is created'
do
context
'when a new user is created'
do
let
(
:user
)
{
double
(
:user
,
id:
42
,
password:
'P@ssword!'
,
name:
'John'
,
email:
'u@mail.local'
,
username:
'root'
)
}
let
(
:user
)
{
double
(
:user
,
id:
42
,
password:
'P@ssword!'
,
name:
'John'
,
email:
'u@mail.local'
,
username:
'root'
,
create_namespace:
true
)
}
let
(
:notification
)
{
double
:notification
}
let
(
:notification
)
{
double
:notification
}
it
'sends an email'
do
it
'sends an email'
do
...
...
spec/observers/users_project_observer_spec.rb
View file @
0e1635a6
...
@@ -2,9 +2,7 @@ require 'spec_helper'
...
@@ -2,9 +2,7 @@ require 'spec_helper'
describe
UsersProjectObserver
do
describe
UsersProjectObserver
do
let
(
:user
)
{
create
(
:user
)
}
let
(
:user
)
{
create
(
:user
)
}
let
(
:project
)
{
create
(
:project
,
let
(
:project
)
{
create
(
:project
)
}
code:
"Fuu"
,
path:
"Fuu"
)
}
let
(
:users_project
)
{
create
(
:users_project
,
let
(
:users_project
)
{
create
(
:users_project
,
project:
project
,
project:
project
,
user:
user
)}
user:
user
)}
...
...
spec/requests/admin/admin_hooks_spec.rb
View file @
0e1635a6
...
@@ -2,9 +2,7 @@ require 'spec_helper'
...
@@ -2,9 +2,7 @@ require 'spec_helper'
describe
"Admin::Hooks"
do
describe
"Admin::Hooks"
do
before
do
before
do
@project
=
create
(
:project
,
@project
=
create
(
:project
)
name:
"LeGiT"
,
code:
"LGT"
)
login_as
:admin
login_as
:admin
@system_hook
=
create
(
:system_hook
)
@system_hook
=
create
(
:system_hook
)
...
...
spec/requests/admin/admin_projects_spec.rb
View file @
0e1635a6
...
@@ -39,8 +39,8 @@ describe "Admin::Projects" do
...
@@ -39,8 +39,8 @@ describe "Admin::Projects" do
end
end
it
"should have project edit page"
do
it
"should have project edit page"
do
page
.
should
have_content
(
"
Project name
"
)
page
.
should
have_content
(
"
Edit project
"
)
page
.
should
have_
content
(
"URL
"
)
page
.
should
have_
button
(
"Save Project
"
)
end
end
describe
"Update project"
do
describe
"Update project"
do
...
@@ -60,39 +60,6 @@ describe "Admin::Projects" do
...
@@ -60,39 +60,6 @@ describe "Admin::Projects" do
end
end
end
end
describe
"GET /admin/projects/new"
do
before
do
visit
admin_projects_path
click_link
"New Project"
end
it
"should be correct path"
do
current_path
.
should
==
new_admin_project_path
end
it
"should have labels for new project"
do
page
.
should
have_content
(
"Project name is"
)
end
end
describe
"POST /admin/projects"
do
before
do
visit
new_admin_project_path
fill_in
'project_name'
,
with:
'NewProject'
expect
{
click_button
"Create project"
}.
to
change
{
Project
.
count
}.
by
(
1
)
@project
=
Project
.
last
end
it
"should be correct path"
do
current_path
.
should
==
admin_project_path
(
@project
)
end
it
"should show project"
do
page
.
should
have_content
(
@project
.
name
)
page
.
should
have_content
(
@project
.
path
)
end
end
describe
"Add new team member"
do
describe
"Add new team member"
do
before
do
before
do
@new_user
=
create
(
:user
)
@new_user
=
create
(
:user
)
...
...
spec/requests/admin/admin_users_spec.rb
View file @
0e1635a6
...
@@ -23,6 +23,7 @@ describe "Admin::Users" do
...
@@ -23,6 +23,7 @@ describe "Admin::Users" do
@password
=
"123ABC"
@password
=
"123ABC"
visit
new_admin_user_path
visit
new_admin_user_path
fill_in
"user_name"
,
with:
"Big Bang"
fill_in
"user_name"
,
with:
"Big Bang"
fill_in
"user_username"
,
with:
"bang"
fill_in
"user_email"
,
with:
"bigbang@mail.com"
fill_in
"user_email"
,
with:
"bigbang@mail.com"
fill_in
"user_password"
,
with:
@password
fill_in
"user_password"
,
with:
@password
fill_in
"user_password_confirmation"
,
with:
@password
fill_in
"user_password_confirmation"
,
with:
@password
...
...
spec/requests/api/milestones_spec.rb
View file @
0e1635a6
...
@@ -11,7 +11,7 @@ describe Gitlab::API do
...
@@ -11,7 +11,7 @@ describe Gitlab::API do
describe
"GET /projects/:id/milestones"
do
describe
"GET /projects/:id/milestones"
do
it
"should return project milestones"
do
it
"should return project milestones"
do
get
api
(
"/projects/
#{
project
.
code
}
/milestones"
,
user
)
get
api
(
"/projects/
#{
project
.
path
}
/milestones"
,
user
)
response
.
status
.
should
==
200
response
.
status
.
should
==
200
json_response
.
should
be_an
Array
json_response
.
should
be_an
Array
json_response
.
first
[
'title'
].
should
==
milestone
.
title
json_response
.
first
[
'title'
].
should
==
milestone
.
title
...
@@ -20,7 +20,7 @@ describe Gitlab::API do
...
@@ -20,7 +20,7 @@ describe Gitlab::API do
describe
"GET /projects/:id/milestones/:milestone_id"
do
describe
"GET /projects/:id/milestones/:milestone_id"
do
it
"should return a project milestone by id"
do
it
"should return a project milestone by id"
do
get
api
(
"/projects/
#{
project
.
code
}
/milestones/
#{
milestone
.
id
}
"
,
user
)
get
api
(
"/projects/
#{
project
.
path
}
/milestones/
#{
milestone
.
id
}
"
,
user
)
response
.
status
.
should
==
200
response
.
status
.
should
==
200
json_response
[
'title'
].
should
==
milestone
.
title
json_response
[
'title'
].
should
==
milestone
.
title
end
end
...
@@ -28,7 +28,7 @@ describe Gitlab::API do
...
@@ -28,7 +28,7 @@ describe Gitlab::API do
describe
"POST /projects/:id/milestones"
do
describe
"POST /projects/:id/milestones"
do
it
"should create a new project milestone"
do
it
"should create a new project milestone"
do
post
api
(
"/projects/
#{
project
.
code
}
/milestones"
,
user
),
post
api
(
"/projects/
#{
project
.
path
}
/milestones"
,
user
),
title:
'new milestone'
title:
'new milestone'
response
.
status
.
should
==
201
response
.
status
.
should
==
201
json_response
[
'title'
].
should
==
'new milestone'
json_response
[
'title'
].
should
==
'new milestone'
...
@@ -38,7 +38,7 @@ describe Gitlab::API do
...
@@ -38,7 +38,7 @@ describe Gitlab::API do
describe
"PUT /projects/:id/milestones/:milestone_id"
do
describe
"PUT /projects/:id/milestones/:milestone_id"
do
it
"should update a project milestone"
do
it
"should update a project milestone"
do
put
api
(
"/projects/
#{
project
.
code
}
/milestones/
#{
milestone
.
id
}
"
,
user
),
put
api
(
"/projects/
#{
project
.
path
}
/milestones/
#{
milestone
.
id
}
"
,
user
),
title:
'updated title'
title:
'updated title'
response
.
status
.
should
==
200
response
.
status
.
should
==
200
json_response
[
'title'
].
should
==
'updated title'
json_response
[
'title'
].
should
==
'updated title'
...
...
spec/requests/api/projects_spec.rb
View file @
0e1635a6
...
@@ -53,7 +53,6 @@ describe Gitlab::API do
...
@@ -53,7 +53,6 @@ describe Gitlab::API do
it
"should assign attributes to project"
do
it
"should assign attributes to project"
do
project
=
attributes_for
(
:project
,
{
project
=
attributes_for
(
:project
,
{
path:
project
.
name
.
parameterize
,
description:
Faker
::
Lorem
.
sentence
,
description:
Faker
::
Lorem
.
sentence
,
default_branch:
'stable'
,
default_branch:
'stable'
,
issues_enabled:
false
,
issues_enabled:
false
,
...
@@ -257,7 +256,7 @@ describe Gitlab::API do
...
@@ -257,7 +256,7 @@ describe Gitlab::API do
describe
"POST /projects/:id/snippets"
do
describe
"POST /projects/:id/snippets"
do
it
"should create a new project snippet"
do
it
"should create a new project snippet"
do
post
api
(
"/projects/
#{
project
.
path
}
/snippets"
,
user
),
post
api
(
"/projects/
#{
project
.
path
}
/snippets"
,
user
),
title:
'api test'
,
file_name:
'sample.rb'
,
path
:
'test'
title:
'api test'
,
file_name:
'sample.rb'
,
code
:
'test'
response
.
status
.
should
==
201
response
.
status
.
should
==
201
json_response
[
'title'
].
should
==
'api test'
json_response
[
'title'
].
should
==
'api test'
end
end
...
@@ -266,10 +265,10 @@ describe Gitlab::API do
...
@@ -266,10 +265,10 @@ describe Gitlab::API do
describe
"PUT /projects/:id/snippets/:shippet_id"
do
describe
"PUT /projects/:id/snippets/:shippet_id"
do
it
"should update an existing project snippet"
do
it
"should update an existing project snippet"
do
put
api
(
"/projects/
#{
project
.
path
}
/snippets/
#{
snippet
.
id
}
"
,
user
),
put
api
(
"/projects/
#{
project
.
path
}
/snippets/
#{
snippet
.
id
}
"
,
user
),
path:
'updated path
'
code:
'updated code
'
response
.
status
.
should
==
200
response
.
status
.
should
==
200
json_response
[
'title'
].
should
==
'example'
json_response
[
'title'
].
should
==
'example'
snippet
.
reload
.
content
.
should
==
'updated
path
'
snippet
.
reload
.
content
.
should
==
'updated
code
'
end
end
end
end
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment