quickblox-rb 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5820abca6b74c61f331706b606c961d602e1bbfa
4
- data.tar.gz: a2379eb5f453b95372ae43b635aa8bb76c8adda4
3
+ metadata.gz: 7728afe8b06dedf349e16a18eaa0990cffa4f5bd
4
+ data.tar.gz: 209ca2ac5664264dcfc72e49d7d69f29266d177c
5
5
  SHA512:
6
- metadata.gz: 09705b851c4f7bbe59d7b2194f8d9da80421ab63ede95d2ce0755470acd4950e51e61bd2fa812d3cc3b72ed908e5ee0b1417d65e82c913c9dfdc020bca24b970
7
- data.tar.gz: f90dac84d7be4ae9f0d69ef6b30d0ff1ec718009d3d1749a500c527c769d6760d6154ded0382a42d8a719bf7b34e7682a1aeb88f7ca5f057b870b18e4c88c5b3
6
+ metadata.gz: 2d7ff37709237218f1a22bf1ab1b0a8b6cfeaff5a61c8cd182254e498a6dc6e5843f90fe98f4628d5d1c192e3b987b355c896768eee8cdb91ffa2d1a996ce429
7
+ data.tar.gz: 66acff218acfcb7ef4cc45262658f96a3c57ac98cb188e0d757784735fcf07fe643807322b0936ca0a84877984c0379ea963cbab6f5dba0c1c94ee04867939e3
data/lib/api.rb CHANGED
@@ -150,6 +150,17 @@ class Quickblox::API
150
150
  Quickblox::Models::Chat.build(messages: messages, occupants: occupants)
151
151
  end
152
152
 
153
+ def chat_transcripts(dialogs:)
154
+ dialogs.map do |dialog|
155
+ messages = get_messages(dialog_id: dialog.id)
156
+ occupants = dialog.occupants_ids.map { |id| get_user(id: id) }
157
+
158
+ Quickblox::Models::Chat.build(messages: messages,
159
+ occupants: occupants,
160
+ dialog: dialog)
161
+ end
162
+ end
163
+
153
164
  private
154
165
 
155
166
  def sign(data)
data/quickblox-rb.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "quickblox-rb"
3
- s.version = "0.1.4"
3
+ s.version = "0.1.5"
4
4
  s.summary = "Ruby gem to work with Quickblox API"
5
5
  s.description = s.summary
6
6
  s.authors = ["Lucas Tolchinsky"]
data/test/api_test.rb CHANGED
@@ -192,3 +192,34 @@ test "#chat_transcript" do
192
192
  assert_equal mock_occupant, chat.messages.first.sender
193
193
  end
194
194
 
195
+ test "#chat_transcripts" do
196
+ qb = Quickblox::API.new(
197
+ auth_key: "AUTH_KEY",
198
+ auth_secret: "AUTH_SECRET",
199
+ application_id: 1234,
200
+ email: "account@owner.com",
201
+ password: "foobarbaz"
202
+ )
203
+
204
+ mock_messages = [
205
+ Quickblox::Models::Message.new(created_at: "2016-04-26T14:58:59Z", text: "yo", dialog_id: "le-dialog-id", sender_id: 123),
206
+ Quickblox::Models::Message.new(created_at: "2016-04-26T14:59:59Z", text: "hey", dialog_id: "le-dialog-id", sender_id: 123)
207
+ ]
208
+ mock_occupant = Quickblox::Models::User.new(id: 123, full_name: "Me")
209
+
210
+ dialog = Quickblox::Models::Dialog.new(id: "le-dialog-id", occupants_ids: [123, 123], type: 3, created_at: "2016-05-02T17:52:00Z", updated_at: "2016-05-02T17:52:00Z")
211
+
212
+ chats = stub(qb, :get_messages, mock_messages) do
213
+ stub(qb, :get_user, mock_occupant) { qb.chat_transcripts(dialogs: [dialog]) }
214
+ end
215
+
216
+ assert ! chats.empty?
217
+ chat = chats.first
218
+
219
+ assert_equal Quickblox::Models::Chat, chat.class
220
+ assert_equal dialog, chat.dialog
221
+ assert_equal mock_messages, chat.messages
222
+ assert_equal mock_occupant, chat.occupants.first
223
+ assert_equal mock_occupant, chat.messages.first.sender
224
+ end
225
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quickblox-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lucas Tolchinsky
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-19 00:00:00.000000000 Z
11
+ date: 2016-05-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: requests