eye 0.2.4 → 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.
Files changed (143) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -3
  3. data/bin/eye +7 -0
  4. data/bin/loader_eye +7 -5
  5. data/examples/notify.eye +1 -1
  6. data/eye.gemspec +4 -4
  7. data/lib/eye.rb +1 -3
  8. data/lib/eye/controller.rb +4 -0
  9. data/lib/eye/controller/status.rb +1 -1
  10. data/lib/eye/dsl.rb +1 -1
  11. data/lib/eye/dsl/main.rb +0 -13
  12. data/lib/eye/dsl/opts.rb +4 -2
  13. data/lib/eye/loader.rb +2 -3
  14. data/lib/eye/notify.rb +3 -3
  15. data/lib/eye/process/monitor.rb +5 -3
  16. data/lib/eye/process/notify.rb +5 -5
  17. data/lib/eye/process/scheduler.rb +4 -4
  18. data/lib/eye/process/system.rb +3 -10
  19. data/lib/eye/process/trigger.rb +1 -1
  20. data/lib/eye/process/watchers.rb +1 -1
  21. data/lib/eye/server.rb +9 -8
  22. data/lib/eye/system.rb +2 -7
  23. data/lib/eye/system_resources.rb +3 -3
  24. data/lib/eye/utils/celluloid_chain.rb +2 -2
  25. metadata +7 -241
  26. data/lib/eye/io/unix_server.rb +0 -44
  27. data/lib/eye/io/unix_socket.rb +0 -39
  28. data/spec/checker/cpu_spec.rb +0 -58
  29. data/spec/checker/file_ctime_spec.rb +0 -34
  30. data/spec/checker/file_size_spec.rb +0 -107
  31. data/spec/checker/http_spec.rb +0 -114
  32. data/spec/checker/memory_spec.rb +0 -64
  33. data/spec/checker/socket_spec.rb +0 -116
  34. data/spec/checker_spec.rb +0 -187
  35. data/spec/child_process/child_process_spec.rb +0 -46
  36. data/spec/client_server_spec.rb +0 -33
  37. data/spec/controller/commands_spec.rb +0 -92
  38. data/spec/controller/controller_spec.rb +0 -157
  39. data/spec/controller/find_objects_spec.rb +0 -176
  40. data/spec/controller/group_spec.rb +0 -110
  41. data/spec/controller/intergration_spec.rb +0 -366
  42. data/spec/controller/load_spec.rb +0 -371
  43. data/spec/controller/races_spec.rb +0 -70
  44. data/spec/controller/stop_on_delete_spec.rb +0 -157
  45. data/spec/dsl/chain_spec.rb +0 -146
  46. data/spec/dsl/checks_spec.rb +0 -219
  47. data/spec/dsl/config_spec.rb +0 -44
  48. data/spec/dsl/dsl_spec.rb +0 -73
  49. data/spec/dsl/getter_spec.rb +0 -223
  50. data/spec/dsl/integration_spec.rb +0 -376
  51. data/spec/dsl/load_spec.rb +0 -52
  52. data/spec/dsl/notify_spec.rb +0 -114
  53. data/spec/dsl/process_spec.rb +0 -380
  54. data/spec/dsl/sub_procs_spec.rb +0 -93
  55. data/spec/dsl/with_server_spec.rb +0 -128
  56. data/spec/example/em.rb +0 -57
  57. data/spec/example/forking.rb +0 -20
  58. data/spec/example/sample.rb +0 -154
  59. data/spec/fixtures/dsl/0.rb +0 -8
  60. data/spec/fixtures/dsl/0a.rb +0 -8
  61. data/spec/fixtures/dsl/0c.rb +0 -8
  62. data/spec/fixtures/dsl/1.rb +0 -5
  63. data/spec/fixtures/dsl/bad.eye +0 -6
  64. data/spec/fixtures/dsl/configs/1.eye +0 -3
  65. data/spec/fixtures/dsl/configs/2.eye +0 -1
  66. data/spec/fixtures/dsl/configs/3.eye +0 -1
  67. data/spec/fixtures/dsl/configs/4.eye +0 -3
  68. data/spec/fixtures/dsl/empty.eye +0 -20
  69. data/spec/fixtures/dsl/include_test.eye +0 -5
  70. data/spec/fixtures/dsl/include_test/1.rb +0 -6
  71. data/spec/fixtures/dsl/include_test/ha.rb +0 -4
  72. data/spec/fixtures/dsl/include_test2.eye +0 -5
  73. data/spec/fixtures/dsl/integration.eye +0 -30
  74. data/spec/fixtures/dsl/integration2.eye +0 -32
  75. data/spec/fixtures/dsl/integration_locks.eye +0 -30
  76. data/spec/fixtures/dsl/integration_sor.eye +0 -32
  77. data/spec/fixtures/dsl/integration_sor2.eye +0 -27
  78. data/spec/fixtures/dsl/integration_sor3.eye +0 -32
  79. data/spec/fixtures/dsl/load.eye +0 -25
  80. data/spec/fixtures/dsl/load2.eye +0 -7
  81. data/spec/fixtures/dsl/load2_dup2.eye +0 -13
  82. data/spec/fixtures/dsl/load2_dup_pid.eye +0 -7
  83. data/spec/fixtures/dsl/load3.eye +0 -10
  84. data/spec/fixtures/dsl/load4.eye +0 -7
  85. data/spec/fixtures/dsl/load5.eye +0 -8
  86. data/spec/fixtures/dsl/load6.eye +0 -17
  87. data/spec/fixtures/dsl/load_dubls.eye +0 -36
  88. data/spec/fixtures/dsl/load_dup_ex_names.eye +0 -15
  89. data/spec/fixtures/dsl/load_error.eye +0 -5
  90. data/spec/fixtures/dsl/load_error_folder/load3.eye +0 -10
  91. data/spec/fixtures/dsl/load_error_folder/load4.eye +0 -7
  92. data/spec/fixtures/dsl/load_folder/load3.eye +0 -10
  93. data/spec/fixtures/dsl/load_folder/load4.eye +0 -7
  94. data/spec/fixtures/dsl/load_int.eye +0 -8
  95. data/spec/fixtures/dsl/load_int2.eye +0 -13
  96. data/spec/fixtures/dsl/load_logger.eye +0 -26
  97. data/spec/fixtures/dsl/load_logger2.eye +0 -3
  98. data/spec/fixtures/dsl/long_load.eye +0 -5
  99. data/spec/fixtures/dsl/subfolder1/proc1.rb +0 -3
  100. data/spec/fixtures/dsl/subfolder2.eye +0 -9
  101. data/spec/fixtures/dsl/subfolder2/common.rb +0 -1
  102. data/spec/fixtures/dsl/subfolder2/proc2.rb +0 -3
  103. data/spec/fixtures/dsl/subfolder2/sub/proc3.rb +0 -6
  104. data/spec/fixtures/dsl/subfolder3.eye +0 -8
  105. data/spec/fixtures/dsl/subfolder3/common.rb +0 -1
  106. data/spec/fixtures/dsl/subfolder3/proc4.rb +0 -3
  107. data/spec/fixtures/dsl/subfolder3/sub/proc5.rb +0 -6
  108. data/spec/fixtures/dsl/subfolder4.eye +0 -6
  109. data/spec/fixtures/dsl/subfolder4/a.rb +0 -2
  110. data/spec/fixtures/dsl/subfolder4/b.rb +0 -1
  111. data/spec/fixtures/dsl/subfolder4/c.rb +0 -1
  112. data/spec/mock_spec.rb +0 -31
  113. data/spec/notify/jabber_spec.rb +0 -25
  114. data/spec/notify/mail_spec.rb +0 -26
  115. data/spec/notify_spec.rb +0 -90
  116. data/spec/process/checks/child_checks_spec.rb +0 -79
  117. data/spec/process/checks/cpu_spec.rb +0 -114
  118. data/spec/process/checks/ctime_spec.rb +0 -43
  119. data/spec/process/checks/fsize_spec.rb +0 -22
  120. data/spec/process/checks/http_spec.rb +0 -52
  121. data/spec/process/checks/intergration_spec.rb +0 -32
  122. data/spec/process/checks/memory_spec.rb +0 -127
  123. data/spec/process/child_process_spec.rb +0 -125
  124. data/spec/process/config_spec.rb +0 -74
  125. data/spec/process/controller_spec.rb +0 -173
  126. data/spec/process/monitoring_spec.rb +0 -180
  127. data/spec/process/notify_spec.rb +0 -27
  128. data/spec/process/restart_spec.rb +0 -186
  129. data/spec/process/scheduler_spec.rb +0 -178
  130. data/spec/process/start_spec.rb +0 -261
  131. data/spec/process/states_history_spec.rb +0 -123
  132. data/spec/process/stop_spec.rb +0 -156
  133. data/spec/process/system_spec.rb +0 -136
  134. data/spec/process/triggers/flapping_spec.rb +0 -242
  135. data/spec/process/update_config_spec.rb +0 -62
  136. data/spec/spec_helper.rb +0 -128
  137. data/spec/support/rr_celluloid.rb +0 -15
  138. data/spec/support/spec_support.rb +0 -163
  139. data/spec/system_resources_spec.rb +0 -56
  140. data/spec/system_spec.rb +0 -174
  141. data/spec/utils/alive_array_spec.rb +0 -49
  142. data/spec/utils/celluloid_chain_spec.rb +0 -89
  143. data/spec/utils/tail_spec.rb +0 -20
@@ -1,146 +0,0 @@
1
- require File.dirname(__FILE__) + '/../spec_helper'
2
-
3
- describe "Eye::Dsl::Chain" do
4
-
5
- it "should understand chain options" do
6
- conf = <<-E
7
- Eye.application("bla") do
8
- chain :grace => 5.seconds
9
-
10
- process("3") do
11
- pid_file "3"
12
- end
13
-
14
- group :yy do
15
- end
16
- end
17
- E
18
-
19
- h = {
20
- "bla" => {
21
- :name=>"bla",
22
- :chain=>{:start=>{:grace=>5, :action=>:start}, :restart=>{:grace=>5, :action=>:restart}},
23
- :groups=>{
24
- "__default__"=>{
25
- :name=>"__default__",
26
- :chain=>{:start=>{:grace=>5, :action=>:start}, :restart=>{:grace=>5, :action=>:restart}},
27
- :application=>"bla",
28
- :processes=>{
29
- "3"=>{
30
- :name=>"3",
31
- :chain=>{:start=>{:grace=>5, :action=>:start}, :restart=>{:grace=>5, :action=>:restart}},
32
- :application=>"bla",
33
- :group=>"__default__",
34
- :pid_file=>"3"}}},
35
- "yy"=>{
36
- :name=>"yy",
37
- :chain=>{:start=>{:grace=>5, :action=>:start}, :restart=>{:grace=>5, :action=>:restart}},
38
- :application=>"bla", :processes=>{}}}}
39
- }
40
-
41
- Eye::Dsl.parse_apps(conf).should == h
42
- end
43
-
44
- it "1 inner group have" do
45
- conf = <<-E
46
- Eye.application("bla") do
47
- group "gr1" do
48
- chain :grace => 5.seconds
49
- end
50
-
51
- process("p1"){pid_file('1')}
52
- end
53
- E
54
-
55
- h = {
56
- "bla" => {:name => "bla",
57
- :groups=>{
58
- "gr1"=>{:name => "gr1", :application => "bla",
59
- :chain=>{:start=>{:grace=>5, :action=>:start},
60
- :restart=>{:grace=>5, :action=>:restart}},
61
- :processes=>{}},
62
- "__default__"=>{:name => "__default__", :application => "bla",
63
- :processes=>{"p1"=>{:pid_file=>"1", :application=>"bla", :group=>"__default__", :name=>"p1"}}}}}}
64
-
65
- Eye::Dsl.parse_apps(conf).should == h
66
- end
67
-
68
- it "1 group have, 1 not" do
69
- conf = <<-E
70
- Eye.application("bla") do
71
- group "gr1" do
72
- working_dir "/tmp"
73
- chain :grace => 5.seconds
74
- end
75
-
76
- group("gr2"){
77
- working_dir '/tmp'
78
- }
79
- end
80
- E
81
-
82
- h = {
83
- "bla" => {:name => "bla",
84
- :groups=>{
85
- "gr1"=>{:name => "gr1", :application => "bla",
86
- :working_dir=>"/tmp",
87
- :chain=>{:start=>{:grace=>5, :action=>:start}, :restart=>{:grace=>5, :action=>:restart}},
88
- :processes=>{}},
89
- "gr2"=>{:working_dir=>"/tmp", :processes=>{}, :name => "gr2", :application => "bla"}}}}
90
-
91
- Eye::Dsl.parse_apps(conf).should == h
92
- end
93
-
94
- it "one option" do
95
- conf = <<-E
96
- Eye.application("bla") do
97
- chain :grace => 5.seconds, :action => :start, :type => :async
98
-
99
- process("3") do
100
- pid_file "3"
101
- end
102
- end
103
- E
104
-
105
- h = {"bla" => {:name => "bla",
106
- :chain=>{
107
- :start=>{:grace=>5, :action=>:start, :type=>:async}},
108
- :groups=>{
109
- "__default__"=>{:name => "__default__", :application => "bla",
110
- :chain=>{:start=>{:grace=>5, :action=>:start, :type=>:async}},
111
- :processes=>{"3"=>{:chain=>{:start=>{:grace=>5, :action=>:start, :type=>:async}}, :pid_file=>"3", :application=>"bla", :group=>"__default__", :name=>"3"}}}}}}
112
-
113
- Eye::Dsl.parse_apps(conf).should == h
114
- end
115
-
116
- it "group can rewrite part of options" do
117
- conf = <<-E
118
- Eye.application("bla") do
119
- chain :grace => 5.seconds
120
-
121
- group "gr" do
122
- chain :grace => 10.seconds, :action => :start, :type => :sync
123
-
124
- process("3") do
125
- pid_file "3"
126
- end
127
- end
128
- end
129
- E
130
-
131
- h = {"bla" => {:name => "bla",
132
- :chain=>{
133
- :start=>{:grace=>5, :action=>:start},
134
- :restart=>{:grace=>5, :action=>:restart}},
135
- :groups=>{
136
- "gr"=>{:name => "gr", :application => "bla",
137
- :chain=>{
138
- :start=>{:grace=>10, :action=>:start, :type=>:sync},
139
- :restart=>{:grace=>5, :action=>:restart}},
140
- :processes=>{"3"=>{:chain=>{:start=>{:grace=>10, :action=>:start, :type=>:sync}, :restart=>{:grace=>5, :action=>:restart}}, :pid_file=>"3", :application=>"bla", :group=>"gr", :name=>"3"}}}}}}
141
-
142
- Eye::Dsl.parse_apps(conf).should == h
143
- end
144
-
145
-
146
- end
@@ -1,219 +0,0 @@
1
- require File.dirname(__FILE__) + '/../spec_helper'
2
-
3
- describe "Eye::Dsl checks" do
4
-
5
- it "ok checks" do
6
- conf = <<-E
7
- Eye.application("bla") do
8
- process("1") do
9
- pid_file "1.pid"
10
-
11
- checks :memory, :below => 100.megabytes, :every => 10.seconds
12
- checks :cpu, :below => 100, :every => 20.seconds
13
- end
14
- end
15
- E
16
- Eye::Dsl.parse_apps(conf).should == {"bla" => {:name => "bla", :groups=>{"__default__"=>{:name => "__default__", :application => "bla", :processes=>{"1"=>{:pid_file=>"1.pid", :checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}, :cpu=>{:below=>100, :every=>20, :type=>:cpu}}, :application=>"bla", :group=>"__default__", :name=>"1"}}}}}}
17
- end
18
-
19
- it "inherit checks" do
20
- conf = <<-E
21
- Eye.application("bla") do
22
- checks :memory, :below => 100.megabytes, :every => 10.seconds
23
-
24
- process("1") do
25
- pid_file "1.pid"
26
-
27
- checks :memory, :below => 90.megabytes, :every => 5.seconds
28
- checks :cpu, :below => 100, :every => 20.seconds
29
- end
30
-
31
- process("2") do
32
- pid_file "2.pid"
33
- end
34
- end
35
- E
36
- Eye::Dsl.parse_apps(conf).should == {"bla" => {:name => "bla", :checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}}, :groups=>{"__default__"=>{:name => "__default__", :application => "bla", :checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}}, :processes=>{"1"=>{:checks=>{:memory=>{:below=>94371840, :every=>5, :type=>:memory}, :cpu=>{:below=>100, :every=>20, :type=>:cpu}}, :pid_file=>"1.pid", :application=>"bla", :group=>"__default__", :name=>"1"}, "2"=>{:checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}}, :pid_file=>"2.pid", :application=>"bla", :group=>"__default__", :name=>"2"}}}}}}
37
- end
38
-
39
- it "checks in monitor_children" do
40
- conf = <<-E
41
- Eye.application("bla") do
42
- process("1") do
43
- pid_file "1.pid"
44
- monitor_children{
45
- checks :cpu, :below => 100, :every => 20.seconds
46
- }
47
- end
48
- end
49
- E
50
- Eye::Dsl.parse_apps(conf).should == {"bla" => {:name => "bla", :groups=>{"__default__"=>{:name => "__default__", :application => "bla", :processes=>{"1"=>{:pid_file=>"1.pid", :monitor_children=>{:checks=>{:cpu=>{:below=>100, :every=>20, :type=>:cpu}}}, :application=>"bla", :group=>"__default__", :name=>"1"}}}}}}
51
- end
52
-
53
- it "child should not inherit checks" do
54
- conf = <<-E
55
- Eye.application("bla") do
56
- process("1") do
57
- pid_file "1.pid"
58
- checks :cpu, :below => 100, :every => 20.seconds
59
- monitor_children{
60
- }
61
- end
62
- end
63
- E
64
- Eye::Dsl.parse_apps(conf).should == {"bla" => {:name=>"bla", :groups=>{"__default__"=>{:name=>"__default__", :application=>"bla", :processes=>{"1"=>{:name=>"1", :application=>"bla", :group=>"__default__", :pid_file=>"1.pid", :checks=>{:cpu=>{:below=>100, :every=>20, :type=>:cpu}}, :monitor_children=>{}}}}}}}
65
- end
66
-
67
- it "no valid checks" do
68
- conf = <<-E
69
- Eye.application("bla") do
70
- process("1") do
71
- pid_file "1.pid"
72
- checks :cpu, :below => {1 => 2}, :every => 20.seconds
73
- end
74
- end
75
- E
76
- expect{Eye::Dsl.parse_apps(conf)}.to raise_error(Eye::Dsl::Validation::Error)
77
- end
78
-
79
- it "ok trigger" do
80
- conf = <<-E
81
- Eye.application("bla") do
82
- process("1") do
83
- pid_file "1.pid"
84
-
85
- triggers :flapping, :times => 2, :within => 15.seconds
86
- end
87
- end
88
- E
89
- Eye::Dsl.parse_apps(conf).should == {"bla" => {:name => "bla", :groups=>{"__default__"=>{:name => "__default__", :application => "bla", :processes=>{"1"=>{:pid_file=>"1.pid", :triggers=>{:flapping=>{:times=>2, :within=>15, :type=>:flapping}}, :application=>"bla", :group=>"__default__", :name=>"1"}}}}}}
90
- end
91
-
92
- it "no valid trigger" do
93
- conf = <<-E
94
- Eye.application("bla") do
95
- process("1") do
96
- pid_file "1.pid"
97
- triggers :flapping, :times => 2, :within => "bla"
98
- end
99
- end
100
- E
101
- expect{Eye::Dsl.parse_apps(conf)}.to raise_error(Eye::Dsl::Validation::Error)
102
- end
103
-
104
- it "nochecks to remove inherit checks" do
105
- conf = <<-E
106
- Eye.application("bla") do
107
- checks :memory, :below => 100.megabytes, :every => 10.seconds
108
-
109
- process("1") do
110
- pid_file "1.pid"
111
- nochecks :memory
112
- end
113
-
114
- process("2") do
115
- pid_file "2.pid"
116
- end
117
- end
118
- E
119
- Eye::Dsl.parse_apps(conf).should == {
120
- "bla" => {:name => "bla", :checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}},
121
- :groups=>{
122
- "__default__"=>{:name => "__default__", :application => "bla",
123
- :checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}},
124
- :processes=>{
125
- "1"=>{:checks=>{}, :pid_file=>"1.pid", :application=>"bla", :group=>"__default__", :name=>"1"},
126
- "2"=>{:checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}}, :pid_file=>"2.pid", :application=>"bla", :group=>"__default__", :name=>"2"}}}}}}
127
- end
128
-
129
- it "empty nocheck do nothing and inherit" do
130
- conf = <<-E
131
- Eye.application("bla") do
132
- checks :memory, :below => 100.megabytes, :every => 10.seconds
133
- nochecks :cpu
134
-
135
- group :blagr do
136
- process("1") do
137
- pid_file "1.pid"
138
- nochecks :cpu
139
- nochecks :memory
140
- end
141
- end
142
-
143
- process("2") do
144
- pid_file "2.pid"
145
- end
146
- end
147
- E
148
- Eye::Dsl.parse_apps(conf).should == {
149
- "bla" => {:name => "bla",
150
- :checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}},
151
- :groups=>{
152
- "blagr" => {:name=>"blagr", :checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}}, :application=>"bla",
153
- :processes => {"1"=>{:checks=>{}, :pid_file=>"1.pid", :application=>"bla", :group=>"blagr", :name=>"1"}}},
154
- "__default__"=>{:name =>
155
- "__default__", :application => "bla",
156
- :checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}}, :processes=>{
157
- "2"=>{:checks=>{:memory=>{:below=>104857600, :every=>10, :type=>:memory}}, :pid_file=>"2.pid", :application=>"bla", :group=>"__default__", :name=>"2"}}}}}}
158
- end
159
-
160
- it "process with unknown checker type" do
161
- conf = <<-E
162
- Eye.application("bla") do |app|
163
- app.process("1") do
164
- pid_file "2.pid"
165
-
166
- checks :bla, :a => 1
167
- end
168
- end
169
- E
170
- expect{Eye::Dsl.parse_apps(conf)}.to raise_error(Eye::Dsl::Error)
171
- end
172
-
173
- it "process with unknown triggers type" do
174
- conf = <<-E
175
- Eye.application("bla") do |app|
176
- app.process("1") do
177
- pid_file "2.pid"
178
-
179
- triggers :bla, :a => 1
180
- end
181
- end
182
- E
183
- expect{Eye::Dsl.parse_apps(conf)}.to raise_error(Eye::Dsl::Error)
184
- end
185
-
186
- it "check with Proc" do
187
- conf = <<-E
188
- Eye.application("bla") do
189
- process("1") do
190
- pid_file "1.pid"
191
-
192
- checks :socket, :addr => "unix:/tmp/1", :expect_data => Proc.new{|data| data == 1}
193
- end
194
-
195
- process("3") do
196
- pid_file "3.pid"
197
-
198
- checks :socket, :addr => "unix:/tmp/3", :expect_data => /regexp/
199
- end
200
-
201
- process("2") do
202
- pid_file "2.pid"
203
-
204
- checks :socket, :addr => "unix:/tmp/2", :expect_data => Proc.new{|data| data == 1}
205
- end
206
-
207
- end
208
- E
209
- res = Eye::Dsl.parse_apps(conf)
210
- proc = res['bla'][:groups]['__default__'][:processes]['1'][:checks][:socket][:expect_data]
211
- proc[0].should == false
212
- proc[1].should == true
213
-
214
- proc = res['bla'][:groups]['__default__'][:processes]['2'][:checks][:socket][:expect_data]
215
- proc[0].should == false
216
- proc[1].should == true
217
- end
218
-
219
- end
@@ -1,44 +0,0 @@
1
- require File.dirname(__FILE__) + '/../spec_helper'
2
-
3
- describe "Eye::Dsl::Config" do
4
-
5
- describe "deprecated options" do
6
- it "logger" do
7
- conf = <<-E
8
- Eye.logger = "/tmp/1.log"
9
- Eye.logger_level = Logger::DEBUG
10
-
11
- Eye.application("bla") do
12
- end
13
- E
14
- Eye::Dsl.parse(conf).should == {:applications => {"bla" => {:name => "bla"}},
15
- :config => {:logger => "/tmp/1.log", :logger_level => Logger::DEBUG}}
16
- end
17
- end
18
-
19
- it "logger" do
20
- conf = <<-E
21
- Eye.config do
22
- logger "/tmp/1.log"
23
- end
24
- E
25
- Eye::Dsl.parse(conf).should == {:applications => {}, :config => {:logger => "/tmp/1.log"}}
26
- end
27
-
28
- it "should merge sections" do
29
- conf = <<-E
30
- Eye.config do
31
- logger "/tmp/1.log"
32
- logger_level 2
33
- end
34
-
35
- Eye.config do
36
- logger "/tmp/2.log"
37
- end
38
-
39
- E
40
- Eye::Dsl.parse(conf).should == {:applications => {}, :config => {:logger => "/tmp/2.log",
41
- :logger_level => 2}}
42
- end
43
-
44
- end
@@ -1,73 +0,0 @@
1
- require File.dirname(__FILE__) + '/../spec_helper'
2
-
3
- describe "Eye::Dsl" do
4
-
5
- it "fully empty config" do
6
- conf = <<-E
7
- # haha
8
- E
9
- Eye::Dsl.parse(conf).should == {:applications => {}, :config => {}}
10
- Eye::Dsl.parse_apps(conf).should == {}
11
- end
12
-
13
- it "empty config" do
14
- conf = <<-E
15
- Eye.application("bla") do
16
- end
17
- E
18
- Eye::Dsl.parse_apps(conf).should == {'bla' => {:name => "bla"}}
19
- end
20
-
21
- it "should set param " do
22
- conf = <<-E
23
- Eye.application("bla") do
24
- start_timeout 10.seconds
25
- end
26
- E
27
- Eye::Dsl.parse_apps(conf).should == {"bla"=>{:start_timeout => 10.seconds, :name => "bla"}}
28
- end
29
-
30
- it "should set param, with self and =" do
31
- conf = <<-E
32
- Eye.application("bla") do
33
- self.start_timeout = 10.seconds
34
- end
35
- E
36
- Eye::Dsl.parse_apps(conf).should == {"bla"=>{:start_timeout => 10.seconds, :name => "bla"}}
37
- end
38
-
39
- it "another block syntax" do
40
- conf = <<-E
41
- Eye.application("bla"){ start_timeout 10.seconds }
42
- E
43
- Eye::Dsl.parse_apps(conf).should == {"bla"=>{:start_timeout => 10.seconds, :name => "bla"}}
44
- end
45
-
46
- it "should raise on unknown option" do
47
- conf = <<-E
48
- Eye.application("bla") do
49
- pid_file "11"
50
- hoho 10
51
- end
52
- E
53
- expect{Eye::Dsl.parse_apps(conf)}.to raise_error(Eye::Dsl::Error)
54
- end
55
-
56
- it "hash should not be with defaults" do
57
- conf = <<-E
58
- Eye.application("bla") do
59
- start_timeout 10.seconds
60
-
61
- process("11") do
62
- pid_file "1"
63
- end
64
- end
65
- E
66
- cfg = Eye::Dsl.parse_apps(conf)
67
- cfg[:something].should == nil
68
- cfg['bla'][:something].should == nil
69
- cfg['bla'][:groups]['__default__'][:some].should == nil
70
- cfg['bla'][:groups]['__default__'][:processes][:some].should == nil
71
- end
72
-
73
- end