propono 0.5.3 → 0.5.4
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 +13 -5
- data/lib/propono.rb +1 -1
- data/lib/propono/services/udp_listener.rb +5 -3
- data/lib/propono/version.rb +1 -1
- data/test/propono_test.rb +10 -0
- data/test/udp_listener.rb +24 -3
- metadata +7 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
|
|
2
|
+
!binary "U0hBMQ==":
|
|
3
|
+
metadata.gz: !binary |-
|
|
4
|
+
MTA1OTNkMDY5NmY4YzRjNDAxYjRiOGJiMWFhNGM0NzRkMmFkYTY5OQ==
|
|
5
|
+
data.tar.gz: !binary |-
|
|
6
|
+
NjY0MDAzODFkZmEyMDAzYWI3ZDQwYmQyMWE4ZTEyNWUwYTlmYjc3OQ==
|
|
5
7
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
|
|
8
|
+
metadata.gz: !binary |-
|
|
9
|
+
ZDM2MzM5ZWUxZGIxODMyMGRiZjBjNmRjZjI1NDg0MTM2Y2I2M2ZhY2U2NDBh
|
|
10
|
+
MTA4ZTRiNDhkMmRiZjM1MWFmMWI5OGQ4YTU2MzI3N2E5ODdkNGRhMTBlMTM1
|
|
11
|
+
ZjJiYWFhYTgyN2Y3YjI3MzZmZjJhMzU2YmFjOGY0OGM2MTUzMWQ=
|
|
12
|
+
data.tar.gz: !binary |-
|
|
13
|
+
N2VhYTFjZTNmOGJiNGMyZjY2OGViNjZmODZlY2Y2OWM5OGExNjRkOTAxYWJm
|
|
14
|
+
Y2JkNjQ1YzY4NWRlZWUzOWNkZTA0YzJiYzBjOTU4ZmE3MzgzZTNhNmNlZWU1
|
|
15
|
+
NTY2NDE5MDE4YzJjZTVjMzNkMWUyZDBmZTdiYjE2NzNjYjU3ODc=
|
data/lib/propono.rb
CHANGED
|
@@ -4,12 +4,14 @@ module Propono
|
|
|
4
4
|
|
|
5
5
|
class UdpListener
|
|
6
6
|
|
|
7
|
-
def self.listen(&processor)
|
|
8
|
-
new(&processor).listen
|
|
7
|
+
def self.listen(host, port, &processor)
|
|
8
|
+
new(host, port, &processor).listen
|
|
9
9
|
end
|
|
10
10
|
|
|
11
|
-
def initialize(&processor)
|
|
11
|
+
def initialize(host, port, &processor)
|
|
12
12
|
raise UdpListenerError.new("Please provide a block to call for each message") unless block_given?
|
|
13
|
+
@host = host
|
|
14
|
+
@port = port
|
|
13
15
|
@processor = processor
|
|
14
16
|
end
|
|
15
17
|
|
data/lib/propono/version.rb
CHANGED
data/test/propono_test.rb
CHANGED
|
@@ -13,5 +13,15 @@ module Propono
|
|
|
13
13
|
Publisher.expects(:publish).with(@var1, @var2)
|
|
14
14
|
Propono.publish(@var1, @var2)
|
|
15
15
|
end
|
|
16
|
+
|
|
17
|
+
def test_listen_to_queue_calls_queue_listener
|
|
18
|
+
QueueListener.expects(:listen).with(@var1, @var2)
|
|
19
|
+
Propono.listen_to_queue(@var1, @var2)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def test_listen_to_udp_calls_udp_listener
|
|
23
|
+
UdpListener.expects(:listen).with(@var1, @var2)
|
|
24
|
+
Propono.listen_to_udp(@var1, @var2)
|
|
25
|
+
end
|
|
16
26
|
end
|
|
17
27
|
end
|
data/test/udp_listener.rb
CHANGED
|
@@ -3,16 +3,37 @@ require File.expand_path('../test_helper', __FILE__)
|
|
|
3
3
|
module Propono
|
|
4
4
|
class UdpListenerTest < Minitest::Test
|
|
5
5
|
|
|
6
|
+
def test_intialize_sets_locals
|
|
7
|
+
host = "my-host"
|
|
8
|
+
port = 1234
|
|
9
|
+
block = Proc.new {}
|
|
10
|
+
|
|
11
|
+
listener = UdpListener.new(host, port, &block)
|
|
12
|
+
assert_equal host, listener.instance_variable_get("@host")
|
|
13
|
+
assert_equal port, listener.instance_variable_get("@port")
|
|
14
|
+
assert_equal block, listener.instance_variable_get("@processor")
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def test_socket_is_setup_correctly
|
|
18
|
+
host = "my-host"
|
|
19
|
+
port = 1234
|
|
20
|
+
|
|
21
|
+
UDPSocket.any_instance.expects(:bind).with(host, port)
|
|
22
|
+
|
|
23
|
+
listener = UdpListener.new(host, port) {}
|
|
24
|
+
socket = listener.send(:socket)
|
|
25
|
+
end
|
|
26
|
+
|
|
6
27
|
def test_initialize_should_fail_without_a_block
|
|
7
28
|
assert_raises(UdpListenerError) do
|
|
8
|
-
UdpListener.new
|
|
29
|
+
UdpListener.new("qwe", 123)
|
|
9
30
|
end
|
|
10
31
|
end
|
|
11
32
|
|
|
12
33
|
def test_message_is_processed
|
|
13
34
|
text = "Foobar123"
|
|
14
35
|
processor = Proc.new {}
|
|
15
|
-
server = UdpListener.new &processor
|
|
36
|
+
server = UdpListener.new("qwewqe", 123, &processor)
|
|
16
37
|
socket = mock(recvfrom: [text])
|
|
17
38
|
server.stubs(socket: socket)
|
|
18
39
|
processor.expects(:call).with(text)
|
|
@@ -21,7 +42,7 @@ module Propono
|
|
|
21
42
|
end
|
|
22
43
|
|
|
23
44
|
def test_listen_should_loop
|
|
24
|
-
listener = UdpListener.new {}
|
|
45
|
+
listener = UdpListener.new("qwewqe", 123) {}
|
|
25
46
|
listener.expects(:loop)
|
|
26
47
|
listener.listen
|
|
27
48
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: propono
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.5.
|
|
4
|
+
version: 0.5.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- MalcyL
|
|
@@ -43,28 +43,28 @@ dependencies:
|
|
|
43
43
|
name: rake
|
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
|
45
45
|
requirements:
|
|
46
|
-
- - '>='
|
|
46
|
+
- - ! '>='
|
|
47
47
|
- !ruby/object:Gem::Version
|
|
48
48
|
version: '0'
|
|
49
49
|
type: :development
|
|
50
50
|
prerelease: false
|
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
|
52
52
|
requirements:
|
|
53
|
-
- - '>='
|
|
53
|
+
- - ! '>='
|
|
54
54
|
- !ruby/object:Gem::Version
|
|
55
55
|
version: '0'
|
|
56
56
|
- !ruby/object:Gem::Dependency
|
|
57
57
|
name: mocha
|
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
|
59
59
|
requirements:
|
|
60
|
-
- - '>='
|
|
60
|
+
- - ! '>='
|
|
61
61
|
- !ruby/object:Gem::Version
|
|
62
62
|
version: '0'
|
|
63
63
|
type: :development
|
|
64
64
|
prerelease: false
|
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
|
66
66
|
requirements:
|
|
67
|
-
- - '>='
|
|
67
|
+
- - ! '>='
|
|
68
68
|
- !ruby/object:Gem::Version
|
|
69
69
|
version: '0'
|
|
70
70
|
- !ruby/object:Gem::Dependency
|
|
@@ -137,12 +137,12 @@ require_paths:
|
|
|
137
137
|
- lib
|
|
138
138
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
139
139
|
requirements:
|
|
140
|
-
- - '>='
|
|
140
|
+
- - ! '>='
|
|
141
141
|
- !ruby/object:Gem::Version
|
|
142
142
|
version: '0'
|
|
143
143
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
144
144
|
requirements:
|
|
145
|
-
- - '>='
|
|
145
|
+
- - ! '>='
|
|
146
146
|
- !ruby/object:Gem::Version
|
|
147
147
|
version: '0'
|
|
148
148
|
requirements: []
|