some more refactoring to routes.rb
This commit is contained in:
parent
6855447204
commit
985d79acb5
12 changed files with 126 additions and 98 deletions
|
|
@ -10,7 +10,7 @@ module RequestsHelper
|
||||||
|
|
||||||
def new_request_link(request_count)
|
def new_request_link(request_count)
|
||||||
if request_count > 0
|
if request_count > 0
|
||||||
link_to t('requests.helper.new_requests', :count => @request_count), aspects_manage_path
|
link_to t('requests.helper.new_requests', :count => @request_count), manage_aspects_path
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
%h4
|
%h4
|
||||||
.right
|
.right
|
||||||
= link_to t('contacts', :count => @contact_count), aspects_manage_path, :title => t('aspects.manage.manage_aspects')
|
= link_to t('contacts', :count => @contact_count), manage_aspects_path, :title => t('aspects.manage.manage_aspects')
|
||||||
|
|
||||||
= t('aspects', :count => aspects.count)
|
= t('aspects', :count => aspects.count)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
.conversation_controls
|
.conversation_controls
|
||||||
= link_to (image_tag('reply.png', :height => 14, :width => 14) + ' ' + t('.reply')), '#', :id => 'reply_to_conversation'
|
= link_to (image_tag('reply.png', :height => 14, :width => 14) + ' ' + t('.reply')), '#', :id => 'reply_to_conversation'
|
||||||
= link_to (image_tag('deletelabel.png') + ' ' + t('.delete').downcase), conversation_conversation_visibility_path(conversation), :method => 'delete', :confirm => t('are_you_sure')
|
= link_to (image_tag('deletelabel.png') + ' ' + t('.delete').downcase), conversation_visibility_path(conversation), :method => 'delete', :confirm => t('are_you_sure')
|
||||||
|
|
||||||
.span-6.avatars.last
|
.span-6.avatars.last
|
||||||
- for participant in conversation.participants
|
- for participant in conversation.participants
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,7 @@
|
||||||
%h2
|
%h2
|
||||||
= t('.notifications')
|
= t('.notifications')
|
||||||
.span-13.last.left
|
.span-13.last.left
|
||||||
= link_to t('.mark_all_as_read'), notifications_read_all_path, :class => 'button'
|
= link_to t('.mark_all_as_read'), read_all_notifications_path, :class => 'button'
|
||||||
|
|
||||||
.span-24.last
|
.span-24.last
|
||||||
%ul.stream.notifications
|
%ul.stream.notifications
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@
|
||||||
|
|
||||||
- if @ownership
|
- if @ownership
|
||||||
.photo_options{:data=>{:actor=>"#{@photo.author.owner.id}", :actor_person => "#{@photo.author.id}", :image_url => "#{@photo.url(:thumb_large)}"}}
|
.photo_options{:data=>{:actor=>"#{@photo.author.owner.id}", :actor_person => "#{@photo.author.id}", :image_url => "#{@photo.url(:thumb_large)}"}}
|
||||||
= link_to t('.make_profile_photo'), {:controller => "photos", :action => "make_profile_photo", :photo_id => @photo.id}, :remote => true, :class => 'make_profile_photo'
|
= link_to t('.make_profile_photo'), {:controller => "photos", :action => "make_profile_photo", :photo_id => @photo.id}, :class => 'make_profile_photo'
|
||||||
|
|
|
|
||||||
= link_to t('.edit'), '#', :id => "edit_photo_toggle"
|
= link_to t('.edit'), '#', :id => "edit_photo_toggle"
|
||||||
%br
|
%br
|
||||||
|
|
|
||||||
|
|
@ -117,9 +117,9 @@
|
||||||
#account_data.span-5.append-2
|
#account_data.span-5.append-2
|
||||||
%h3
|
%h3
|
||||||
= t('.export_data')
|
= t('.export_data')
|
||||||
= link_to t('.download_xml'), users_export_path, :class => "button"
|
= link_to t('.download_xml'), export_user_path, :class => "button"
|
||||||
%br
|
%br
|
||||||
= link_to t('.download_photos'), users_export_photos_path, :class => "button"
|
= link_to t('.download_photos'), export_photos_user_path, :class => "button"
|
||||||
|
|
||||||
.span-5.last
|
.span-5.last
|
||||||
%h3
|
%h3
|
||||||
|
|
|
||||||
172
config/routes.rb
172
config/routes.rb
|
|
@ -3,101 +3,129 @@
|
||||||
# the COPYRIGHT file.
|
# the COPYRIGHT file.
|
||||||
|
|
||||||
Diaspora::Application.routes.draw do
|
Diaspora::Application.routes.draw do
|
||||||
|
|
||||||
|
# Posting and Reading
|
||||||
|
|
||||||
|
resources :aspects do
|
||||||
|
collection do
|
||||||
|
match 'move_contact' => :move_contact
|
||||||
|
match 'add_to_aspect' => :add_to_aspect
|
||||||
|
match 'remove_from_aspect' => :remove_from_aspect
|
||||||
|
match 'manage' => :manage
|
||||||
|
end
|
||||||
|
match 'toggle_contact_visibility' => :toggle_contact_visibility
|
||||||
|
end
|
||||||
|
|
||||||
resources :status_messages, :only => [:new, :create, :destroy, :show]
|
resources :status_messages, :only => [:new, :create, :destroy, :show]
|
||||||
resources :comments, :only => [:create, :destroy]
|
get 'p/:id' => 'posts#show', :as => 'post'
|
||||||
resources :requests, :only => [:destroy, :create]
|
|
||||||
resource :likes, :only => [:create]
|
|
||||||
|
|
||||||
match 'tags/:name' => 'tags#show'
|
|
||||||
resources :tags, :only => [:show]
|
|
||||||
|
|
||||||
resource :profile
|
|
||||||
match 'services/inviter/:provider' => 'services#inviter', :as => 'service_inviter'
|
|
||||||
match 'services/finder/:provider' => 'services#finder', :as => 'friend_finder'
|
|
||||||
resources :services
|
|
||||||
|
|
||||||
match 'admins/user_search' => 'admins#user_search'
|
|
||||||
match 'admins/admin_inviter' => 'admins#admin_inviter'
|
|
||||||
|
|
||||||
match 'notifications/read_all' => 'notifications#read_all'
|
|
||||||
resources :notifications, :only => [:index, :update]
|
|
||||||
resources :posts, :only => [:show], :path => '/p/'
|
|
||||||
|
|
||||||
resources :contacts
|
|
||||||
resources :aspect_memberships, :only => [:destroy, :create]
|
|
||||||
|
|
||||||
|
|
||||||
resources :conversations do
|
|
||||||
resources :messages, :only => [:create, :show]
|
|
||||||
resource :conversation_visibility, :only => [:destroy], :path => '/visibility/'
|
|
||||||
end
|
|
||||||
|
|
||||||
resources :people, :except => [:edit, :update] do
|
|
||||||
resources :status_messages
|
|
||||||
resources :photos
|
|
||||||
end
|
|
||||||
|
|
||||||
match '/people/by_handle' => 'people#retrieve_remote', :as => 'person_by_handle'
|
|
||||||
match '/auth/:provider/callback' => 'services#create'
|
|
||||||
match '/auth/failure' => 'services#failure'
|
|
||||||
|
|
||||||
match 'photos/make_profile_photo' => 'photos#make_profile_photo'
|
match 'photos/make_profile_photo' => 'photos#make_profile_photo'
|
||||||
resources :photos, :except => [:index]
|
resources :photos, :except => [:index]
|
||||||
|
|
||||||
resource :user, :only => [:edit, :update, :destroy]
|
resources :comments, :only => [:create, :destroy]
|
||||||
|
|
||||||
|
get 'tags/:name' => 'tags#show', :as => 'tag'
|
||||||
|
|
||||||
|
resource :like, :only => [:create]
|
||||||
|
|
||||||
|
resources :conversations do
|
||||||
|
resources :messages, :only => [:create, :show]
|
||||||
|
delete 'visibility' => 'conversation_visibilities#destroy'
|
||||||
|
end
|
||||||
|
|
||||||
|
resources :notifications, :only => [:index, :update] do
|
||||||
|
get 'read_all' => :read_all, :on => :collection
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
# Users and people
|
||||||
|
|
||||||
|
resource :user, :only => [:edit, :update, :destroy], :shallow => true do
|
||||||
|
get :export
|
||||||
|
get :export_photos
|
||||||
|
end
|
||||||
|
|
||||||
|
controller :users do
|
||||||
|
get 'public/:username' => :public, :as => 'users_public'
|
||||||
|
match 'getting_started' => :getting_started, :as => 'getting_started'
|
||||||
|
get 'getting_started_completed' => :getting_started_completed
|
||||||
|
end
|
||||||
|
|
||||||
# This is a hack to overide a route created by devise.
|
# This is a hack to overide a route created by devise.
|
||||||
# I couldn't find anything in devise to skip that route, see Bug #961
|
# I couldn't find anything in devise to skip that route, see Bug #961
|
||||||
match '/users/edit' => redirect('/user/edit')
|
match 'users/edit' => redirect('/user/edit')
|
||||||
|
|
||||||
devise_for :users, :controllers => {:registrations => "registrations",
|
devise_for :users, :controllers => {:registrations => "registrations",
|
||||||
:password => "devise/passwords",
|
:password => "devise/passwords",
|
||||||
:sessions => "sessions",
|
:sessions => "sessions",
|
||||||
:invitations => "invitations"} do
|
:invitations => "invitations"} do
|
||||||
|
|
||||||
get 'invitations/resend/:id' => 'invitations#resend', :as => 'invitation_resend'
|
get 'invitations/resend/:id' => 'invitations#resend', :as => 'invitation_resend'
|
||||||
end
|
end
|
||||||
|
get 'login' => redirect('/users/sign_in')
|
||||||
|
|
||||||
|
scope 'admins' do
|
||||||
# added public route to user
|
match 'user_search' => 'admins#user_search'
|
||||||
match 'public/:username', :to => 'users#public', :as => 'users_public'
|
match 'admin_inviter' => 'admins#admin_inviter'
|
||||||
match 'getting_started', :to => 'users#getting_started', :as => 'getting_started'
|
|
||||||
match 'getting_started_completed', :to => 'users#getting_started_completed'
|
|
||||||
match 'users/export', :to => 'users#export'
|
|
||||||
match 'users/export_photos', :to => 'users#export_photos'
|
|
||||||
match 'login' => redirect('/users/sign_in')
|
|
||||||
|
|
||||||
match 'aspects/move_contact', :to => 'aspects#move_contact', :as => 'move_contact'
|
|
||||||
match 'aspects/add_to_aspect', :to => 'aspects#add_to_aspect', :as => 'add_to_aspect'
|
|
||||||
match 'aspects/remove_from_aspect',:to => 'aspects#remove_from_aspect', :as => 'remove_from_aspect'
|
|
||||||
match 'aspects/manage', :to => 'aspects#manage'
|
|
||||||
resources :aspects do
|
|
||||||
match '/toggle_contact_visibility', :to => 'aspects#toggle_contact_visibility'
|
|
||||||
end
|
end
|
||||||
|
|
||||||
#public routes
|
resource :profile
|
||||||
match 'webfinger', :to => 'publics#webfinger'
|
|
||||||
match 'hcard/users/:guid', :to => 'publics#hcard'
|
|
||||||
match '.well-known/host-meta',:to => 'publics#host_meta'
|
|
||||||
match 'receive/users/:guid', :to => 'publics#receive'
|
|
||||||
match 'hub', :to => 'publics#hub'
|
|
||||||
|
|
||||||
scope '/api/v0' do
|
resources :requests, :only => [:destroy, :create]
|
||||||
match '/statuses/public_timeline', :to => 'apis#public_timeline'
|
|
||||||
match '/statuses/home_timeline', :to => 'apis#home_timeline'
|
|
||||||
match '/statuses/show/:guid', :to => 'apis#statuses'
|
|
||||||
match '/statuses/user_timeline', :to => 'apis#user_timeline'
|
|
||||||
|
|
||||||
match '/users/show', :to => 'apis#users'
|
resources :contacts, :except => [:index, :update]
|
||||||
match '/users/search', :to => 'apis#users_search'
|
resources :aspect_memberships, :only => [:destroy, :create]
|
||||||
match '/users/profile_image', :to => 'apis#users_profile_image'
|
|
||||||
|
|
||||||
match '/tags_posts/:tag', :to => 'apis#tag_posts'
|
resources :people, :except => [:edit, :update] do
|
||||||
match '/tags_people/:tag', :to => 'apis#tag_people'
|
resources :status_messages
|
||||||
|
resources :photos
|
||||||
|
end
|
||||||
|
match 'people/by_handle' => 'people#retrieve_remote', :as => 'person_by_handle'
|
||||||
|
|
||||||
|
|
||||||
|
# Federation
|
||||||
|
|
||||||
|
controller :publics do
|
||||||
|
get 'webfinger' => :webfinger
|
||||||
|
get 'hcard/users/:guid' => :hcard
|
||||||
|
get '.well-known/host-meta' => :host_meta
|
||||||
|
get 'receive/users/:guid' => :receive
|
||||||
|
get 'hub' => :hub
|
||||||
end
|
end
|
||||||
|
|
||||||
match'localize', :to => "localize#show"
|
|
||||||
|
# External
|
||||||
|
|
||||||
|
resources :services, :only => [:index, :destroy]
|
||||||
|
controller :services do
|
||||||
|
match '/auth/:provider/callback' => :create
|
||||||
|
match '/auth/failure' => :failure
|
||||||
|
scope 'services' do
|
||||||
|
match 'inviter/:provider' => :inviter, :as => 'service_inviter'
|
||||||
|
match 'finder/:provider' => :finder, :as => 'friend_finder'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
scope 'api/v0', :controller => :apis do
|
||||||
|
match 'statuses/public_timeline' => :public_timeline
|
||||||
|
match 'statuses/home_timeline' => :home_timeline
|
||||||
|
match 'statuses/show/:guid' => :statuses
|
||||||
|
match 'statuses/user_timeline' => :user_timeline
|
||||||
|
|
||||||
|
match 'users/show' => :users
|
||||||
|
match 'users/search' => :users_search
|
||||||
|
match 'users/profile_image' => :users_profile_image
|
||||||
|
|
||||||
|
match 'tags_posts/:tag' => :tag_posts
|
||||||
|
match 'tags_people/:tag' => :tag_people
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
# Mobile site
|
||||||
|
|
||||||
match 'mobile/toggle', :to => 'home#toggle_mobile', :as => 'toggle_mobile'
|
match 'mobile/toggle', :to => 'home#toggle_mobile', :as => 'toggle_mobile'
|
||||||
#root
|
|
||||||
|
|
||||||
|
# Startpage
|
||||||
|
|
||||||
root :to => 'home#show'
|
root :to => 'home#show'
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ Feature: invitation acceptance
|
||||||
And I wait for the ajax to finish
|
And I wait for the ajax to finish
|
||||||
|
|
||||||
When I go to the home page
|
When I go to the home page
|
||||||
Then I go to the aspects manage page
|
Then I go to the manage aspects page
|
||||||
Then I should see 1 contact in "Family"
|
Then I should see 1 contact in "Family"
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,19 +12,19 @@ Feature: sending and receiving requests
|
||||||
|
|
||||||
Scenario: accepting a contact request
|
Scenario: accepting a contact request
|
||||||
When I sign in as "alice@alice.alice"
|
When I sign in as "alice@alice.alice"
|
||||||
And I am on the aspects manage page
|
And I am on the manage aspects page
|
||||||
Then I should see 1 contact request
|
Then I should see 1 contact request
|
||||||
When I drag the contact request to the "Besties" aspect
|
When I drag the contact request to the "Besties" aspect
|
||||||
And I wait for the ajax to finish
|
And I wait for the ajax to finish
|
||||||
Then I should see 1 contact in "Besties"
|
Then I should see 1 contact in "Besties"
|
||||||
|
|
||||||
When I go to the home page
|
When I go to the home page
|
||||||
Then I go to the aspects manage page
|
Then I go to the manage aspects page
|
||||||
Then I should see 1 contact in "Besties"
|
Then I should see 1 contact in "Besties"
|
||||||
Then I go to the destroy user session page
|
Then I go to the destroy user session page
|
||||||
|
|
||||||
When I sign in as "bob@bob.bob"
|
When I sign in as "bob@bob.bob"
|
||||||
And I am on the aspects manage page
|
And I am on the manage aspects page
|
||||||
Then I should see 1 contact in "Besties"
|
Then I should see 1 contact in "Besties"
|
||||||
|
|
||||||
Scenario: accepting a contact request to multiple aspects
|
Scenario: accepting a contact request to multiple aspects
|
||||||
|
|
@ -37,14 +37,14 @@ Feature: sending and receiving requests
|
||||||
And I wait for the ajax to finish
|
And I wait for the ajax to finish
|
||||||
|
|
||||||
When I go to the home page
|
When I go to the home page
|
||||||
Then I go to the aspects manage page
|
Then I go to the manage aspects page
|
||||||
|
|
||||||
Then I should see 1 contact in "Unicorns"
|
Then I should see 1 contact in "Unicorns"
|
||||||
Then I should see 1 contact in "Besties"
|
Then I should see 1 contact in "Besties"
|
||||||
Then I go to the destroy user session page
|
Then I go to the destroy user session page
|
||||||
|
|
||||||
When I sign in as "bob@bob.bob"
|
When I sign in as "bob@bob.bob"
|
||||||
And I am on the aspects manage page
|
And I am on the manage aspects page
|
||||||
Then I should see 1 contact in "Besties"
|
Then I should see 1 contact in "Besties"
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -58,11 +58,11 @@ Feature: sending and receiving requests
|
||||||
And I wait for the ajax to finish
|
And I wait for the ajax to finish
|
||||||
|
|
||||||
When I go to the home page
|
When I go to the home page
|
||||||
Then I go to the aspects manage page
|
Then I go to the manage aspects page
|
||||||
|
|
||||||
Then I should see 1 contact in "Super People"
|
Then I should see 1 contact in "Super People"
|
||||||
Then I go to the destroy user session page
|
Then I go to the destroy user session page
|
||||||
|
|
||||||
When I sign in as "bob@bob.bob"
|
When I sign in as "bob@bob.bob"
|
||||||
And I am on the aspects manage page
|
And I am on the manage aspects page
|
||||||
Then I should see 1 contact in "Besties"
|
Then I should see 1 contact in "Besties"
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ Feature: disconnecting users
|
||||||
And a user with email "alice@alice.alice"
|
And a user with email "alice@alice.alice"
|
||||||
And a user with email "bob@bob.bob" is connected with "alice@alice.alice"
|
And a user with email "bob@bob.bob" is connected with "alice@alice.alice"
|
||||||
When I sign in as "bob@bob.bob"
|
When I sign in as "bob@bob.bob"
|
||||||
And I am on the aspects manage page
|
And I am on the manage aspects page
|
||||||
Then I should see 1 contact in "Besties"
|
Then I should see 1 contact in "Besties"
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -20,7 +20,7 @@ Feature: disconnecting users
|
||||||
And I follow "remove contact" in the modal window
|
And I follow "remove contact" in the modal window
|
||||||
|
|
||||||
And I wait for the ajax to finish
|
And I wait for the ajax to finish
|
||||||
And I am on the aspects manage page
|
And I am on the manage aspects page
|
||||||
Then I should see <contacts> in "Besties"
|
Then I should see <contacts> in "Besties"
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
@ -35,7 +35,7 @@ Feature: disconnecting users
|
||||||
And I press the first ".added" within "#facebox #aspects_list ul > li:first-child"
|
And I press the first ".added" within "#facebox #aspects_list ul > li:first-child"
|
||||||
|
|
||||||
And I wait for the ajax to finish
|
And I wait for the ajax to finish
|
||||||
And I am on the aspects manage page
|
And I am on the manage aspects page
|
||||||
Then I should see <contacts> in "Besties"
|
Then I should see <contacts> in "Besties"
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
@ -52,7 +52,7 @@ Feature: disconnecting users
|
||||||
And I press the first ".added" within "#facebox .contact_list ul > li:first-child"
|
And I press the first ".added" within "#facebox .contact_list ul > li:first-child"
|
||||||
|
|
||||||
And I wait for the ajax to finish
|
And I wait for the ajax to finish
|
||||||
And I am on the aspects manage page
|
And I am on the manage aspects page
|
||||||
Then I should see no contacts in "Besties"
|
Then I should see no contacts in "Besties"
|
||||||
|
|
||||||
Scenario: cancel removing contact from the contact show page
|
Scenario: cancel removing contact from the contact show page
|
||||||
|
|
@ -64,6 +64,6 @@ Feature: disconnecting users
|
||||||
And I press the first ".added" within "#facebox .contact_list ul > li:first-child"
|
And I press the first ".added" within "#facebox .contact_list ul > li:first-child"
|
||||||
|
|
||||||
And I wait for the ajax to finish
|
And I wait for the ajax to finish
|
||||||
And I am on the aspects manage page
|
And I am on the manage aspects page
|
||||||
Then I should see 1 contact in "Besties"
|
Then I should see 1 contact in "Besties"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ Feature: managing contact requests
|
||||||
|
|
||||||
@javascript
|
@javascript
|
||||||
Scenario: viewing a requests profile
|
Scenario: viewing a requests profile
|
||||||
When I am on the aspects manage page
|
When I am on the manage aspects page
|
||||||
When I click on the contact request
|
When I click on the contact request
|
||||||
And I wait for "the requestors profile" to load
|
And I wait for "the requestors profile" to load
|
||||||
Then I should be on the requestors profile
|
Then I should be on the requestors profile
|
||||||
|
|
|
||||||
|
|
@ -42,21 +42,21 @@ describe ServicesController do
|
||||||
it 'creates a new OmniauthService' do
|
it 'creates a new OmniauthService' do
|
||||||
request.env['omniauth.auth'] = omniauth_auth
|
request.env['omniauth.auth'] = omniauth_auth
|
||||||
lambda{
|
lambda{
|
||||||
post :create
|
post :create, :provider => 'twitter'
|
||||||
}.should change(@user.services, :count).by(1)
|
}.should change(@user.services, :count).by(1)
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'redirects to getting started if the user is getting started' do
|
it 'redirects to getting started if the user is getting started' do
|
||||||
@user.getting_started = true
|
@user.getting_started = true
|
||||||
request.env['omniauth.auth'] = omniauth_auth
|
request.env['omniauth.auth'] = omniauth_auth
|
||||||
post :create
|
post :create, :provider => 'twitter'
|
||||||
response.should redirect_to getting_started_path(:step => 3)
|
response.should redirect_to getting_started_path(:step => 3)
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'redirects to services url' do
|
it 'redirects to services url' do
|
||||||
@user.getting_started = false
|
@user.getting_started = false
|
||||||
request.env['omniauth.auth'] = omniauth_auth
|
request.env['omniauth.auth'] = omniauth_auth
|
||||||
post :create
|
post :create, :provider => 'twitter'
|
||||||
response.should redirect_to services_url
|
response.should redirect_to services_url
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
@ -65,7 +65,7 @@ describe ServicesController do
|
||||||
Service.delete_all
|
Service.delete_all
|
||||||
@user.getting_started = false
|
@user.getting_started = false
|
||||||
request.env['omniauth.auth'] = omniauth_auth
|
request.env['omniauth.auth'] = omniauth_auth
|
||||||
post :create
|
post :create, :provider => 'twitter'
|
||||||
@user.reload.services.first.class.name.should == "Services::Twitter"
|
@user.reload.services.first.class.name.should == "Services::Twitter"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue