anyt 0.8.5 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +1 -1
  3. data/README.md +4 -1
  4. data/lib/anyt/cli.rb +81 -14
  5. data/lib/anyt/client.rb +12 -7
  6. data/lib/anyt/command.rb +33 -18
  7. data/lib/anyt/config.rb +15 -7
  8. data/lib/anyt/dummy/application.rb +31 -6
  9. data/lib/anyt/dummy/config.ru +4 -0
  10. data/lib/anyt/dummy/tmp/development_secret.txt +1 -0
  11. data/lib/anyt/ext/minitest.rb +24 -7
  12. data/lib/anyt/remote_control.rb +33 -0
  13. data/lib/anyt/rpc.rb +6 -9
  14. data/lib/anyt/tests.rb +5 -7
  15. data/lib/anyt/tests/core/ping_test.rb +2 -2
  16. data/lib/anyt/tests/core/welcome_test.rb +2 -2
  17. data/lib/anyt/tests/features/channel_state_test.rb +81 -0
  18. data/lib/anyt/tests/features/remote_disconnect_test.rb +30 -0
  19. data/lib/anyt/tests/features/server_restart_test.rb +28 -0
  20. data/lib/anyt/tests/request/channel_test.rb +28 -0
  21. data/lib/anyt/tests/request/connection_test.rb +23 -21
  22. data/lib/anyt/tests/request/disconnect_reasons_test.rb +23 -0
  23. data/lib/anyt/tests/request/disconnection_test.rb +50 -32
  24. data/lib/anyt/tests/streams/broadcast_test.rb +13 -13
  25. data/lib/anyt/tests/streams/multiple_clients_test.rb +13 -13
  26. data/lib/anyt/tests/streams/multiple_test.rb +15 -15
  27. data/lib/anyt/tests/streams/single_test.rb +39 -14
  28. data/lib/anyt/tests/streams/stop_test.rb +57 -0
  29. data/lib/anyt/tests/subscriptions/ack_test.rb +9 -11
  30. data/lib/anyt/tests/subscriptions/params_test.rb +6 -7
  31. data/lib/anyt/tests/subscriptions/perform_test.rb +16 -18
  32. data/lib/anyt/tests/subscriptions/transmissions_test.rb +6 -7
  33. data/lib/anyt/version.rb +1 -1
  34. metadata +38 -74
  35. data/.gitignore +0 -43
  36. data/.rubocop.yml +0 -80
  37. data/Gemfile +0 -6
  38. data/LICENSE.txt +0 -21
  39. data/Makefile +0 -5
  40. data/anyt.gemspec +0 -42
  41. data/circle.yml +0 -14
  42. data/etc/tests/channel_broadcast_test.rb +0 -51
@@ -8,24 +8,23 @@ feature "Subscription transmissions" do
8
8
  end
9
9
  end
10
10
 
11
- scenario %{
11
+ scenario %(
12
12
  Client receives transmissions from #subscribed callback
13
- } do
14
-
15
- subscribe_request = { command: "subscribe", identifier: { channel: channel }.to_json }
13
+ ) do
14
+ subscribe_request = {command: "subscribe", identifier: {channel: channel}.to_json}
16
15
 
17
16
  client.send(subscribe_request)
18
17
 
19
- msg = { "identifier" => { channel: channel }.to_json, "message" => "hello" }
18
+ msg = {"identifier" => {channel: channel}.to_json, "message" => "hello"}
20
19
 
21
20
  assert_equal msg, client.receive
22
21
 
23
- msg = { "identifier" => { channel: channel }.to_json, "message" => "world" }
22
+ msg = {"identifier" => {channel: channel}.to_json, "message" => "world"}
24
23
 
25
24
  assert_equal msg, client.receive
26
25
 
27
26
  ack = {
28
- "identifier" => { channel: channel }.to_json, "type" => "confirm_subscription"
27
+ "identifier" => {channel: channel}.to_json, "type" => "confirm_subscription"
29
28
  }
30
29
 
31
30
  assert_equal ack, client.receive
data/lib/anyt/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Anyt
4
- VERSION = "0.8.5"
4
+ VERSION = "1.1.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: anyt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.5
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - palkan
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-11 00:00:00.000000000 Z
11
+ date: 2021-05-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2'
19
+ version: '2.0'
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: '2'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: minitest
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -58,28 +58,34 @@ dependencies:
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '5.0'
61
+ version: '6.0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '5.0'
68
+ version: '6.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: anycable-rails
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">"
74
74
  - !ruby/object:Gem::Version
75
- version: 0.6.0
75
+ version: 1.0.99
76
+ - - "<"
77
+ - !ruby/object:Gem::Version
78
+ version: '2.0'
76
79
  type: :runtime
77
80
  prerelease: false
78
81
  version_requirements: !ruby/object:Gem::Requirement
79
82
  requirements:
80
- - - "~>"
83
+ - - ">"
84
+ - !ruby/object:Gem::Version
85
+ version: 1.0.99
86
+ - - "<"
81
87
  - !ruby/object:Gem::Version
82
- version: 0.6.0
88
+ version: '2.0'
83
89
  - !ruby/object:Gem::Dependency
84
90
  name: redis
85
91
  requirement: !ruby/object:Gem::Requirement
@@ -137,75 +143,47 @@ dependencies:
137
143
  - !ruby/object:Gem::Version
138
144
  version: 1.0.0
139
145
  - !ruby/object:Gem::Dependency
140
- name: bundler
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - "~>"
144
- - !ruby/object:Gem::Version
145
- version: '1'
146
- type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - "~>"
151
- - !ruby/object:Gem::Version
152
- version: '1'
153
- - !ruby/object:Gem::Dependency
154
- name: rake
146
+ name: childprocess
155
147
  requirement: !ruby/object:Gem::Requirement
156
148
  requirements:
157
149
  - - "~>"
158
150
  - !ruby/object:Gem::Version
159
- version: '10.0'
160
- type: :development
151
+ version: '3.0'
152
+ type: :runtime
161
153
  prerelease: false
162
154
  version_requirements: !ruby/object:Gem::Requirement
163
155
  requirements:
164
156
  - - "~>"
165
157
  - !ruby/object:Gem::Version
166
- version: '10.0'
158
+ version: '3.0'
167
159
  - !ruby/object:Gem::Dependency
168
- name: simplecov
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - ">="
172
- - !ruby/object:Gem::Version
173
- version: 0.3.8
174
- type: :development
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - ">="
179
- - !ruby/object:Gem::Version
180
- version: 0.3.8
181
- - !ruby/object:Gem::Dependency
182
- name: rubocop
160
+ name: bundler
183
161
  requirement: !ruby/object:Gem::Requirement
184
162
  requirements:
185
163
  - - "~>"
186
164
  - !ruby/object:Gem::Version
187
- version: 0.59.0
165
+ version: '2'
188
166
  type: :development
189
167
  prerelease: false
190
168
  version_requirements: !ruby/object:Gem::Requirement
191
169
  requirements:
192
170
  - - "~>"
193
171
  - !ruby/object:Gem::Version
194
- version: 0.59.0
172
+ version: '2'
195
173
  - !ruby/object:Gem::Dependency
196
- name: pry
174
+ name: rake
197
175
  requirement: !ruby/object:Gem::Requirement
198
176
  requirements:
199
177
  - - "~>"
200
178
  - !ruby/object:Gem::Version
201
- version: 0.10.4
179
+ version: '13.0'
202
180
  type: :development
203
181
  prerelease: false
204
182
  version_requirements: !ruby/object:Gem::Requirement
205
183
  requirements:
206
184
  - - "~>"
207
185
  - !ruby/object:Gem::Version
208
- version: 0.10.4
186
+ version: '13.0'
209
187
  - !ruby/object:Gem::Dependency
210
188
  name: puma
211
189
  requirement: !ruby/object:Gem::Requirement
@@ -220,20 +198,6 @@ dependencies:
220
198
  - - "~>"
221
199
  - !ruby/object:Gem::Version
222
200
  version: '3.6'
223
- - !ruby/object:Gem::Dependency
224
- name: pry-byebug
225
- requirement: !ruby/object:Gem::Requirement
226
- requirements:
227
- - - ">="
228
- - !ruby/object:Gem::Version
229
- version: '0'
230
- type: :development
231
- prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- requirements:
234
- - - ">="
235
- - !ruby/object:Gem::Version
236
- version: '0'
237
201
  description: Anycable conformance testing tool
238
202
  email:
239
203
  - dementiev.vm@gmail.com
@@ -242,19 +206,11 @@ executables:
242
206
  extensions: []
243
207
  extra_rdoc_files: []
244
208
  files:
245
- - ".gitignore"
246
- - ".rubocop.yml"
247
- - Gemfile
248
- - LICENSE.txt
249
209
  - MIT-LICENSE
250
- - Makefile
251
210
  - README.md
252
- - anyt.gemspec
253
211
  - bin/anyt
254
212
  - bin/console
255
213
  - bin/setup
256
- - circle.yml
257
- - etc/tests/channel_broadcast_test.rb
258
214
  - lib/anyt.rb
259
215
  - lib/anyt/cli.rb
260
216
  - lib/anyt/client.rb
@@ -263,17 +219,25 @@ files:
263
219
  - lib/anyt/dummy/application.rb
264
220
  - lib/anyt/dummy/config.ru
265
221
  - lib/anyt/dummy/routes.rb
222
+ - lib/anyt/dummy/tmp/development_secret.txt
266
223
  - lib/anyt/ext/minitest.rb
224
+ - lib/anyt/remote_control.rb
267
225
  - lib/anyt/rpc.rb
268
226
  - lib/anyt/tests.rb
269
227
  - lib/anyt/tests/core/ping_test.rb
270
228
  - lib/anyt/tests/core/welcome_test.rb
229
+ - lib/anyt/tests/features/channel_state_test.rb
230
+ - lib/anyt/tests/features/remote_disconnect_test.rb
231
+ - lib/anyt/tests/features/server_restart_test.rb
232
+ - lib/anyt/tests/request/channel_test.rb
271
233
  - lib/anyt/tests/request/connection_test.rb
234
+ - lib/anyt/tests/request/disconnect_reasons_test.rb
272
235
  - lib/anyt/tests/request/disconnection_test.rb
273
236
  - lib/anyt/tests/streams/broadcast_test.rb
274
237
  - lib/anyt/tests/streams/multiple_clients_test.rb
275
238
  - lib/anyt/tests/streams/multiple_test.rb
276
239
  - lib/anyt/tests/streams/single_test.rb
240
+ - lib/anyt/tests/streams/stop_test.rb
277
241
  - lib/anyt/tests/subscriptions/ack_test.rb
278
242
  - lib/anyt/tests/subscriptions/params_test.rb
279
243
  - lib/anyt/tests/subscriptions/perform_test.rb
@@ -285,7 +249,7 @@ homepage: http://github.com/anycable/anyt
285
249
  licenses:
286
250
  - MIT
287
251
  metadata: {}
288
- post_install_message:
252
+ post_install_message:
289
253
  rdoc_options: []
290
254
  require_paths:
291
255
  - lib
@@ -300,8 +264,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
300
264
  - !ruby/object:Gem::Version
301
265
  version: '0'
302
266
  requirements: []
303
- rubygems_version: 3.0.6
304
- signing_key:
267
+ rubygems_version: 3.2.15
268
+ signing_key:
305
269
  specification_version: 4
306
270
  summary: Anycable conformance testing tool
307
271
  test_files: []
data/.gitignore DELETED
@@ -1,43 +0,0 @@
1
- # Numerous always-ignore extensions
2
- *.diff
3
- *.err
4
- *.orig
5
- *.log
6
- *.rej
7
- *.swo
8
- *.swp
9
- *.vi
10
- *~
11
- *.sass-cache
12
- *.iml
13
- .idea/
14
-
15
- # Sublime
16
- *.sublime-project
17
- *.sublime-workspace
18
-
19
- # OS or Editor folders
20
- .DS_Store
21
- .cache
22
- .project
23
- .settings
24
- .tmproj
25
- Thumbs.db
26
-
27
- .bundle/
28
- log/*.log
29
- *.gz
30
- pkg/
31
- spec/dummy/db/*.sqlite3
32
- spec/dummy/db/*.sqlite3-journal
33
- spec/dummy/tmp/
34
-
35
- Gemfile.local
36
- Gemfile.lock
37
- .rspec
38
- *.gem
39
- tmp/
40
- coverage/
41
-
42
- # ctags tags
43
- tags
data/.rubocop.yml DELETED
@@ -1,80 +0,0 @@
1
- AllCops:
2
- # Include gemspec and Rakefile
3
- Include:
4
- - 'lib/**/*.rb'
5
- - 'lib/**/*.rake'
6
- - 'spec/**/*.rb'
7
- Exclude:
8
- - 'bin/**/*'
9
- - 'spec/dummy/**/*'
10
- - 'tmp/**/*'
11
- - 'vendor/**/*'
12
- - 'bench/**/*'
13
- - 'lib/anycable/rpc/**/*'
14
- - '*.gemspec'
15
- - 'Rakefile'
16
- - 'Gemfile'
17
- DisplayCopNames: true
18
- StyleGuideCopsOnly: false
19
- TargetRubyVersion: 2.4
20
-
21
- Rails:
22
- Enabled: false
23
-
24
- Lint/MissingCopEnableDirective:
25
- Enabled: false
26
-
27
- Naming/UncommunicativeMethodParamName:
28
- Enabled: false
29
-
30
- Naming/VariableNumber:
31
- Enabled: false
32
-
33
- Naming/AccessorMethodName:
34
- Enabled: false
35
-
36
- Style/TrivialAccessors:
37
- Enabled: false
38
-
39
- Style/AccessModifierDeclarations:
40
- Enabled: false
41
-
42
- Style/Documentation:
43
- Exclude:
44
- - 'spec/**/*.rb'
45
- - 'lib/**/*_test.rb'
46
- - 'lib/anyt/dummy/**/*'
47
-
48
- Style/StringLiterals:
49
- Enabled: false
50
-
51
- Style/BlockDelimiters:
52
- Exclude:
53
- - 'spec/**/*.rb'
54
-
55
- Style/PercentLiteralDelimiters:
56
- Enabled: false
57
-
58
- Style/FormatString:
59
- Enabled: false
60
-
61
- Style/ClassAndModuleChildren:
62
- Enabled: false
63
-
64
- Lint/AmbiguousRegexpLiteral:
65
- Enabled: false
66
-
67
- Metrics/MethodLength:
68
- Exclude:
69
- - 'spec/**/*.rb'
70
- - 'lib/**/*_test.rb'
71
-
72
- Metrics/BlockLength:
73
- Exclude:
74
- - 'spec/**/*.rb'
75
- - 'lib/**/*_test.rb'
76
-
77
- Metrics/LineLength:
78
- Max: 100
79
- Exclude:
80
- - 'spec/**/*.rb'
data/Gemfile DELETED
@@ -1,6 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source "https://rubygems.org"
4
-
5
- # Specify your gem's dependencies in anyt.gemspec
6
- gemspec
data/LICENSE.txt DELETED
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2017 palkan
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
data/Makefile DELETED
@@ -1,5 +0,0 @@
1
- lint:
2
- bundle exec rubocop
3
-
4
- test:
5
- bin/anyt --self-check --require=etc/tests/*.rb