diff --git a/.rspec b/.rspec index 4e1e0d2f7..e9a033bef 100644 --- a/.rspec +++ b/.rspec @@ -1 +1,3 @@ --color +--require rspec/instafail +--format RSpec::Instafail diff --git a/app/controllers/people_controller.rb b/app/controllers/people_controller.rb index 6f2634be0..8ffa6651c 100644 --- a/app/controllers/people_controller.rb +++ b/app/controllers/people_controller.rb @@ -10,10 +10,39 @@ class PeopleController < ApplicationController def index @aspect = :search + @people = Person.search(params[:q]).paginate :page => params[:page], :per_page => 25, :order => 'created_at DESC' + + + # dont do it@people.first.diaspora_handle == params[:q] + + #only do it if it is an email address + if params[:q].try(:match, Devise.email_regexp) + find_remote_user(params[:q]) + end + respond_with @people end + def find_remote_user(account) + + finger = EMWebfinger.new(account) + finger.on_person do |response| + begin + puts response.inspect + if response.class == Person + + response.socket_to_uid(current_user.id, :aspects => @aspects) + else + require File.join(Rails.root,'lib/diaspora/websocket') + puts Diaspora::WebSocket + Diaspora::WebSocket.queue_to_user(current_user.id, {:class => 'person', :query => account, :response => response}) + end + rescue + end + end + end + def show @person = Person.find(params[:id].to_id) diff --git a/app/helpers/sockets_helper.rb b/app/helpers/sockets_helper.rb index 7c70b8e21..1ad68551b 100644 --- a/app/helpers/sockets_helper.rb +++ b/app/helpers/sockets_helper.rb @@ -3,17 +3,19 @@ # the COPYRIGHT file. module SocketsHelper - include ApplicationHelper + include ApplicationHelper - def obj_id(object) - (object.is_a? Post) ? object.id : object.post_id + def obj_id(object) + object.respond_to?(:post_id) ? object.post_id : object.id end def action_hash(uid, object, opts={}) begin user = User.find_by_id uid if object.is_a? Post - v = render_to_string(:partial => 'shared/stream_element', :locals => {:post => object, :current_user => user}) unless object.is_a? Retraction + v = render_to_string(:partial => 'shared/stream_element', :locals => {:post => object, :current_user => user}) + elsif object.is_a? Person + v = render_to_string(:partial => type_partial(object), :locals => {:person => object, :current_user => user}) unless object.is_a? Retraction else v = render_to_string(:partial => type_partial(object), :locals => {:post => object, :current_user => user}) unless object.is_a? Retraction end @@ -32,7 +34,7 @@ module SocketsHelper action_hash[:notification] = notification(object) end - action_hash[:mine?] = object.person && (object.person.owner.id == uid) + action_hash[:mine?] = object.person && (object.person.owner.id == uid) if object.respond_to?(:person) action_hash.to_json end diff --git a/app/models/person.rb b/app/models/person.rb index b7025a25e..62cc5759b 100644 --- a/app/models/person.rb +++ b/app/models/person.rb @@ -8,6 +8,8 @@ class Person include MongoMapper::Document include ROXML include Encryptor::Public + require File.join(Rails.root, 'lib/diaspora/websocket') + include Diaspora::Socketable xml_accessor :_id xml_accessor :diaspora_handle @@ -148,7 +150,6 @@ class Person } } end - protected def clean_url diff --git a/app/models/user.rb b/app/models/user.rb index a0a6d6fa0..44be1e3cc 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -239,6 +239,7 @@ class User end def push_to_person(salmon, post, person) + person.reload # Sadly, we need this for Ruby 1.9. # person.owner will always return a ProxyObject. # calling nil? performs a necessary evaluation. unless person.owner.nil? diff --git a/app/views/js/_websocket_js.haml b/app/views/js/_websocket_js.haml index 4e4d26170..fa2636e35 100644 --- a/app/views/js/_websocket_js.haml +++ b/app/views/js/_websocket_js.haml @@ -17,6 +17,8 @@ if(obj['notice']){ processNotification(obj['notice']); + }else if (obj['class'] == 'people'){ + processPerson(obj['html']); }else{ debug("got a " + obj['class'] + " for aspects " + obj['aspect_ids']); @@ -42,6 +44,10 @@ }); + function processPerson(html){ + $('.people#stream').prepend(html).slideDown('slow', function(){}) + } + function processNotification(html){ $('#notification').html(html).fadeIn(200).delay(4000).fadeOut(200, function(){ $(this).html("");}); } @@ -97,7 +103,7 @@ function processPhotoInAlbum(photoHash){ if (location.href.indexOf(photoHash['album_id']) == -1){ return ; - } + }› html = "
\ \ \"New \ diff --git a/app/views/people/_person.html.haml b/app/views/people/_person.html.haml index 0a441452d..a66632e88 100644 --- a/app/views/people/_person.html.haml +++ b/app/views/people/_person.html.haml @@ -18,7 +18,7 @@ - elsif current_user.pending_requests.find_by_person_id(person.id) = link_to =t('.pending_request'), aspects_manage_path - else - = render :partial => 'requests/new_request_to_person', :locals => {:aspects => @aspects, :person => person} + = render :partial => 'requests/new_request_to_person', :locals => {:aspects => aspects, :person => person} .info = person.diaspora_handle diff --git a/app/views/people/index.html.haml b/app/views/people/index.html.haml index f5c3fd5e6..cf6bb2a55 100644 --- a/app/views/people/index.html.haml +++ b/app/views/people/index.html.haml @@ -7,8 +7,8 @@ =t('.results_for') %u= params[:q] - %ul#stream + %ul#stream.people - for person in @people - = render 'people/person', :person => person + = render 'people/person', :person => person, :aspects => @aspects = will_paginate @people diff --git a/app/views/registrations/edit.html.haml b/app/views/registrations/edit.html.haml index 80da58fe5..a71cd97c7 100644 --- a/app/views/registrations/edit.html.haml +++ b/app/views/registrations/edit.html.haml @@ -25,4 +25,4 @@ %h3 t('.cancel_my_account') %p = t('.unhappy') #{link_to t('.cancel_my_account'), registration_path(resource_name), :confirm => t('are_you_sure'), :method => :delete}. -= link_to t('.back'), :back += link_to t('back'), :back diff --git a/app/views/shared/_invitations.haml b/app/views/shared/_invitations.haml index adf0396fe..2ef7683f8 100644 --- a/app/views/shared/_invitations.haml +++ b/app/views/shared/_invitations.haml @@ -1,6 +1,6 @@ %h4 = t('.invites') -= link_to t('.invite_someone'), "#invite_user_pane", :class => "invite_user_button", :title => "Invite someone" += link_to t('.invite_someone'), "#invite_user_pane", :class => "invite_user_button", :title => t('.invite_someone') = t('.invitations_left', :count => invites) %br .yo{ :style => "display:none;"} diff --git a/config/locales/devise/devise.sv.yml b/config/locales/devise/devise.sv.yml index 419d90deb..eeabea803 100644 --- a/config/locales/devise/devise.sv.yml +++ b/config/locales/devise/devise.sv.yml @@ -2,7 +2,7 @@ # licensed under the Affero General Public License version 3 or later. See # the COPYRIGHT file. # -# See config/locales/devise/devise.sv.yml for Swedish Diaspora terms. +# See config/locales/diaspora/sv.yml for Swedish Diaspora terms. sv: errors: @@ -26,11 +26,16 @@ sv: username: 'Användarnamn' password: 'Lösenord' sign_in: 'Logga in' + have_a_problem: "Har du problem att komma in? Klicka här" + remember_me: "Kom ihåg mig" signed_in: 'Inloggning ok.' signed_out: 'Utloggning ok.' passwords: send_instructions: 'Du kommer att få ett ebrev med instruktioner för att återställa lösenordet inom några minuter.' updated: 'Ditt lösenord har ändrats och du är inloggad.' + new: + forgot_password: "Glömt ditt lösenord?" + send_password_instructions: "Skicka mig information om hur jag återställer lösenordet" confirmations: send_instructions: 'Du kommer att få ett ebrev med instruktioner för att verifiera ditt konto inom några minuter.' confirmed: 'Ditt konto har verifierats och du är inloggad.' @@ -46,14 +51,31 @@ sv: invitation_token_invalid: 'Denna inbjudan är ej giltig!' updated: 'Ditt lösenord är nu inställt och du är inloggad.' mailer: - confirmation_instructions: - subject: 'Instruktioner för att verifiera ditt konto.' - reset_password_instructions: - subject: 'Instruktioner för att återställa ditt lösenord.' - unlock_instructions: - subject: 'Instruktioner för att låsa upp ditt konto.' + welcome: "Välkommen %{email}!" + hello: "Hej %{email}!" + confirmation_instructions: + subject: 'Instruktioner för att aktivera ditt konto' + you_can_confirm: "Klicka på länken nedan för att aktivera ditt konto:" + confirm: "Aktivera mitt konto" + reset_password_instructions: + subject: 'Instruktioner för att återställa lösenordet' + someone_requested: "Du har efterfrågat en länk för att återställa ditt lösenord. För att fullfölja det, klicka på länken neda." + change: "Återställ mitt lösenord" + wont_change: "Dit lösenord kommer inte ändras förrän du klickat på länken och ändrat det." + ignore: "Om det inte är du som vill byta lösenord så kan du ignorera det här mailet." + unlock_instructions: + subject: 'Instruktioner för upplåsning' + account_locked: "Ditt konto har låsts eftersom du eller någon annan har angett fel lösenord för många gånger." + click_to_unlock: "Klicka på länken nedan för att låsa upp ditt konto:" + unlock: "Lås upp mitt konto" invitation: subject: 'En vän vill att du ska gå med i Diaspora!' + has_invited_you: "%{name} har bjudit in dig till Diaspora" + have_invited_you: "%{names} har bjudit in dig till Diaspora" + accept_at: ", gå till %{url} för att acceptera din inbjudan." + accept: "Acceptera inbjudan" + ignore: "Om du inte vill gå med i Diaspora kan du ignorera detta mail." + no_account_till: "Ditt konto kommer inte skapas förrän du klickat på knappen ovan och skapat ett nytt konto." shared: links: sign_in: 'Logga in' diff --git a/config/locales/diaspora/en.yml b/config/locales/diaspora/en.yml index 0d09be811..4ed3f60fe 100644 --- a/config/locales/diaspora/en.yml +++ b/config/locales/diaspora/en.yml @@ -223,7 +223,6 @@ en: leave_blank: "(leave blank if you don't want to change it)" password_to_confirm: "(we need your current password to confirm your changes)" unhappy: "Unhappy?" - back: "Back" update: "Update" cancel_my_account: "Cancel my account" closed: "Signups are closed on this Diaspora pod." @@ -264,6 +263,7 @@ en: request_people: "If you'd like, you can request to place him/her in one of your aspects." already_requested: "You have already sent a request to %{name}." does_not_exist: "Person does not exist!" + not_connected: "You are not connected with this person" edit: info_available_to: "This info will be available to whomever you connect with on Diaspora." your_profile: "Your profile" diff --git a/config/locales/diaspora/sv.yml b/config/locales/diaspora/sv.yml index 55a3114c1..180f486da 100644 --- a/config/locales/diaspora/sv.yml +++ b/config/locales/diaspora/sv.yml @@ -20,7 +20,8 @@ # request: (vän-) förfrågan # profile: profil # seed: frö -# +# contact: kontakt + sv: settings: "Inställningar" @@ -88,13 +89,13 @@ sv: share_with_all: "Dela på alla sidor" share_with: "Dela med %{aspect}" all: "alla" - aspect_friends: - add_friends: "lägg till vänner" + aspect_contacts: + add_contacts: "lägg till kontakter" everyone: "Alla" add_to: "lägg till i %{aspect}" invitations: invites: "Inbjudningar" - invite_a_friend: "Bjud in en vän" + invite_someone: "Bjud in en kontakt" invitations_left: "(%{count} kvar)" reshare: reshare: "Återdela" @@ -110,18 +111,18 @@ sv: notification: new: "Ny %{type} från %{from}" aspects: - no_friends_message: - nobody: "Vi vet att du har vänner, bjud in dem till Diaspora!" + no_contacts_message: + nobody: "Vi vet att du har kontakter, bjud in dem till Diaspora!" nobody_in_aspect: "Sidan '%{aspect_name}' är tom." - add_friend: "Lägg till en vän" - add_friend_to: "Lägg till en vän i %{aspect_name}" - invite: "Bjud in en vän till Diaspora!" + add_contact: "Lägg till en kontakt" + add_contact_to: "Lägg till en kontakt i %{aspect_name}" + invite: "Bjud in en kontakt till Diaspora!" no_posts_message: start_talking: "Ingen har sagt något än. Bli först!" manage: add_a_new_aspect: "Lägg till en ny sida" - add_a_new_friend: "Lägg till en ny vän" - requests: "Vänförfrågningar" + add_a_new_contact: "Lägg till en ny kontakt" + requests: "Kontaktförfrågningar" no_requests: "Inga nya förfrågningar" manage_aspects: "Hantera sidor" drag_to_add: "Dra för att lägga till personer" @@ -136,10 +137,10 @@ sv: success: "%{name} är nu borttagen." update: success: "Din sida %{name} är nu ändrad." - move_friend: + move_contact: failure: "fungerade inte %{inspect}" success: "Personen flyttades till den nya sidan" - error: "Kunde inte flytta vän: %{inspect}" + error: "Kunde inte flytta kontakt: %{inspect}" add_to_aspect: failure: "Misslyckades med att lägga in personen på den nya sidan." success: "Personen tillagt på sidan." @@ -152,7 +153,7 @@ sv: failure: "Misslyckades med att ta bort personen från vald sida" users: edit: - invite_friends: "Bjud in en vän" + invite_contacts: "Bjud in en kontakt" export_data: "Exportera data" close_account: "Stäng kontot" change_language: "Ändra språk" @@ -178,7 +179,7 @@ sv: add: "Lägg till" step_3: your_services: "Dina tjänster" - description: 'Anslut dina befintliga tjänster till ditt Diaspora-konto. Du kommer att kunna skicka meddelanden genom dessa om du väljer "gör publik." på sidan för alla vänner.' + description: 'Anslut dina befintliga tjänster till ditt Diaspora-konto. Du kommer att kunna skicka meddelanden genom dessa om du väljer "gör publik." på sidan för alla kontakter.' step_4: set_up: "Nu är guiden klar, %{name}!" ready_to_share: "Du är nu redo att börja dela med " @@ -234,12 +235,19 @@ sv: sign_up_for_diaspora: "Gå med i Diaspora" create: success: "Du har nu gått med i Diaspora!" + edit: + edit: "Ändra %{name}" + leave_blank: "(lämna tomt om du inte vill ändra det)" + password_to_confirm: "(det nuvarande lösenordet krävs för att bekräfta ändringarna)" + unhappy: "Missnöjd?" + update: "Uppdatera" + cancel_my_account: "Avsluta mitt konto" invitations: create: sent: 'Din inbjudan är nu skickad.' no_more: 'Du har inga fler inbjudningar.' already_sent: 'Du har redan bjudit in denna person.' - already_friends: 'Du är redan vän med den här personen' + already_friends: 'Den här personen finns redan bland dina kontakter' new: invite_someone_to_join: "Bjud in en än till Diaspora!" if_they_accept_info: "om de accepterar så kommer de att läggas till på den sida du valde" @@ -257,21 +265,19 @@ sv: destroy: "Ta bort" helper: no_message_to_display: "Inget meddelande att visa." - index: - status_messages: "statusmeddelanden" people: person: pending_request: "väntande förfrågningar" - already_friends: "Redan vänner" + already_friends: "Finns i dina kontakter" thats_you: "Detta är du!" + add_contact: "lägg till kontakt" index: results_for: "sökresultat för" show: no_posts: "inga meddelanden att visa!" - add_friend: "lägg till vän" - not_friends: "Du ärr närvarande inte vän med %{name}" - request_people: "Om du känner för det så skulle du kunna skicka en vänförfrågan." - already_requested: "Du har redan skickat en vänförfrågan till %{name}." + not_friends: "%{name} finns inte bland dina kontakter" + request_people: "Om du känner för det så skulle du kunna skicka en kontaktförfrågan." + already_requested: "Du har redan skickat en kontaktförfrågan till %{name}." does_not_exist: "Den här personen finns inte!" edit: info_available_to: "Den här informationen kommer vara synlig för alla som du ansluter till på diaspora." @@ -291,7 +297,7 @@ sv: updated: "Profilen är uppdaterad" failed: "Misslyckades med att uppdatera profilen" profile_sidebar: - remove_friend: "ta bort vän" + remove_contact: "ta bort kontakt" edit_my_profile: "Ändra min profil" last_seen: "senast sedd: %{how_long_ago}" bio: "bio" @@ -301,16 +307,16 @@ sv: results_for: " resultat för %{params}" people_on_pod_are_aware_of: " personer på denna plats är medvetna om att" requests: - new_request: - add_a_new_friend_to: "Lägg till en vän till" + manage_aspect_contacts: + add_a_new_contact_to: "Lägg till en kontakt till" enter_a_diaspora_username: "Ange ett användarnamn:" your_diaspora_username_is: "Din Diaspora-adress är: %{diaspora_handle}" - friends_username: "Vännens Diaspora-adress" + contact_username: "Kontaktens Diaspora-adress" create_request: "Skapa förfrågan" destroy: - success: "Ni är nu vänner." + success: "Kontakten är nu tillagd." error: "Var god välj en aspekt!" - ignore: "Ignorerade vänförfrågan." + ignore: "Ignorerade kontaktförfrågan." create: tried: "vi gjorde vårat bästa för att skicka meddelandet till %{account}" services: @@ -332,13 +338,13 @@ sv: love: "hälsningar," diaspora: "Diasporas mailrobot" new_request: - subject: "ny Diaspora vänförfågan från %{from}" - just_sent_you: "skickade nyss en vänförfrågan till dig på Diaspora" + subject: "ny kontaktförfrågan från %{from}" + just_sent_you: "skickade nyss en kontaktförfrågan till dig på Diaspora" try_it_out: "Du borde verkligen överväga att kolla upp detta." sign_in: "logga in här" request_accepted: - subject: "%{name} har accepterat din vänförfrågan på Diaspora" - accepted: "har accepterat din vänförfrågan. Denne finns nu på " + subject: "%{name} har accepterat din kontaktförfrågan på Diaspora" + accepted: "har accepterat din kontaktförfrågan. Denne finns nu på " aspect: "sidan." # The following is from the rails-i18n project at http://github.com/svenfuchs/rails-i18n diff --git a/features/manages_contact_requests.feature b/features/manages_contact_requests.feature index df7ccef2f..f4157c373 100644 --- a/features/manages_contact_requests.feature +++ b/features/manages_contact_requests.feature @@ -2,6 +2,7 @@ Feature: managing contact requests Background: Given I am signed in + And I have an aspect called "Family" And I have one contact request Scenario: seeing contact requests @@ -10,8 +11,6 @@ Feature: managing contact requests @javascript @wip Scenario: accepting a contact request - Given I have an aspect called "Family" - When I am on the home page And I follow "Manage (1)" Then I should see 1 contact request diff --git a/features/step_definitions/session_steps.rb b/features/step_definitions/session_steps.rb index abc9e87df..53cdf9f99 100644 --- a/features/step_definitions/session_steps.rb +++ b/features/step_definitions/session_steps.rb @@ -11,7 +11,7 @@ end Given 'I am signed in' do - @me ||= Factory(:user) + @me ||= Factory(:user, :getting_started => false) When %(I go to the new user session page) When %(I fill in "Username" with "#{@me.username}") When %(I fill in "Password" with "#{@me.password}") diff --git a/features/step_definitions/user_steps.rb b/features/step_definitions/user_steps.rb index 10b8fb8b8..6b71ed61a 100644 --- a/features/step_definitions/user_steps.rb +++ b/features/step_definitions/user_steps.rb @@ -14,10 +14,11 @@ end Given /^I have one contact request$/ do other_user = make_user - other_user.aspects.create!(:name => "meh") + other_aspect = other_user.aspects.create!(:name => "meh") + other_user.send_contact_request_to(@me.person, other_aspect) + other_user.reload - - other_user.send_contact_request_to(@me.person, other_user.aspects.first) + other_aspect.reload @me.reload end diff --git a/lib/diaspora/user/connecting.rb b/lib/diaspora/user/connecting.rb index 40d05c1f2..db9f840bf 100644 --- a/lib/diaspora/user/connecting.rb +++ b/lib/diaspora/user/connecting.rb @@ -7,12 +7,12 @@ module Diaspora module Connecting def send_contact_request_to(desired_contact, aspect) # should have different exception types for these? - raise "You cannot connect yourself" if desired_contact.nil? - raise "You have already sent a contact request to that person!" if self.pending_requests.detect{ - |x| x.to == desired_contact} + raise "You cannot connect yourself" if desired_contact.nil? + raise "You have already sent a contact request to that person!" if self.pending_requests.detect { + |x| x.to == desired_contact } raise "You are already connected to that person!" if contact_for desired_contact request = Request.instantiate( - :to => desired_contact, + :to => desired_contact, :from => self.person, :into => aspect) if request.save @@ -39,8 +39,8 @@ module Diaspora end def accept_and_respond(contact_request_id, aspect_id) - request = pending_requests.find!(contact_request_id) - requester = request.from + request = pending_requests.find!(contact_request_id) + requester = request.from reversed_request = accept_contact_request(request, aspect_by_id(aspect_id)) dispatch_contact_acceptance reversed_request, requester end @@ -58,7 +58,7 @@ module Diaspora def receive_contact_request(contact_request) Rails.logger.info("receiving contact request #{contact_request.to_json}") - + #response from a contact request you sent if original_request = original_request(contact_request) destination_aspect = self.aspect_by_id(original_request.into_id) @@ -72,7 +72,7 @@ module Diaspora self.save Request.send_request_accepted(self, contact_request.from, destination_aspect) - #this is a new contact request + #this is a new contact request elsif !request_from_me?(contact_request) self.pending_requests << contact_request self.save! @@ -94,19 +94,23 @@ module Diaspora def remove_contact(bad_contact) contact = contact_for(bad_contact) - contact.aspects.each{|aspect| + contact.aspects.each do |aspect| contact.aspects.delete(aspect) - aspect.posts.each { |post| + aspect.posts.each do |post| aspect.post_ids.delete(post.id) if post.person == bad_contact - } + end aspect.save - } + end - self.raw_visible_posts.find_all_by_person_id( bad_contact.id ).each{|post| - self.visible_post_ids.delete( post.id ) + self.raw_visible_posts.find_all_by_person_id(bad_contact.id).each do |post| + self.visible_post_ids.delete(post.id) post.user_refs -= 1 - (post.user_refs > 0 || post.person.owner.nil? == false) ? post.save : post.destroy - } + if (post.user_refs > 0) || post.person.owner.nil? == false + post.save + else + post.destroy + end + end self.save raise "Contact not deleted" unless contact.destroy bad_contact.save @@ -133,7 +137,7 @@ module Diaspora end def requests_for_me - pending_requests.select{|req| req.to == self.person} + pending_requests.select { |req| req.to == self.person } end end end diff --git a/spec/fixtures/users.yaml b/spec/fixtures/users.yaml index 5d6b5ade4..45d9f0294 100644 --- a/spec/fixtures/users.yaml +++ b/spec/fixtures/users.yaml @@ -1,908 +1,908 @@ --- :users: -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:26 Z - profile: !map:ActiveSupport::HashWithIndifferentAccess - searchable: true - image_url: - _id: !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 237 - gender: - diaspora_handle: - birthday: - last_name: Grimm6636c824 - bio: - first_name: Robert661d698e - updated_at: 2010-11-15 05:41:26 Z - _id: !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 238 - url: http://google-6640be67.com/ - serialized_public_key: | - -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= - -----END RSA PUBLIC KEY----- - - owner_id: &id001 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 5 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 236 - diaspora_handle: bob65f3c2eb@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$LI/pdUI/E.aHa3WCBLu1LO1XV53nSKZhYHZqiSVonBTHmVc8fiDa2 +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$t9c8prIPVgWLFCEfjpSkl.PkjHJw..tyrDWBRACdTNzGCsn0Yh/Cy serialized_private_key: &id002 | -----BEGIN RSA PRIVATE KEY----- - MIICXAIBAAKBgQC8nhWLi8XH9Nuj71WzSGYFSumBkOq0z83ZlKQvi08IuDW7uaZz - yuX+GK6sMtg8YHlWBGvuY/P97oDIz76t0USWSwqnGXTaAqHbjCQ1q4OcbDbonWgK - 6VuUJBKHj3gGY2pM+HO4B9yMNyqdG8od0iuDIdrhx69Fo6xeenrEMxlLRwIDAQAB - AoGActSfc0yOBbVJvt1nxHVwPwqjbJEogxn8TdnTt2pNnJZhiD93WgmNyguG1ClE - QkXNuROKDiFmGxOH7jmj8bh00ypWzy9TWnbUf/PL/g+gSiG0ft0CM+0i93VXlMv9 - AR2U/fOLdEy9Bra+ntwnFQaJ78rAUD5ccbWSBqg/TtSS0NECQQDyUvSIAr92tlLg - ywM3ObyxcznLItQ12Oq6R/dDKnajaMORzGCNqVV6frwYM989ln8+CctXWCi4ZcWh - /Uyp59RPAkEAx0MwVMvcfOZjtCU4aTL54CdrSaFqNvdZcjcp0+KO0N+eBOtkl0Ai - FbAIZEXjBg2HUKDgWI6z1ZwmMwDw2QhDiQJAVg5TvQGM0THKmP4/tBsTAcmz2ooR - 5tWT9necPgQUgc+wtFRqbaSXMJtVXRr+yrZplbSQvAIY4/NwjiiQUz57TQJAbQJv - 1WP1iorLrsjR9JNDqgJGqnBY2Bs3XsmY42bFNLWxEAXq8OfP/cdgv+KP0UbjaROp - yCjBbzHOoAZ6vHDN6QJBALRtEh3jaOulkia82LV6ZzOl6Gsp86Y/D1FWHPKNVNoS - 8f++mBU56ozNy3JnU2gyIJSoy5zn9VdHR8qvhLtV/R8= + MIICXQIBAAKBgQDDkWNWHlt9VZp8wH3LhUCGxJWvxmbmEAJ2dGTopSqan1+gCCDW + JXKZ5LcUcRFOyW+voWqPqsW6LvYy8MQ2V0cQX46/sKJapEdp79WUpK9Iy83OTJaU + ETeXqs7NwWI7FBqYBcWTeWRPr9Wkglo/duv2bd4kxtAjQObFp0Q6F/LwGwIDAQAB + AoGBAKYo5t+Kl20byFBqM/cxViuq5wsbZN3fiFggeIP5oQMSmeqcPVn1IzOB0dN6 + ZZwtJclxOdqq26hesiuByRPqf6L5hSrqgCysQ4JoKBiiGasmiQgKg4+ERNQRBJpW + PINkRl9f674s0MzmcbGUwhDQilhxbxZia+J2mEj9teUq3IpBAkEA94Ts+qzOStF9 + DcY3jkllfhl7MNMuz6XlKWX/2I+rhUmifBeNO1WwdgURJG0UNHmx1PXk5b9DIGyI + 4kGY+T2GqwJBAMpEx6aPxZPbkuIaiowJ0jMjlRXOgyG3P5hr7KdnpGZEXjtHB6pC + nxUKehZrAWj1jPkEKqZmbnuWiFNT2GzB/FECQQCfMBFNQvhF7Cc2RaYTT6cDi5XM + F/YCPBp/HoeGGxhf17S1hFwjrf+YV7fnqnOVMDMr2J1HGVQttT/v6+pbWbOTAkBg + BZbiM46QSsTIIeFz6ZWoQVQdLhSChQPj0BhgwIsDIaG6clXpNgdfbcHXsqTQtwFd + leTJagc5FJVTOZKcztqBAkBAt/ALKlMLjyV/wp2dBkUNW+QrseFmS9WM7QrMCgAE + q+bpDQWCIuIypFn9t/z0gK3VA+vpP/7vH6lz0Gai921N -----END RSA PRIVATE KEY----- pending_request_ids: [] last_sign_in_ip: invites: 5 - _id: *id001 - last_sign_in_at: - username: bob65f3c2eb - language: en - sign_in_count: 0 - visible_person_ids: [] - - password_salt: $2a$10$LI/pdUI/E.aHa3WCBLu1LO - remember_token: - reset_password_token: - current_sign_in_ip: - remember_created_at: - current_sign_in_at: - invitation_sent_at: - email: bob665b3e89@pivotallabs.com - invitation_token: - visible_post_ids: [] - - getting_started: true -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:26 Z - profile: !map:ActiveSupport::HashWithIndifferentAccess - searchable: true - image_url: - _id: !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 240 - gender: - diaspora_handle: - birthday: - last_name: Grimm6771b344 - bio: - first_name: Robert6710f3e5 - updated_at: 2010-11-15 05:41:26 Z - _id: !ruby/object:BSON::ObjectId + _id: &id001 !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 6 + - 226 + - 39 + - 146 - 35 - 103 - 188 - - 184 - - 81 - - 0 - - 0 - - 241 - url: http://google-67db2778.com/ - serialized_public_key: | - -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= - -----END RSA PUBLIC KEY----- - - owner_id: &id003 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 239 - diaspora_handle: bob66ac6ea2@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$iDAabZ1errQEROqCsUQWuuDKQYzPqIjoFJ92Kg5vHlKFJNCmfJv86 - serialized_private_key: *id002 - pending_request_ids: [] - - last_sign_in_ip: - invites: 5 - _id: *id003 - last_sign_in_at: - username: bob66ac6ea2 - language: en - sign_in_count: 0 - visible_person_ids: [] - - password_salt: $2a$10$iDAabZ1errQEROqCsUQWuu - remember_token: - reset_password_token: - current_sign_in_ip: - remember_created_at: - current_sign_in_at: - invitation_sent_at: - email: bob67836b18@pivotallabs.com - invitation_token: - visible_post_ids: [] - - getting_started: true -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:26 Z - profile: !map:ActiveSupport::HashWithIndifferentAccess - searchable: true - image_url: - _id: !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 243 - gender: - diaspora_handle: - birthday: - last_name: Grimm68338cab - bio: - first_name: Robert688c74c6 - updated_at: 2010-11-15 05:41:26 Z - _id: !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 244 - url: http://google-68c8c56e.com/ - serialized_public_key: | - -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= - -----END RSA PUBLIC KEY----- - - owner_id: &id004 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 242 - diaspora_handle: bob67325b0d@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$qq5OzGMgVhQqebKvxkABNOqL3rR3bNoazye1w5Y1Mo4a85xDxM/qu - serialized_private_key: *id002 - pending_request_ids: [] - - last_sign_in_ip: - invites: 5 - _id: *id004 - last_sign_in_at: - username: bob67325b0d - language: en - sign_in_count: 0 - visible_person_ids: [] - - password_salt: $2a$10$qq5OzGMgVhQqebKvxkABNO - remember_token: - reset_password_token: - current_sign_in_ip: - remember_created_at: - current_sign_in_at: - invitation_sent_at: - email: bob68ce9277@pivotallabs.com - invitation_token: - visible_post_ids: [] - - getting_started: true -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:26 Z - profile: !map:ActiveSupport::HashWithIndifferentAccess - searchable: true - image_url: - _id: !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 246 - gender: - diaspora_handle: - birthday: - last_name: Grimm69687805 - bio: - first_name: Robert69e76d9c - updated_at: 2010-11-15 05:41:26 Z - _id: !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 + - 2 + - 77 - 0 - 0 - 247 - url: http://google-691b7ba8.com/ - serialized_public_key: | - -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= - -----END RSA PUBLIC KEY----- - - owner_id: &id005 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 245 - diaspora_handle: bob68406c00@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$xjffVd8FCJAawRTn3FE.t.kANNz54w8d1rvCvjkoT5IS1ZsI9wmxa - serialized_private_key: *id002 - pending_request_ids: [] - - last_sign_in_ip: - invites: 5 - _id: *id005 last_sign_in_at: - username: bob68406c00 + username: bob65ba0a0f language: en sign_in_count: 0 visible_person_ids: [] - password_salt: $2a$10$xjffVd8FCJAawRTn3FE.t. + password_salt: $2a$10$t9c8prIPVgWLFCEfjpSkl. remember_token: reset_password_token: current_sign_in_ip: remember_created_at: current_sign_in_at: invitation_sent_at: - email: bob69833eca@pivotallabs.com + email: bob66d17e1f@pivotallabs.com invitation_token: visible_post_ids: [] getting_started: true -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:26 Z + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:22 Z profile: !map:ActiveSupport::HashWithIndifferentAccess searchable: true image_url: _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 6 + - 226 + - 39 + - 146 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 - 0 - 0 - - 249 + - 248 gender: diaspora_handle: birthday: - last_name: Grimm700c8917 + last_name: Grimm66823757 bio: - first_name: Robert70a53a88 - updated_at: 2010-11-15 05:41:26 Z + first_name: Robert6661a188 + updated_at: 2010-11-16 06:41:22 Z _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 6 + - 226 + - 39 + - 146 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 + - 0 + - 0 + - 249 + url: http://google-66e43e1c.com/ + serialized_public_key: | + -----BEGIN RSA PUBLIC KEY----- + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= + -----END RSA PUBLIC KEY----- + + owner_id: *id001 + diaspora_handle: bob65ba0a0f@example.org +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$9MEqr/j2z5GLNSfg9Lh0eOPs9Fi9.qdQ65kPlzrE/yAnTib/6pgYu + serialized_private_key: *id002 + pending_request_ids: [] + + last_sign_in_ip: + invites: 5 + _id: &id003 !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 146 + - 35 + - 103 + - 188 + - 2 + - 77 - 0 - 0 - 250 - url: http://google-70785b34.com/ - serialized_public_key: | - -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= - -----END RSA PUBLIC KEY----- - - owner_id: &id006 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 248 - diaspora_handle: bob6991ced9@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$eSZ1FwJbg5bBKhXoRTZ6Ie0jmuQsqLnZ0AA2mbaAj.3Zuar1doBuq - serialized_private_key: *id002 - pending_request_ids: [] - - last_sign_in_ip: - invites: 5 - _id: *id006 last_sign_in_at: - username: bob6991ced9 + username: bob664bf731 language: en sign_in_count: 0 visible_person_ids: [] - password_salt: $2a$10$eSZ1FwJbg5bBKhXoRTZ6Ie + password_salt: $2a$10$9MEqr/j2z5GLNSfg9Lh0eO remember_token: reset_password_token: current_sign_in_ip: remember_created_at: current_sign_in_at: invitation_sent_at: - email: bob702c4173@pivotallabs.com + email: bob67b75eb0@pivotallabs.com invitation_token: visible_post_ids: [] getting_started: true -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:26 Z + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:22 Z profile: !map:ActiveSupport::HashWithIndifferentAccess searchable: true image_url: _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 6 + - 226 + - 39 + - 146 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 - 0 - 0 - - 252 + - 251 gender: diaspora_handle: birthday: - last_name: Grimm7151040b + last_name: Grimm67fe61ab bio: - first_name: Robert71f8e668 - updated_at: 2010-11-15 05:41:26 Z + first_name: Robert6768875d + updated_at: 2010-11-16 06:41:22 Z _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 6 + - 226 + - 39 + - 146 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 + - 0 + - 0 + - 252 + url: http://google-67c71b1c.com/ + serialized_public_key: | + -----BEGIN RSA PUBLIC KEY----- + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= + -----END RSA PUBLIC KEY----- + + owner_id: *id003 + diaspora_handle: bob664bf731@example.org +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$EM9yQHKbk5CQjamC1mNLPuMvHuUM/a5CRKi0WO/GTFZ9tzg4.MKj2 + serialized_private_key: *id002 + pending_request_ids: [] + + last_sign_in_ip: + invites: 5 + _id: &id004 !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 146 + - 35 + - 103 + - 188 + - 2 + - 77 - 0 - 0 - 253 - url: http://google-71c0bddc.com/ - serialized_public_key: | - -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= - -----END RSA PUBLIC KEY----- - - owner_id: &id007 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 251 - diaspora_handle: bob706b2562@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$3LSXM5oDBCjm7Bs/bx4TK.B909pIUcsLWo4s7VADEGg3GH3EZVL2S - serialized_private_key: *id002 - pending_request_ids: [] - - last_sign_in_ip: - invites: 5 - _id: *id007 last_sign_in_at: - username: bob706b2562 + username: bob675fe58c language: en sign_in_count: 0 visible_person_ids: [] - password_salt: $2a$10$3LSXM5oDBCjm7Bs/bx4TK. + password_salt: $2a$10$EM9yQHKbk5CQjamC1mNLPu remember_token: reset_password_token: current_sign_in_ip: remember_created_at: current_sign_in_at: invitation_sent_at: - email: bob71a027dc@pivotallabs.com + email: bob68129496@pivotallabs.com invitation_token: visible_post_ids: [] getting_started: true -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:26 Z + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:23 Z profile: !map:ActiveSupport::HashWithIndifferentAccess searchable: true image_url: _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 6 + - 226 + - 39 + - 147 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 - 0 - 0 - - 255 + - 254 gender: diaspora_handle: birthday: - last_name: Grimm7297a30f + last_name: Grimm6833357c bio: - first_name: Robert728f5b14 - updated_at: 2010-11-15 05:41:26 Z + first_name: Robert6844f470 + updated_at: 2010-11-16 06:41:23 Z _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 6 + - 226 + - 39 + - 147 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 + - 0 + - 0 + - 255 + url: http://google-6805a0b4.com/ + serialized_public_key: | + -----BEGIN RSA PUBLIC KEY----- + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= + -----END RSA PUBLIC KEY----- + + owner_id: *id004 + diaspora_handle: bob675fe58c@example.org +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$M9uOZAkFoR7Jveck7ANtb.cdXpBBTLwrKAVrxW6uihXNVITjuz566 + serialized_private_key: *id002 + pending_request_ids: [] + + last_sign_in_ip: + invites: 5 + _id: &id005 !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 - 0 - 1 - 0 - url: http://google-7226d696.com/ - serialized_public_key: | - -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= - -----END RSA PUBLIC KEY----- - - owner_id: &id008 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 0 - - 254 - diaspora_handle: bob71844d77@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$YaRZkC1M7yPyGlY92.1E0uDtbwGOmoHOmbSN1lqQU/YT22nVmWtjC - serialized_private_key: *id002 - pending_request_ids: [] - - last_sign_in_ip: - invites: 5 - _id: *id008 last_sign_in_at: - username: bob71844d77 + username: bob6817ab67 language: en sign_in_count: 0 visible_person_ids: [] - password_salt: $2a$10$YaRZkC1M7yPyGlY92.1E0u + password_salt: $2a$10$M9uOZAkFoR7Jveck7ANtb. remember_token: reset_password_token: current_sign_in_ip: remember_created_at: current_sign_in_at: invitation_sent_at: - email: bob72ad638d@pivotallabs.com + email: bob69e4cca3@pivotallabs.com invitation_token: visible_post_ids: [] getting_started: true -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:27 Z + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:23 Z profile: !map:ActiveSupport::HashWithIndifferentAccess searchable: true image_url: _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 6 + - 226 + - 39 + - 147 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 - 0 - 1 - - 2 + - 1 gender: diaspora_handle: birthday: - last_name: Grimm738d6448 + last_name: Grimm69e9a248 bio: - first_name: Robert73400d64 - updated_at: 2010-11-15 05:41:27 Z + first_name: Robert69d41918 + updated_at: 2010-11-16 06:41:23 Z _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 6 + - 226 + - 39 + - 147 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 + - 0 + - 1 + - 2 + url: http://google-69ad5f42.com/ + serialized_public_key: | + -----BEGIN RSA PUBLIC KEY----- + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= + -----END RSA PUBLIC KEY----- + + owner_id: *id005 + diaspora_handle: bob6817ab67@example.org +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$AAP80uGF0kvx99PBaUtHheN4moo0NKxd5XpE7TstrAucSc6huR7gq + serialized_private_key: *id002 + pending_request_ids: [] + + last_sign_in_ip: + invites: 5 + _id: &id006 !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 - 0 - 1 - 3 - url: http://google-7393c201.com/ - serialized_public_key: | - -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= - -----END RSA PUBLIC KEY----- - - owner_id: &id009 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 6 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 1 - - 1 - diaspora_handle: bob721dc5ae@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$mLxEStJ91n/TAQK2o0JHtOj5hGNXuoRUnzUDMn/51K2x65ylT813S - serialized_private_key: *id002 - pending_request_ids: [] - - last_sign_in_ip: - invites: 5 - _id: *id009 last_sign_in_at: - username: bob721dc5ae + username: bob69cc6176 language: en sign_in_count: 0 visible_person_ids: [] - password_salt: $2a$10$mLxEStJ91n/TAQK2o0JHtO + password_salt: $2a$10$AAP80uGF0kvx99PBaUtHhe remember_token: reset_password_token: current_sign_in_ip: remember_created_at: current_sign_in_at: invitation_sent_at: - email: bob737e94bd@pivotallabs.com + email: bob70494e36@pivotallabs.com invitation_token: visible_post_ids: [] getting_started: true -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:27 Z + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:23 Z profile: !map:ActiveSupport::HashWithIndifferentAccess searchable: true image_url: _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 7 + - 226 + - 39 + - 147 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 - 0 - 1 - - 5 + - 4 gender: diaspora_handle: birthday: - last_name: Grimm746b8de8 + last_name: Grimm70846a3c bio: - first_name: Robert747fd2d3 - updated_at: 2010-11-15 05:41:27 Z + first_name: Robert70b16097 + updated_at: 2010-11-16 06:41:23 Z _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 7 + - 226 + - 39 + - 147 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 - 0 - 1 - - 6 - url: http://google-746c487f.com/ + - 5 + url: http://google-702d3ff4.com/ serialized_public_key: | -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= -----END RSA PUBLIC KEY----- - owner_id: &id010 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 7 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 1 - - 4 - diaspora_handle: bob73df386f@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$07OZA4E5oTdLOm66OG4NA.gJN.hW5oPGkNlDSBFTNeOCGJkBdhm0e + owner_id: *id006 + diaspora_handle: bob69cc6176@example.org +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$IsaVWabsS2/4FtABG9mEqOywauuP4J7X1LKlnyvoc7v/lK.MVztyW serialized_private_key: *id002 pending_request_ids: [] last_sign_in_ip: invites: 5 - _id: *id010 + _id: &id007 !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 6 last_sign_in_at: - username: bob73df386f + username: bob701d7610 language: en sign_in_count: 0 visible_person_ids: [] - password_salt: $2a$10$07OZA4E5oTdLOm66OG4NA. + password_salt: $2a$10$IsaVWabsS2/4FtABG9mEqO remember_token: reset_password_token: current_sign_in_ip: remember_created_at: current_sign_in_at: invitation_sent_at: - email: bob7456fb90@pivotallabs.com + email: bob71139cd8@pivotallabs.com invitation_token: visible_post_ids: [] getting_started: true -- :person: !map:ActiveSupport::HashWithIndifferentAccess - created_at: 2010-11-15 05:41:27 Z + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:23 Z profile: !map:ActiveSupport::HashWithIndifferentAccess searchable: true image_url: _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 7 + - 226 + - 39 + - 147 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 - 0 - 1 - - 8 + - 7 gender: diaspora_handle: birthday: - last_name: Grimm75cb676d + last_name: Grimm71880db2 bio: - first_name: Robert755ea0ff - updated_at: 2010-11-15 05:41:27 Z + first_name: Robert71a60bd8 + updated_at: 2010-11-16 06:41:23 Z _id: !ruby/object:BSON::ObjectId data: - 76 - - 224 - - 200 - - 7 + - 226 + - 39 + - 147 - 35 - 103 - 188 - - 184 - - 81 + - 2 + - 77 + - 0 + - 1 + - 8 + url: http://google-714d3345.com/ + serialized_public_key: | + -----BEGIN RSA PUBLIC KEY----- + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= + -----END RSA PUBLIC KEY----- + + owner_id: *id007 + diaspora_handle: bob701d7610@example.org +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$CzfJH2e2saVBN5wAl6jA0OGGv4ADC.QePPe95ea5Y17QKfzcCwlEu + serialized_private_key: *id002 + pending_request_ids: [] + + last_sign_in_ip: + invites: 5 + _id: &id008 !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 - 0 - 1 - 9 - url: http://google-752dbc95.com/ - serialized_public_key: | - -----BEGIN RSA PUBLIC KEY----- - MIGJAoGBALyeFYuLxcf026PvVbNIZgVK6YGQ6rTPzdmUpC+LTwi4Nbu5pnPK5f4Y - rqwy2DxgeVYEa+5j8/3ugMjPvq3RRJZLCqcZdNoCoduMJDWrg5xsNuidaArpW5Qk - EoePeAZjakz4c7gH3Iw3Kp0byh3SK4Mh2uHHr0WjrF56esQzGUtHAgMBAAE= - -----END RSA PUBLIC KEY----- - - owner_id: &id011 !ruby/object:BSON::ObjectId - data: - - 76 - - 224 - - 200 - - 7 - - 35 - - 103 - - 188 - - 184 - - 81 - - 0 - - 1 - - 7 - diaspora_handle: bob74969a13@example.org - :user: !map:ActiveSupport::HashWithIndifferentAccess - encrypted_password: $2a$10$wfKkOyqv4zvnmb2YF93vTOu7MBL9xZenGhJRr0wYYzngfMDO5pB5G - serialized_private_key: *id002 - pending_request_ids: [] - - last_sign_in_ip: - invites: 5 - _id: *id011 last_sign_in_at: - username: bob74969a13 + username: bob7113ba50 language: en sign_in_count: 0 visible_person_ids: [] - password_salt: $2a$10$wfKkOyqv4zvnmb2YF93vTO + password_salt: $2a$10$CzfJH2e2saVBN5wAl6jA0O remember_token: reset_password_token: current_sign_in_ip: remember_created_at: current_sign_in_at: invitation_sent_at: - email: bob75cb5e31@pivotallabs.com + email: bob72bae398@pivotallabs.com invitation_token: visible_post_ids: [] getting_started: true + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:23 Z + profile: !map:ActiveSupport::HashWithIndifferentAccess + searchable: true + image_url: + _id: !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 10 + gender: + diaspora_handle: + birthday: + last_name: Grimm72f28f7b + bio: + first_name: Robert72bde61e + updated_at: 2010-11-16 06:41:23 Z + _id: !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 11 + url: http://google-7210e5ac.com/ + serialized_public_key: | + -----BEGIN RSA PUBLIC KEY----- + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= + -----END RSA PUBLIC KEY----- + + owner_id: *id008 + diaspora_handle: bob7113ba50@example.org +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$D6YlUNQcRnbHg62qvx4CxefviCIh5b41X8gYKf6W8pq86K8rP/ViC + serialized_private_key: *id002 + pending_request_ids: [] + + last_sign_in_ip: + invites: 5 + _id: &id009 !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 12 + last_sign_in_at: + username: bob72548563 + language: en + sign_in_count: 0 + visible_person_ids: [] + + password_salt: $2a$10$D6YlUNQcRnbHg62qvx4Cxe + remember_token: + reset_password_token: + current_sign_in_ip: + remember_created_at: + current_sign_in_at: + invitation_sent_at: + email: bob734a58b5@pivotallabs.com + invitation_token: + visible_post_ids: [] + + getting_started: true + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:23 Z + profile: !map:ActiveSupport::HashWithIndifferentAccess + searchable: true + image_url: + _id: !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 13 + gender: + diaspora_handle: + birthday: + last_name: Grimm737fc0c5 + bio: + first_name: Robert7347ed2f + updated_at: 2010-11-16 06:41:23 Z + _id: !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 14 + url: http://google-73d73d16.com/ + serialized_public_key: | + -----BEGIN RSA PUBLIC KEY----- + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= + -----END RSA PUBLIC KEY----- + + owner_id: *id009 + diaspora_handle: bob72548563@example.org +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$VIFBMncLU/Lb9ksLIDbA9eCmix8A6X4h0vrD5xWKqSqJC8E79S38C + serialized_private_key: *id002 + pending_request_ids: [] + + last_sign_in_ip: + invites: 5 + _id: &id010 !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 15 + last_sign_in_at: + username: bob731c2e5c + language: en + sign_in_count: 0 + visible_person_ids: [] + + password_salt: $2a$10$VIFBMncLU/Lb9ksLIDbA9e + remember_token: + reset_password_token: + current_sign_in_ip: + remember_created_at: + current_sign_in_at: + invitation_sent_at: + email: bob7429561a@pivotallabs.com + invitation_token: + visible_post_ids: [] + + getting_started: true + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:23 Z + profile: !map:ActiveSupport::HashWithIndifferentAccess + searchable: true + image_url: + _id: !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 16 + gender: + diaspora_handle: + birthday: + last_name: Grimm74c46e04 + bio: + first_name: Robert74bcc7db + updated_at: 2010-11-16 06:41:23 Z + _id: !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 17 + url: http://google-748c88f6.com/ + serialized_public_key: | + -----BEGIN RSA PUBLIC KEY----- + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= + -----END RSA PUBLIC KEY----- + + owner_id: *id010 + diaspora_handle: bob731c2e5c@example.org +- :user: !map:ActiveSupport::HashWithIndifferentAccess + encrypted_password: $2a$10$jFJRSk/FAZolHC4iPq9wcu2P/BFneTWATArmKB3ozauh9c/9SDoL. + serialized_private_key: *id002 + pending_request_ids: [] + + last_sign_in_ip: + invites: 5 + _id: &id011 !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 147 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 18 + last_sign_in_at: + username: bob74eccef3 + language: en + sign_in_count: 0 + visible_person_ids: [] + + password_salt: $2a$10$jFJRSk/FAZolHC4iPq9wcu + remember_token: + reset_password_token: + current_sign_in_ip: + remember_created_at: + current_sign_in_at: + invitation_sent_at: + email: bob757cde24@pivotallabs.com + invitation_token: + visible_post_ids: [] + + getting_started: true + :person: !map:ActiveSupport::HashWithIndifferentAccess + created_at: 2010-11-16 06:41:24 Z + profile: !map:ActiveSupport::HashWithIndifferentAccess + searchable: true + image_url: + _id: !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 148 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 19 + gender: + diaspora_handle: + birthday: + last_name: Grimm753d284e + bio: + first_name: Robert750a18cf + updated_at: 2010-11-16 06:41:24 Z + _id: !ruby/object:BSON::ObjectId + data: + - 76 + - 226 + - 39 + - 148 + - 35 + - 103 + - 188 + - 2 + - 77 + - 0 + - 1 + - 20 + url: http://google-756eeb91.com/ + serialized_public_key: | + -----BEGIN RSA PUBLIC KEY----- + MIGJAoGBAMORY1YeW31VmnzAfcuFQIbEla/GZuYQAnZ0ZOilKpqfX6AIINYlcpnk + txRxEU7Jb6+hao+qxbou9jLwxDZXRxBfjr+wolqkR2nv1ZSkr0jLzc5MlpQRN5eq + zs3BYjsUGpgFxZN5ZE+v1aSCWj926/Zt3iTG0CNA5sWnRDoX8vAbAgMBAAE= + -----END RSA PUBLIC KEY----- + + owner_id: *id011 + diaspora_handle: bob74eccef3@example.org diff --git a/spec/helper_methods.rb b/spec/helper_methods.rb index 74b950d3f..60c9c4c92 100644 --- a/spec/helper_methods.rb +++ b/spec/helper_methods.rb @@ -27,7 +27,7 @@ module HelperMethods end def connect_users(user1, aspect1, user2, aspect2) - request = user1.send_contact_request_to(user2.person, aspect1) + user1.send_contact_request_to(user2.person, aspect1) user1.reload aspect1.reload diff --git a/spec/helpers/sockets_helper_spec.rb b/spec/helpers/sockets_helper_spec.rb new file mode 100644 index 000000000..bb65f4ccd --- /dev/null +++ b/spec/helpers/sockets_helper_spec.rb @@ -0,0 +1,13 @@ +# Copyright (c) 2010, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. +# +require 'spec_helper' + +describe SocketsHelper do + + describe '#obj_id' do + + end + +end diff --git a/spec/models/user/receive_spec.rb b/spec/models/user/receive_spec.rb index b02da36b9..2eef85e9d 100644 --- a/spec/models/user/receive_spec.rb +++ b/spec/models/user/receive_spec.rb @@ -100,6 +100,7 @@ describe User do it 'should be remove a post if the noone links to it' do person = user2.person user2.delete + person.reload lambda {user.disconnect(person)}.should change(Post, :count).by(-1) end