drunkmonkey 0.0.2 → 0.0.3

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZDFkMWFjNjRmMzIwZjdjYTUzZGU3MDI4MzA4ZTlhYzYwNzM2NzI3NA==
4
+ ZDRmNDk1ZDk0Mjc4NjU3ODA2YWVlNGMyMmI3Nzk1MGQyZTc0NjkwZg==
5
5
  data.tar.gz: !binary |-
6
- ZGY5NWRiMmRhYzFhMjY4NTMzYTUxZjZmNWQyMjhmYjQwOGVjOGZmMA==
6
+ M2EwYzI1NzBiODE3YmU4OTY5NWE3YTM0NWVmMmIzODFlNWJiM2I2Zg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- OTc0NDc2NWFmODIxYzczZDNiNDA4Njc4ZmQyZDAzYzJjOTRkYWM1ZDdjMDM2
10
- ZWIyNTUyZGI0ZTE4YzlhYWRiNjdhNTYyMjdmODcxZWQ2MmZhNmFhYzEyMzEz
11
- N2ViYzZmYTJlMDNjNTBmODkyODUyZTA2YjlhODE0ZDNmMzllOGM=
9
+ ZmU2YzE5YWM1NzRiZjQyN2IzODA0MWJlZDRmMjg4Njg4YTlkNGY3MjQyYzdm
10
+ ZjAzZGUyYTNlZTM3MmNkYWY4ZGRiMGUyNmJkYmEwMTlhNmIwNzRkMDM4M2Iz
11
+ MDUyY2NkYmUwZjhjZGUzNDJjNjczNDM2ZWYwYmFmYTE3NDZlNDE=
12
12
  data.tar.gz: !binary |-
13
- ZWEzNWE2ZWFlMTgxODZlMDRlOGQyMzI2YmUxNWRhZGRkNGU5MjNmZmJlZGRk
14
- OGU3MDBkMTQwMDI4NjliZGVlZDQ0ZmViNGI1MGFjODc3OGRhOWEwMWY1NWZi
15
- NmU2NjJmYjQ3YjA2MGFlYjFhZDc4M2VmODkwZTlkNjQzZWM5MWY=
13
+ N2RkMjdkZmFjMDRlZGVlOGZlNWIxODViNTIxM2MzMmMwYTUwNzQ5OTVjNTI3
14
+ ZjRmMzZjYjM5ZTkwMmM4NDVkNTk3ZDNjOTdjYTk0Y2MwNTkzNTVmNzM1MTM1
15
+ OWYzZGM4ZmM0MGFjZTIzMzE0ZTg1YzRlYWQ0ZjhkOWZjYTc4NGY=
data/lib/drunkmonkey.rb CHANGED
@@ -15,7 +15,7 @@ module DrunkMonkey
15
15
  end
16
16
 
17
17
  def on event, &block
18
- @handlers[event] ||= block
18
+ @handlers[event] = block
19
19
  end
20
20
 
21
21
  execute_block_on_receiver :on
@@ -42,6 +42,8 @@ module DrunkMonkey
42
42
  @controller = Celluloid::Actor[options[:controller_name]] ||
43
43
  Controller.new(options[:controller_name])
44
44
 
45
+ instance_eval(&block) if block
46
+
45
47
  mapping = Hash.new
46
48
  mapping[options[:path]] = -> env do
47
49
  Transport.call env, options
@@ -1,3 +1,3 @@
1
1
  module DrunkMonkey
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -59,4 +59,41 @@ module DrunkMonkey
59
59
  end
60
60
  end
61
61
  end
62
- end
62
+ end
63
+
64
+ module Rack
65
+ describe Builder do
66
+ describe "#use" do
67
+ specify do
68
+ handler = proc do |socket,msg|
69
+ end
70
+
71
+ DrunkMonkey::Middleware.base = nil
72
+
73
+ builder = Builder.new do
74
+ use DrunkMonkey::Middleware do
75
+ on :message, &handler
76
+ end
77
+ run -> env {[500,{},[]]}
78
+ end
79
+
80
+ env = {
81
+ "REQUEST_METHOD" => "POST",
82
+ "SCRIPT_NAME" => "",
83
+ "PATH_INFO" => "/drunkmonkey",
84
+ "QUERY_STRING" => "",
85
+ "SERVER_NAME" => "localhost",
86
+ "SERVER_PORT" => "80",
87
+ "rack.input" => StringIO.new(%{data={"a":"1"}})
88
+ }
89
+
90
+ builder.call env
91
+
92
+ handlers = DrunkMonkey::Middleware.base
93
+ .instance_variable_get(:@controller)
94
+ .instance_variable_get(:@handlers)
95
+ expect(handlers[:message]).to eq(handler)
96
+ end
97
+ end
98
+ end
99
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: drunkmonkey
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Minori Tokuda