diaspora_federation-test 0.0.12 → 0.0.13

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3dc6e8fc4fc68bb57ea24172708a10e05de05b0b
4
- data.tar.gz: ad3b46952cbde420c8c8cc92b862c9af85c09981
3
+ metadata.gz: 9499524c854db4efe1a050de1a31b81367d46636
4
+ data.tar.gz: 250bbaf16de1b756777d2d5f6d55c48be51c3a37
5
5
  SHA512:
6
- metadata.gz: 30c54fe4f48e80391ab0b9b063ec4943cff96417b1b969d2e774779cd4e097cda0c44f2ccc9c9951ebc939bc44b4340f6babaed7d22c5baca057813b7d641093
7
- data.tar.gz: f42074bc3f0f15e2268ac2287ff951fa8a63014253bf6ba73560ecbe18ced619bd26333fa75f096105cde082607a9b0895893528d5f4b38f5078a2c3145a697a
6
+ metadata.gz: ec1957eef8d63640e3f7b83984427094862d0669f930a02520c3d35ad286bf2b28352d4008e5ca26dc554743c517c3e68fb048b88af1aa3ce831446e805b27f3
7
+ data.tar.gz: 5b875304bd33102d38916c68f5381605922cb85fb5eff75b00aff1fd5a2030520d0d82853839070e737d8163f7c594431ad8555c49aa713bbec216043f61c7b9
@@ -3,52 +3,5 @@ require "diaspora_federation/test/factories"
3
3
  module DiasporaFederation
4
4
  # This module encapsulates helper functions maybe wanted by a testsuite of a diaspora_federation gem user application
5
5
  module Test
6
- # Sort hash according to an entity class's property sequence.
7
- # This is used for rspec tests in order to generate correct input hash to
8
- # compare results with.
9
- #
10
- # @param [Hash] data input hash for sorting
11
- # @param [Entity.Class] klass entity type to sort according to
12
- # @return [Hash] sorted hash
13
- def self.sort_hash(data, klass)
14
- Hash[klass.class_props.map { |prop|
15
- [prop[:name], data[prop[:name]]] unless data[prop[:name]].nil?
16
- }.compact]
17
- end
18
-
19
- # Generates attributes for entity constructor with correct signatures in it
20
- #
21
- # @param [Symbol] factory_name the factory to generate attributes for (normally entity name)
22
- # @return [Hash] hash with correct signatures
23
- def self.relayable_attributes_with_signatures(factory_name)
24
- klass = FactoryGirl.factory_by_name(factory_name).build_class
25
- sort_hash(FactoryGirl.attributes_for(factory_name), klass).tap do |data|
26
- DiasporaFederation::Entities::Relayable.update_signatures!(data, klass)
27
- end
28
- end
29
-
30
- # Generates attributes for signed retraction entity constructor with correct signatures in it
31
- #
32
- # @return [Hash] hash with correct signatures
33
- def self.signed_retraction_attributes_with_signatures
34
- sort_hash(FactoryGirl.attributes_for(:signed_retraction_entity), Entities::SignedRetraction).tap do |data|
35
- Entities::SignedRetraction.update_signatures!(data)
36
- end
37
- end
38
-
39
- # Generates attributes for relayable retraction entity constructor with correct signatures in it
40
- #
41
- # @return [Hash] hash with correct signatures
42
- def self.relayable_retraction_attributes_with_signatures
43
- sort_hash(
44
- FactoryGirl.attributes_for(
45
- :relayable_retraction_entity,
46
- target_author_signature: "false sig"
47
- ),
48
- Entities::RelayableRetraction
49
- ).tap do |data|
50
- Entities::RelayableRetraction.update_signatures!(data)
51
- end
52
- end
53
6
  end
54
7
  end
@@ -3,7 +3,9 @@ require "factory_girl"
3
3
 
4
4
  module DiasporaFederation
5
5
  module Test
6
+ # Factories for federation entities
6
7
  module Factories
8
+ # defines the federation entity factories
7
9
  def self.federation_factories
8
10
  FactoryGirl.define do
9
11
  initialize_with { new(attributes) }
@@ -40,16 +42,16 @@ module DiasporaFederation
40
42
 
41
43
  factory :person_entity, class: DiasporaFederation::Entities::Person do
42
44
  guid
43
- diaspora_id
45
+ author { generate(:diaspora_id) }
44
46
  url "http://localhost:3000/"
45
47
  exported_key { generate(:public_key) }
46
48
  profile {
47
- FactoryGirl.build(:profile_entity, diaspora_id: diaspora_id)
49
+ FactoryGirl.build(:profile_entity, author: author)
48
50
  }
49
51
  end
50
52
 
51
53
  factory :profile_entity, class: DiasporaFederation::Entities::Profile do
52
- diaspora_id
54
+ author { generate(:diaspora_id) }
53
55
  first_name "my name"
54
56
  last_name nil
55
57
  image_url "/assets/user/default.png"
@@ -72,7 +74,7 @@ module DiasporaFederation
72
74
 
73
75
  factory :photo_entity, class: DiasporaFederation::Entities::Photo do
74
76
  guid
75
- diaspora_id
77
+ author { generate(:diaspora_id) }
76
78
  public(true)
77
79
  created_at { Time.now.utc }
78
80
  remote_photo_path "https://diaspora.example.tld/uploads/images/"
@@ -89,84 +91,91 @@ module DiasporaFederation
89
91
 
90
92
  factory :participation_entity,
91
93
  class: DiasporaFederation::Entities::Participation, parent: :relayable_entity do
94
+ author { generate(:diaspora_id) }
92
95
  guid
93
- target_type "Post"
94
- diaspora_id
96
+ parent_type "Post"
95
97
  end
96
98
 
97
99
  factory :status_message_entity, class: DiasporaFederation::Entities::StatusMessage do
98
100
  raw_message "i am a very interesting status update"
101
+ author { generate(:diaspora_id) }
99
102
  guid
100
- diaspora_id
101
103
  public(true)
102
104
  created_at { Time.now.utc }
103
105
  end
104
106
 
105
107
  factory :request_entity, class: DiasporaFederation::Entities::Request do
106
- sender_id { generate(:diaspora_id) }
107
- recipient_id { generate(:diaspora_id) }
108
+ author { generate(:diaspora_id) }
109
+ recipient { generate(:diaspora_id) }
110
+ end
111
+
112
+ factory :contact_entity, class: DiasporaFederation::Entities::Contact do
113
+ author { generate(:diaspora_id) }
114
+ recipient { generate(:diaspora_id) }
115
+ following true
116
+ sharing true
108
117
  end
109
118
 
110
119
  factory :comment_entity, class: DiasporaFederation::Entities::Comment, parent: :relayable_entity do
120
+ author { generate(:diaspora_id) }
111
121
  guid
112
122
  text "this is a very informative comment"
113
- diaspora_id
114
123
  end
115
124
 
116
125
  factory :like_entity, class: DiasporaFederation::Entities::Like, parent: :relayable_entity do
117
126
  positive true
127
+ author { generate(:diaspora_id) }
118
128
  guid
119
- target_type "Post"
120
- diaspora_id
129
+ parent_type "Post"
121
130
  end
122
131
 
123
132
  factory :account_deletion_entity, class: DiasporaFederation::Entities::AccountDeletion do
124
- diaspora_id
133
+ author { generate(:diaspora_id) }
125
134
  end
126
135
 
127
136
  factory :conversation_entity, class: DiasporaFederation::Entities::Conversation do
137
+ author { generate(:diaspora_id) }
128
138
  guid
129
139
  subject "this is a very informative subject"
130
140
  created_at { Time.now.utc }
131
141
  messages []
132
- diaspora_id
133
- participant_ids { 3.times.map { generate(:diaspora_id) }.join(";") }
142
+ participants { Array.new(3) { generate(:diaspora_id) }.join(";") }
134
143
  end
135
144
 
136
145
  factory :message_entity, class: DiasporaFederation::Entities::Message, parent: :relayable_entity do
137
146
  guid
147
+ author { generate(:diaspora_id) }
138
148
  text "this is a very informative text"
139
149
  created_at { Time.now.utc }
140
- diaspora_id
141
150
  conversation_guid { generate(:guid) }
142
151
  end
143
152
 
144
153
  factory :relayable_retraction_entity, class: DiasporaFederation::Entities::RelayableRetraction do
154
+ author { generate(:diaspora_id) }
145
155
  target_guid { generate(:guid) }
146
156
  target_type "Comment"
147
- diaspora_id
148
157
  end
149
158
 
150
159
  factory :reshare_entity, class: DiasporaFederation::Entities::Reshare do
151
- root_diaspora_id { generate(:diaspora_id) }
160
+ root_author { generate(:diaspora_id) }
152
161
  root_guid { generate(:guid) }
153
162
  guid
154
- diaspora_id
163
+ author { generate(:diaspora_id) }
155
164
  public(true)
156
165
  created_at { Time.now.utc }
157
166
  provider_display_name { "the testsuite" }
158
167
  end
159
168
 
160
169
  factory :retraction_entity, class: DiasporaFederation::Entities::Retraction do
170
+ author { generate(:diaspora_id) }
161
171
  target_guid { generate(:guid) }
162
- diaspora_id
163
172
  target_type "Post"
164
173
  end
165
174
 
166
175
  factory :signed_retraction_entity, class: DiasporaFederation::Entities::SignedRetraction do
176
+ author { generate(:diaspora_id) }
167
177
  target_guid { generate(:guid) }
168
178
  target_type "Post"
169
- diaspora_id
170
179
  end
171
180
 
172
181
  factory :poll_answer_entity, class: DiasporaFederation::Entities::PollAnswer do
@@ -177,13 +186,13 @@ module DiasporaFederation
177
186
  factory :poll_entity, class: DiasporaFederation::Entities::Poll do
178
187
  guid
179
188
  question { "Select an answer" }
180
- poll_answers { 3.times.map { FactoryGirl.build(:poll_answer_entity) } }
189
+ poll_answers { Array.new(3) { FactoryGirl.build(:poll_answer_entity) } }
181
190
  end
182
191
 
183
192
  factory :poll_participation_entity,
184
193
  class: DiasporaFederation::Entities::PollParticipation, parent: :relayable_entity do
194
+ author { generate(:diaspora_id) }
185
195
  guid
186
- diaspora_id
187
196
  poll_answer_guid { generate(:guid) }
188
197
  end
189
198
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: diaspora_federation-test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.12
4
+ version: 0.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Benjamin Neff
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-23 00:00:00.000000000 Z
11
+ date: 2016-03-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: diaspora_federation
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.0.12
19
+ version: 0.0.13
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.0.12
26
+ version: 0.0.13
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: factory_girl
29
29
  requirement: !ruby/object:Gem::Requirement