quickblox-rb 0.1.4 → 0.1.5

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: 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