Commit 7bb7bb39 authored by maxwell's avatar maxwell

Revert "persists open aspects across logins also fixed the status message...

Revert "persists open aspects across logins also fixed the status message controller spec broken in master"

This reverts commit 9e7f0323.
parent 9e7f0323
......@@ -15,8 +15,6 @@ class AspectsController < ApplicationController
else
@aspects = current_user.aspects.includes(:contacts => {:person => :profile})
end
current_user.open_aspects = params[:a_ids]
current_user.save
# redirect to signup
if current_user.getting_started == true || @aspects.blank?
......
......@@ -6,7 +6,7 @@ class HomeController < ApplicationController
def show
if current_user
redirect_to :controller => 'aspects', :action => 'index', :a_ids => current_user.open_aspects
redirect_to aspects_path
elsif is_mobile_device?
redirect_to user_session_path
else
......
......@@ -38,9 +38,6 @@ class User < ActiveRecord::Base
has_many :contact_people, :through => :contacts
has_many :services
serialize :open_aspects, Array
before_destroy :disconnect_everyone, :remove_person
before_save do
person.save if person
......
class AddOpenAspectsToUser < ActiveRecord::Migration
def self.up
add_column(:users, :open_aspects, :text)
end
def self.down
remove_column(:users, :open_aspects)
end
end
......@@ -10,7 +10,7 @@
#
# It's strongly recommended to check this file into your version control system.
ActiveRecord::Schema.define(:version => 20110201013408) do
ActiveRecord::Schema.define(:version => 20110130072907) do
create_table "aspect_memberships", :force => true do |t|
t.integer "aspect_id", :null => false
......@@ -312,8 +312,10 @@ ActiveRecord::Schema.define(:version => 20110201013408) do
t.boolean "unread", :default => true, :null => false
t.datetime "created_at"
t.datetime "updated_at"
t.string "mongo_id"
end
add_index "notifications", ["mongo_id"], :name => "index_notifications_on_mongo_id"
add_index "notifications", ["recipient_id"], :name => "index_notifications_on_recipient_id"
add_index "notifications", ["target_id"], :name => "index_notifications_on_target_id"
add_index "notifications", ["target_type", "target_id"], :name => "index_notifications_on_target_type_and_target_id"
......@@ -458,7 +460,6 @@ ActiveRecord::Schema.define(:version => 20110201013408) do
t.string "mongo_id"
t.string "invitation_service"
t.string "invitation_identifier"
t.text "open_aspects"
end
add_index "users", ["email"], :name => "index_users_on_email"
......
@javascript
Feature: saved state
Scenario: open aspects persist across sessions
Scenario: open aspects persist
Given I am signed in
And I have an aspect called "Open 1"
And I have an aspect called "Closed 1"
And I have an aspect called "Closed 2"
And I have an aspect called "Open 2"
And I am on the aspects page
When I follow "Open 1"
And I follow "Open 2"
Then I should have aspects "Open 1", "Open 2" open
Then I should have aspect "Open 1" "selected"
Then I should have aspect "Open 2" "selected"
Then I should have aspect "Closed 1" "not selected"
Then I should have aspect "Closed 2" "not selected"
And I click on my name in the header
And I follow "logout"
And I go to the new user session page
And I am signed in
Then I should be on the aspects page
Then I should have aspect "Open 1" "selected"
But I should have aspect "Open 2" "selected"
But I should have aspect "Closed 1" "not selected"
But I should have aspect "Closed 2" "not selected"
And I fill in "Username" with "ohai"
And I fill in "Password" with "secret"
Then I should be on the aspects page
Then I should have aspects "Open 1", "Open 2" open
......@@ -71,17 +71,3 @@ end
When /^I click on the contact request$/ do
find(".person.request.ui-draggable a").click
end
Then /^I should have aspect "([^"]*)" "([^"]*)"$/ do |arg1, arg2|
@aspect = Aspect.where(:name => arg1).first
val = evaluate_script("$('#aspect_nav').children('li[data-guid=#{@aspect.id}]').hasClass('selected');") #
if arg2 == "selected"
val.should == true
elsif arg2 == "not selected"
val.should == false
else
raise "Aspect state should either be 'selected' or 'not selected'"
end
end
......@@ -87,23 +87,6 @@ describe AspectsController do
get :index, :a_ids => [@aspect0.id.to_s, @aspect1.id.to_s]
assigns(:posts).length.should == 8
end
context "storing state" do
before do
@index_params = {:a_ids => [@aspect0.id.to_s, @aspect1.id.to_s]}
end
it "stores the aspect params in the user" do
get :index, @index_params
@user.reload.open_aspects.should == @index_params[:a_ids]
end
it "correctly stores the aspect params" do
@user.open_aspects = @index_params[:a_ids]
@user.save
get :index
@user.reload.open_aspects.should == nil
end
end
end
context 'performance' do
......@@ -336,7 +319,6 @@ describe AspectsController do
describe "#hashes_for_posts" do
it 'returns only distinct people' do
pending
end
end
end
......@@ -23,18 +23,7 @@ describe HomeController do
it 'redirects to aspects index if user is logged in' do
sign_in @user
get :show
response.should redirect_to( :controller => 'aspects', :action => 'index')
end
it 'redirects to aspects index with stored aspects' do
sign_in @user
@aspect0 = @user.aspects.all[0]
@aspect1 = @user.aspects.create(:name => "Yeaaaah!")
@index_params = {:a_ids => [@aspect0.id.to_s, @aspect1.id.to_s]}
@user.open_aspects = @index_params[:a_ids]
@user.save
get :show
response.should redirect_to( :controller => 'aspects', :action => 'index', :a_ids => @index_params[:a_ids] )
response.should redirect_to aspects_path
end
end
......
......@@ -30,7 +30,7 @@ describe StatusMessagesController do
end
it 'succeeds' do
get :show, "id" => @message.id.to_s
get :show, "id" => message.id.to_s
response.should be_success
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