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