kamerling 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +4 -13
- data/Gemfile +0 -1
- data/Gemfile.lock +64 -64
- data/README.md +18 -1
- data/Rakefile +5 -3
- data/bin/kamerling +1 -1
- data/config/reek.yml +20 -3
- data/kamerling.gemspec +16 -13
- data/lib/kamerling.rb +2 -28
- data/lib/kamerling/addr.rb +17 -3
- data/lib/kamerling/client.rb +10 -11
- data/lib/kamerling/core_extensions/main.rb +14 -14
- data/lib/kamerling/dispatch.rb +13 -0
- data/lib/kamerling/handler.rb +16 -25
- data/lib/kamerling/http_api.rb +50 -34
- data/lib/kamerling/logging.rb +36 -16
- data/lib/kamerling/mapper.rb +33 -0
- data/lib/kamerling/message.rb +50 -37
- data/lib/kamerling/migrations/2_results_received_at.rb +7 -0
- data/lib/kamerling/migrations/3_dispatches.rb +17 -0
- data/lib/kamerling/migrations/4_registrations_registered_at.rb +7 -0
- data/lib/kamerling/migrations/5_clients_type.rb +7 -0
- data/lib/kamerling/net_dispatcher.rb +12 -7
- data/lib/kamerling/project.rb +7 -3
- data/lib/kamerling/receiver.rb +38 -10
- data/lib/kamerling/registrar.rb +45 -8
- data/lib/kamerling/registration.rb +9 -10
- data/lib/kamerling/repo.rb +33 -26
- data/lib/kamerling/repos.rb +52 -45
- data/lib/kamerling/result.rb +10 -11
- data/lib/kamerling/server/http.rb +28 -21
- data/lib/kamerling/server/sock.rb +32 -24
- data/lib/kamerling/server/tcp.rb +23 -15
- data/lib/kamerling/server/udp.rb +24 -16
- data/lib/kamerling/server_runner.rb +30 -41
- data/lib/kamerling/settings.rb +28 -0
- data/lib/kamerling/task.rb +7 -7
- data/lib/kamerling/task_dispatcher.rb +31 -22
- data/lib/kamerling/uuid.rb +13 -11
- data/lib/kamerling/uuid_entity.rb +23 -9
- data/lib/kamerling/value.rb +13 -0
- data/lib/kamerling/views/clients.slim +3 -1
- data/lib/kamerling/views/project.slim +8 -4
- data/lib/kamerling/views/projects.slim +7 -1
- data/spec/kamerling/addr_spec.rb +32 -22
- data/spec/kamerling/client_spec.rb +9 -5
- data/spec/kamerling/core_extensions/main_spec.rb +18 -13
- data/spec/kamerling/dispatch_spec.rb +16 -0
- data/spec/kamerling/handler_spec.rb +24 -34
- data/spec/kamerling/http_api_spec.rb +94 -73
- data/spec/kamerling/logging_spec.rb +93 -62
- data/spec/kamerling/mapper_spec.rb +151 -0
- data/spec/kamerling/message_spec.rb +73 -49
- data/spec/kamerling/net_dispatcher_spec.rb +22 -16
- data/spec/kamerling/receiver_spec.rb +29 -19
- data/spec/kamerling/registrar_spec.rb +43 -15
- data/spec/kamerling/registration_spec.rb +17 -0
- data/spec/kamerling/repo_spec.rb +63 -47
- data/spec/kamerling/repos_spec.rb +121 -109
- data/spec/kamerling/result_spec.rb +16 -0
- data/spec/kamerling/server/http_spec.rb +19 -14
- data/spec/kamerling/server/tcp_spec.rb +41 -35
- data/spec/kamerling/server/udp_spec.rb +40 -34
- data/spec/kamerling/server_runner_spec.rb +62 -53
- data/spec/kamerling/settings_spec.rb +36 -0
- data/spec/kamerling/task_dispatcher_spec.rb +38 -15
- data/spec/kamerling/task_spec.rb +9 -5
- data/spec/kamerling/uuid_entity_spec.rb +53 -25
- data/spec/kamerling/uuid_spec.rb +19 -16
- data/spec/kamerling/value_spec.rb +21 -0
- data/spec/spec_helper.rb +3 -6
- metadata +54 -8
- data/lib/kamerling/core_extensions.rb +0 -1
data/spec/kamerling/uuid_spec.rb
CHANGED
@@ -1,24 +1,27 @@
|
|
1
1
|
require_relative '../spec_helper'
|
2
|
+
require_relative '../../lib/kamerling/uuid'
|
2
3
|
|
3
|
-
module Kamerling
|
4
|
-
describe
|
5
|
-
|
6
|
-
|
7
|
-
|
4
|
+
module Kamerling
|
5
|
+
describe UUID do
|
6
|
+
describe '.[]' do
|
7
|
+
it 'creates a normal UUID representation from binary data' do
|
8
|
+
uuid = '31364220-7072-6f6a-6563-742055554944'
|
9
|
+
UUID['16B project UUID'].must_equal uuid
|
10
|
+
end
|
8
11
|
end
|
9
|
-
end
|
10
12
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
13
|
+
describe '.bin' do
|
14
|
+
it 'returns the binary representation of an UUID' do
|
15
|
+
UUID.bin('31364220-7072-6f6a-6563-742055554944')
|
16
|
+
.must_equal '16B project UUID'
|
17
|
+
end
|
15
18
|
end
|
16
|
-
end
|
17
19
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
20
|
+
describe '.new' do
|
21
|
+
it 'creates a new random UUID' do
|
22
|
+
UUID.new.must_match(/\A\h{8}-\h{4}-\h{4}-\h{4}-\h{12}\z/)
|
23
|
+
UUID.new.wont_equal UUID.new
|
24
|
+
end
|
22
25
|
end
|
23
26
|
end
|
24
|
-
end
|
27
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require_relative '../spec_helper'
|
2
|
+
require_relative '../../lib/kamerling/value'
|
3
|
+
|
4
|
+
module Kamerling
|
5
|
+
describe Value do
|
6
|
+
describe '.new' do
|
7
|
+
it 'creates a class with value semantics' do
|
8
|
+
address = Class.new(Value) { vals street: String }
|
9
|
+
address.new(street: 'Folsom').must_equal address.new(street: 'Folsom')
|
10
|
+
address.new(street: 'Folsom').wont_equal address.new(street: 'Fair')
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
describe '.vals' do
|
15
|
+
it 'allows defining values in a key → class manner' do
|
16
|
+
address = Class.new(Value) { vals street: String, country: String }
|
17
|
+
address.attribute_set.map(&:name).must_equal %i(street country)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -3,7 +3,6 @@ require 'minitest/autorun'
|
|
3
3
|
require 'minitest/focus'
|
4
4
|
require 'minitest/pride'
|
5
5
|
require 'bogus/minitest/spec'
|
6
|
-
require 'net/http'
|
7
6
|
require 'rack/test'
|
8
7
|
require 'kamerling'
|
9
8
|
|
@@ -14,15 +13,13 @@ module Minitest
|
|
14
13
|
include Rack::Test::Methods
|
15
14
|
|
16
15
|
module DSL
|
17
|
-
def fakes
|
18
|
-
args.map { |arg| fake
|
16
|
+
def fakes(*args)
|
17
|
+
args.map { |arg| fake(arg) }
|
19
18
|
end
|
20
19
|
end
|
21
20
|
end
|
22
21
|
end
|
23
22
|
|
24
|
-
Thread.abort_on_exception = true
|
25
|
-
|
26
23
|
def run_all_threads
|
27
|
-
|
24
|
+
2.times { Thread.list.each(&:run) }
|
28
25
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kamerling
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Piotr Szotkowski
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-11-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: after_do
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 0.3.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: equalizer
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.0.9
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.0.9
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: sequel
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -150,6 +164,20 @@ dependencies:
|
|
150
164
|
- - "~>"
|
151
165
|
- !ruby/object:Gem::Version
|
152
166
|
version: '1.6'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: pry
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - "~>"
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: 0.10.0
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: 0.10.0
|
153
181
|
- !ruby/object:Gem::Dependency
|
154
182
|
name: rack-test
|
155
183
|
requirement: !ruby/object:Gem::Requirement
|
@@ -198,28 +226,28 @@ dependencies:
|
|
198
226
|
requirements:
|
199
227
|
- - "~>"
|
200
228
|
- !ruby/object:Gem::Version
|
201
|
-
version: 0.
|
229
|
+
version: 0.10.0
|
202
230
|
type: :development
|
203
231
|
prerelease: false
|
204
232
|
version_requirements: !ruby/object:Gem::Requirement
|
205
233
|
requirements:
|
206
234
|
- - "~>"
|
207
235
|
- !ruby/object:Gem::Version
|
208
|
-
version: 0.
|
236
|
+
version: 0.10.0
|
209
237
|
- !ruby/object:Gem::Dependency
|
210
238
|
name: rubocop
|
211
239
|
requirement: !ruby/object:Gem::Requirement
|
212
240
|
requirements:
|
213
241
|
- - "~>"
|
214
242
|
- !ruby/object:Gem::Version
|
215
|
-
version: 0.
|
243
|
+
version: 0.27.0
|
216
244
|
type: :development
|
217
245
|
prerelease: false
|
218
246
|
version_requirements: !ruby/object:Gem::Requirement
|
219
247
|
requirements:
|
220
248
|
- - "~>"
|
221
249
|
- !ruby/object:Gem::Version
|
222
|
-
version: 0.
|
250
|
+
version: 0.27.0
|
223
251
|
description: A network server for distributing computations across different clients
|
224
252
|
speaking TCP or UDP.
|
225
253
|
email: p.szotkowski@tele.pw.edu.pl
|
@@ -241,13 +269,18 @@ files:
|
|
241
269
|
- lib/kamerling.rb
|
242
270
|
- lib/kamerling/addr.rb
|
243
271
|
- lib/kamerling/client.rb
|
244
|
-
- lib/kamerling/core_extensions.rb
|
245
272
|
- lib/kamerling/core_extensions/main.rb
|
273
|
+
- lib/kamerling/dispatch.rb
|
246
274
|
- lib/kamerling/handler.rb
|
247
275
|
- lib/kamerling/http_api.rb
|
248
276
|
- lib/kamerling/logging.rb
|
277
|
+
- lib/kamerling/mapper.rb
|
249
278
|
- lib/kamerling/message.rb
|
250
279
|
- lib/kamerling/migrations/1_basic_schema.rb
|
280
|
+
- lib/kamerling/migrations/2_results_received_at.rb
|
281
|
+
- lib/kamerling/migrations/3_dispatches.rb
|
282
|
+
- lib/kamerling/migrations/4_registrations_registered_at.rb
|
283
|
+
- lib/kamerling/migrations/5_clients_type.rb
|
251
284
|
- lib/kamerling/net_dispatcher.rb
|
252
285
|
- lib/kamerling/project.rb
|
253
286
|
- lib/kamerling/receiver.rb
|
@@ -261,10 +294,12 @@ files:
|
|
261
294
|
- lib/kamerling/server/tcp.rb
|
262
295
|
- lib/kamerling/server/udp.rb
|
263
296
|
- lib/kamerling/server_runner.rb
|
297
|
+
- lib/kamerling/settings.rb
|
264
298
|
- lib/kamerling/task.rb
|
265
299
|
- lib/kamerling/task_dispatcher.rb
|
266
300
|
- lib/kamerling/uuid.rb
|
267
301
|
- lib/kamerling/uuid_entity.rb
|
302
|
+
- lib/kamerling/value.rb
|
268
303
|
- lib/kamerling/views/clients.slim
|
269
304
|
- lib/kamerling/views/layout.slim
|
270
305
|
- lib/kamerling/views/project.slim
|
@@ -273,23 +308,29 @@ files:
|
|
273
308
|
- spec/kamerling/addr_spec.rb
|
274
309
|
- spec/kamerling/client_spec.rb
|
275
310
|
- spec/kamerling/core_extensions/main_spec.rb
|
311
|
+
- spec/kamerling/dispatch_spec.rb
|
276
312
|
- spec/kamerling/handler_spec.rb
|
277
313
|
- spec/kamerling/http_api_spec.rb
|
278
314
|
- spec/kamerling/logging_spec.rb
|
315
|
+
- spec/kamerling/mapper_spec.rb
|
279
316
|
- spec/kamerling/message_spec.rb
|
280
317
|
- spec/kamerling/net_dispatcher_spec.rb
|
281
318
|
- spec/kamerling/receiver_spec.rb
|
282
319
|
- spec/kamerling/registrar_spec.rb
|
320
|
+
- spec/kamerling/registration_spec.rb
|
283
321
|
- spec/kamerling/repo_spec.rb
|
284
322
|
- spec/kamerling/repos_spec.rb
|
323
|
+
- spec/kamerling/result_spec.rb
|
285
324
|
- spec/kamerling/server/http_spec.rb
|
286
325
|
- spec/kamerling/server/tcp_spec.rb
|
287
326
|
- spec/kamerling/server/udp_spec.rb
|
288
327
|
- spec/kamerling/server_runner_spec.rb
|
328
|
+
- spec/kamerling/settings_spec.rb
|
289
329
|
- spec/kamerling/task_dispatcher_spec.rb
|
290
330
|
- spec/kamerling/task_spec.rb
|
291
331
|
- spec/kamerling/uuid_entity_spec.rb
|
292
332
|
- spec/kamerling/uuid_spec.rb
|
333
|
+
- spec/kamerling/value_spec.rb
|
293
334
|
- spec/spec_helper.rb
|
294
335
|
homepage: https://github.com/chastell/kamerling
|
295
336
|
licenses:
|
@@ -319,22 +360,27 @@ test_files:
|
|
319
360
|
- spec/kamerling/addr_spec.rb
|
320
361
|
- spec/kamerling/client_spec.rb
|
321
362
|
- spec/kamerling/core_extensions/main_spec.rb
|
363
|
+
- spec/kamerling/dispatch_spec.rb
|
322
364
|
- spec/kamerling/handler_spec.rb
|
323
365
|
- spec/kamerling/http_api_spec.rb
|
324
366
|
- spec/kamerling/logging_spec.rb
|
367
|
+
- spec/kamerling/mapper_spec.rb
|
325
368
|
- spec/kamerling/message_spec.rb
|
326
369
|
- spec/kamerling/net_dispatcher_spec.rb
|
327
370
|
- spec/kamerling/receiver_spec.rb
|
328
371
|
- spec/kamerling/registrar_spec.rb
|
372
|
+
- spec/kamerling/registration_spec.rb
|
329
373
|
- spec/kamerling/repo_spec.rb
|
330
374
|
- spec/kamerling/repos_spec.rb
|
375
|
+
- spec/kamerling/result_spec.rb
|
331
376
|
- spec/kamerling/server/http_spec.rb
|
332
377
|
- spec/kamerling/server/tcp_spec.rb
|
333
378
|
- spec/kamerling/server/udp_spec.rb
|
334
379
|
- spec/kamerling/server_runner_spec.rb
|
380
|
+
- spec/kamerling/settings_spec.rb
|
335
381
|
- spec/kamerling/task_dispatcher_spec.rb
|
336
382
|
- spec/kamerling/task_spec.rb
|
337
383
|
- spec/kamerling/uuid_entity_spec.rb
|
338
384
|
- spec/kamerling/uuid_spec.rb
|
385
|
+
- spec/kamerling/value_spec.rb
|
339
386
|
- spec/spec_helper.rb
|
340
|
-
has_rdoc:
|
@@ -1 +0,0 @@
|
|
1
|
-
require_relative 'core_extensions/main'
|