From 3b4e04dc32eba0f5b1ac11e2db2edd7ca7351291 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 5 Mar 2016 12:50:59 +0100 Subject: Fixing some bugs, adding pending test examples --- spec/services/fetch_feed_service_spec.rb | 5 ++++- spec/services/follow_remote_account_service_spec.rb | 9 ++++++++- spec/services/follow_service_spec.rb | 6 +++++- spec/services/post_status_service_spec.rb | 7 ++++++- spec/services/process_feed_service_spec.rb | 5 ++++- spec/services/process_interaction_service_spec.rb | 12 +++++++++++- spec/services/process_mentions_service_spec.rb | 19 ++++++++++++++++++- spec/services/send_interaction_service_spec.rb | 4 +++- spec/services/setup_local_account_service_spec.rb | 5 ++++- spec/services/unfollow_service_spec.rb | 5 ++++- 10 files changed, 67 insertions(+), 10 deletions(-) (limited to 'spec') diff --git a/spec/services/fetch_feed_service_spec.rb b/spec/services/fetch_feed_service_spec.rb index c6a3d389b..a28333fe3 100644 --- a/spec/services/fetch_feed_service_spec.rb +++ b/spec/services/fetch_feed_service_spec.rb @@ -1,5 +1,8 @@ require 'rails_helper' RSpec.describe FetchFeedService do - pending + subject { FetchFeedService.new } + + it 'fetches remote user\'s feed' + it 'processes the feed' end diff --git a/spec/services/follow_remote_account_service_spec.rb b/spec/services/follow_remote_account_service_spec.rb index fbe7e767a..27df76457 100644 --- a/spec/services/follow_remote_account_service_spec.rb +++ b/spec/services/follow_remote_account_service_spec.rb @@ -1,5 +1,12 @@ require 'rails_helper' RSpec.describe FollowRemoteAccountService do - pending + subject { FollowRemoteAccountService.new } + + it 'returns nil if no such user can be resolved via webfinger' + it 'returns nil if the domain does not have webfinger' + it 'returns nil if remote user does not offer a hub URL' + it 'returns an already existing remote account' + it 'returns a new remote account' + it 'fills the remote account with profile information' end diff --git a/spec/services/follow_service_spec.rb b/spec/services/follow_service_spec.rb index ba393f5ab..304e0cf71 100644 --- a/spec/services/follow_service_spec.rb +++ b/spec/services/follow_service_spec.rb @@ -1,5 +1,9 @@ require 'rails_helper' RSpec.describe FollowService do - pending + subject { FollowService.new } + + it 'creates a following relation' + it 'creates local account for remote user' + it 'sends follow to the remote user' end diff --git a/spec/services/post_status_service_spec.rb b/spec/services/post_status_service_spec.rb index 43d58719d..9ee4daf6f 100644 --- a/spec/services/post_status_service_spec.rb +++ b/spec/services/post_status_service_spec.rb @@ -1,5 +1,10 @@ require 'rails_helper' RSpec.describe PostStatusService do - pending + subject { PostStatusService.new } + + it 'creates a new status' + it 'creates a new response status' + it 'processes mentions' + it 'pings PuSH hubs' end diff --git a/spec/services/process_feed_service_spec.rb b/spec/services/process_feed_service_spec.rb index 087979ded..858053823 100644 --- a/spec/services/process_feed_service_spec.rb +++ b/spec/services/process_feed_service_spec.rb @@ -1,5 +1,8 @@ require 'rails_helper' RSpec.describe ProcessFeedService do - pending + subject { ProcessFeedService.new } + + it 'updates remote user\'s account information' + it 'creates local copies of all notes and comments' end diff --git a/spec/services/process_interaction_service_spec.rb b/spec/services/process_interaction_service_spec.rb index 8624d0b0c..931815dc2 100644 --- a/spec/services/process_interaction_service_spec.rb +++ b/spec/services/process_interaction_service_spec.rb @@ -1,5 +1,15 @@ require 'rails_helper' RSpec.describe ProcessInteractionService do - pending + subject { ProcessInteractionService.new } + + it 'creates account for new remote user' + it 'updates account for existing remote user' + it 'ignores envelopes that do not address the local user' + it 'accepts a status that mentions the local user' + it 'accepts a status that is a reply to the local user\'s' + it 'accepts a favourite to a status by the local user' + it 'accepts a reblog of a status of the local user' + it 'accepts a follow of the local user' + it 'accepts an unfollow of the local user' end diff --git a/spec/services/process_mentions_service_spec.rb b/spec/services/process_mentions_service_spec.rb index ae86d17dc..984d13746 100644 --- a/spec/services/process_mentions_service_spec.rb +++ b/spec/services/process_mentions_service_spec.rb @@ -1,5 +1,22 @@ require 'rails_helper' RSpec.describe ProcessMentionsService do - pending + let(:account) { Fabricate(:account, username: 'alice') } + let(:remote_user) { Fabricate(:account, username: 'remote_user', domain: 'example.com', salmon_url: 'http://salmon.example.com') } + let(:status) { Fabricate(:status, account: account, text: "Hello @#{remote_user.acct}") } + + subject { ProcessMentionsService.new } + + before do + stub_request(:post, remote_user.salmon_url) + subject.(status) + end + + it 'creates a mention' do + expect(remote_user.mentions.where(status: status).count).to eq 1 + end + + it 'posts to remote user\'s Salmon end point' do + expect(a_request(:post, remote_user.salmon_url)).to have_been_made + end end diff --git a/spec/services/send_interaction_service_spec.rb b/spec/services/send_interaction_service_spec.rb index ae4ab01c5..ff08394b0 100644 --- a/spec/services/send_interaction_service_spec.rb +++ b/spec/services/send_interaction_service_spec.rb @@ -1,5 +1,7 @@ require 'rails_helper' RSpec.describe SendInteractionService do - pending + subject { SendInteractionService.new } + + it 'sends an XML envelope to the Salmon end point of remote user' end diff --git a/spec/services/setup_local_account_service_spec.rb b/spec/services/setup_local_account_service_spec.rb index 709f170b6..2e85fc4f5 100644 --- a/spec/services/setup_local_account_service_spec.rb +++ b/spec/services/setup_local_account_service_spec.rb @@ -1,5 +1,8 @@ require 'rails_helper' RSpec.describe SetupLocalAccountService do - pending + subject { SetupLocalAccountService.new } + + it 'creates a user' + it 'creates an account for the user' end diff --git a/spec/services/unfollow_service_spec.rb b/spec/services/unfollow_service_spec.rb index 60121b675..58467ff00 100644 --- a/spec/services/unfollow_service_spec.rb +++ b/spec/services/unfollow_service_spec.rb @@ -1,5 +1,8 @@ require 'rails_helper' RSpec.describe UnfollowService do - pending + subject { UnfollowService.new } + + it 'destroys the following relation' + it 'sends remote interactionf or remote user' end -- cgit