textgoeshere-daemon-kit 0.1.8rc3

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 (185) hide show
  1. data/.gitignore +5 -0
  2. data/Configuration.txt +110 -0
  3. data/Deployment.txt +113 -0
  4. data/History.txt +124 -0
  5. data/Logging.txt +96 -0
  6. data/PostInstall.txt +6 -0
  7. data/README.rdoc +128 -0
  8. data/Rakefile +29 -0
  9. data/RuoteParticipants.txt +113 -0
  10. data/TODO.txt +27 -0
  11. data/bin/daemon-kit +18 -0
  12. data/config/website.yml +2 -0
  13. data/daemon-kit.gemspec +265 -0
  14. data/lib/daemon_kit/abstract_logger.rb +249 -0
  15. data/lib/daemon_kit/amqp.rb +39 -0
  16. data/lib/daemon_kit/application.rb +230 -0
  17. data/lib/daemon_kit/arguments.rb +165 -0
  18. data/lib/daemon_kit/commands/console.rb +38 -0
  19. data/lib/daemon_kit/commands/destroy.rb +10 -0
  20. data/lib/daemon_kit/commands/generate.rb +10 -0
  21. data/lib/daemon_kit/config.rb +113 -0
  22. data/lib/daemon_kit/console_daemon.rb +2 -0
  23. data/lib/daemon_kit/core_ext/configurable.rb +96 -0
  24. data/lib/daemon_kit/core_ext/string.rb +22 -0
  25. data/lib/daemon_kit/core_ext.rb +1 -0
  26. data/lib/daemon_kit/cron.rb +48 -0
  27. data/lib/daemon_kit/cucumber/world.rb +38 -0
  28. data/lib/daemon_kit/deployment/capistrano.rb +516 -0
  29. data/lib/daemon_kit/em.rb +43 -0
  30. data/lib/daemon_kit/error_handlers/base.rb +32 -0
  31. data/lib/daemon_kit/error_handlers/hoptoad.rb +180 -0
  32. data/lib/daemon_kit/exceptions.rb +15 -0
  33. data/lib/daemon_kit/generators/base.rb +60 -0
  34. data/lib/daemon_kit/generators.rb +67 -0
  35. data/lib/daemon_kit/initializer.rb +453 -0
  36. data/lib/daemon_kit/jabber.rb +171 -0
  37. data/lib/daemon_kit/nanite/agent.rb +77 -0
  38. data/lib/daemon_kit/nanite.rb +7 -0
  39. data/lib/daemon_kit/pid_file.rb +61 -0
  40. data/lib/daemon_kit/ruote_participants.rb +125 -0
  41. data/lib/daemon_kit/ruote_pseudo_participant.rb +68 -0
  42. data/lib/daemon_kit/ruote_workitem.rb +187 -0
  43. data/lib/daemon_kit/safety.rb +84 -0
  44. data/lib/daemon_kit/tasks/environment.rake +10 -0
  45. data/lib/daemon_kit/tasks/framework.rake +123 -0
  46. data/lib/daemon_kit/tasks/god.rake +62 -0
  47. data/lib/daemon_kit/tasks/log.rake +8 -0
  48. data/lib/daemon_kit/tasks/monit.rake +29 -0
  49. data/lib/daemon_kit/tasks.rb +2 -0
  50. data/lib/daemon_kit/vendor/thor-0.13.6/CHANGELOG.rdoc +89 -0
  51. data/lib/daemon_kit/vendor/thor-0.13.6/LICENSE +20 -0
  52. data/lib/daemon_kit/vendor/thor-0.13.6/README.rdoc +297 -0
  53. data/lib/daemon_kit/vendor/thor-0.13.6/Thorfile +69 -0
  54. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/create_file.rb +103 -0
  55. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/directory.rb +91 -0
  56. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/empty_directory.rb +134 -0
  57. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/file_manipulation.rb +223 -0
  58. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/inject_into_file.rb +104 -0
  59. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions.rb +296 -0
  60. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/base.rb +540 -0
  61. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/file_binary_read.rb +9 -0
  62. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/hash_with_indifferent_access.rb +75 -0
  63. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/ordered_hash.rb +100 -0
  64. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/error.rb +30 -0
  65. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/group.rb +271 -0
  66. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/invocation.rb +180 -0
  67. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/argument.rb +67 -0
  68. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/arguments.rb +150 -0
  69. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/option.rb +128 -0
  70. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/options.rb +169 -0
  71. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser.rb +4 -0
  72. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/rake_compat.rb +66 -0
  73. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/runner.rb +314 -0
  74. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell/basic.rb +239 -0
  75. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell/color.rb +108 -0
  76. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell.rb +83 -0
  77. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/task.rb +102 -0
  78. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/util.rb +224 -0
  79. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor/version.rb +3 -0
  80. data/lib/daemon_kit/vendor/thor-0.13.6/lib/thor.rb +244 -0
  81. data/lib/daemon_kit/xmpp.rb +100 -0
  82. data/lib/daemon_kit.rb +59 -0
  83. data/lib/generators/daemon_kit/amqp/USAGE +5 -0
  84. data/lib/generators/daemon_kit/amqp/amqp_generator.rb +24 -0
  85. data/lib/generators/daemon_kit/amqp/templates/config/amqp.yml +28 -0
  86. data/lib/generators/daemon_kit/amqp/templates/config/pre-daemonize/amqp.rb +7 -0
  87. data/lib/generators/daemon_kit/amqp/templates/libexec/%app_name%-daemon.rb +37 -0
  88. data/lib/generators/daemon_kit/app/USAGE +7 -0
  89. data/lib/generators/daemon_kit/app/app_generator.rb +140 -0
  90. data/lib/generators/daemon_kit/app/templates/Gemfile +8 -0
  91. data/lib/generators/daemon_kit/app/templates/README.tt +58 -0
  92. data/lib/generators/daemon_kit/app/templates/Rakefile +6 -0
  93. data/lib/generators/daemon_kit/app/templates/bin/daemon.tt +7 -0
  94. data/lib/generators/daemon_kit/app/templates/config/arguments.rb +12 -0
  95. data/lib/generators/daemon_kit/app/templates/config/boot.rb +70 -0
  96. data/lib/generators/daemon_kit/app/templates/config/environment.rb.tt +26 -0
  97. data/lib/generators/daemon_kit/app/templates/config/environments/development.rb +2 -0
  98. data/lib/generators/daemon_kit/app/templates/config/environments/production.rb +5 -0
  99. data/lib/generators/daemon_kit/app/templates/config/environments/test.rb +2 -0
  100. data/lib/generators/daemon_kit/app/templates/config/post-daemonize/readme +5 -0
  101. data/lib/generators/daemon_kit/app/templates/config/pre-daemonize/readme +12 -0
  102. data/lib/generators/daemon_kit/app/templates/lib/%app_name%.rb +2 -0
  103. data/lib/generators/daemon_kit/app/templates/libexec/%app_name%-daemon.rb +18 -0
  104. data/lib/generators/daemon_kit/app/templates/script/console +3 -0
  105. data/lib/generators/daemon_kit/app/templates/script/destroy +3 -0
  106. data/lib/generators/daemon_kit/app/templates/script/generate +3 -0
  107. data/lib/generators/daemon_kit/capistrano/capistrano_generator.rb +26 -0
  108. data/lib/generators/daemon_kit/capistrano/templates/Capfile +10 -0
  109. data/lib/generators/daemon_kit/capistrano/templates/USAGE +10 -0
  110. data/lib/generators/daemon_kit/capistrano/templates/config/deploy/logrotate.erb +13 -0
  111. data/lib/generators/daemon_kit/capistrano/templates/config/deploy/production.rb.tt +6 -0
  112. data/lib/generators/daemon_kit/capistrano/templates/config/deploy/staging.rb.tt +6 -0
  113. data/lib/generators/daemon_kit/capistrano/templates/config/deploy.rb.tt +67 -0
  114. data/lib/generators/daemon_kit/capistrano/templates/config/environments/staging.rb +0 -0
  115. data/lib/generators/daemon_kit/cron/USAGE +5 -0
  116. data/lib/generators/daemon_kit/cron/cron_generator.rb +24 -0
  117. data/lib/generators/daemon_kit/cron/templates/config/pre-daemonize/cron.rb +11 -0
  118. data/lib/generators/daemon_kit/cron/templates/libexec/%app_name%-daemon.rb +43 -0
  119. data/lib/generators/daemon_kit/cucumber/USAGE +11 -0
  120. data/lib/generators/daemon_kit/cucumber/cucumber_generator.rb +45 -0
  121. data/lib/generators/daemon_kit/cucumber/templates/config/environments/cucumber.rb +2 -0
  122. data/lib/generators/daemon_kit/cucumber/templates/features/step_definitions/.empty_directory +0 -0
  123. data/lib/generators/daemon_kit/cucumber/templates/features/support/env.rb +7 -0
  124. data/lib/generators/daemon_kit/cucumber/templates/script/cucumber +7 -0
  125. data/lib/generators/daemon_kit/cucumber/templates/tasks/cucumber.rake +13 -0
  126. data/lib/generators/daemon_kit/nanite_agent/USAGE +5 -0
  127. data/lib/generators/daemon_kit/nanite_agent/nanite_agent_generator.rb +29 -0
  128. data/lib/generators/daemon_kit/nanite_agent/templates/config/nanite.yml +35 -0
  129. data/lib/generators/daemon_kit/nanite_agent/templates/config/pre-daemonize/nanite_agent.rb +6 -0
  130. data/lib/generators/daemon_kit/nanite_agent/templates/lib/actors/sample.rb +11 -0
  131. data/lib/generators/daemon_kit/nanite_agent/templates/libexec/%app_name%-daemon.rb +31 -0
  132. data/lib/generators/daemon_kit/rspec/USAGE +5 -0
  133. data/lib/generators/daemon_kit/rspec/rspec_generator.rb +20 -0
  134. data/lib/generators/daemon_kit/rspec/templates/spec/%app_name%_spec.rb +11 -0
  135. data/lib/generators/daemon_kit/rspec/templates/spec/spec.opts +1 -0
  136. data/lib/generators/daemon_kit/rspec/templates/spec/spec_helper.rb +23 -0
  137. data/lib/generators/daemon_kit/rspec/templates/tasks/rspec.rake +19 -0
  138. data/lib/generators/daemon_kit/ruote/USAGE +5 -0
  139. data/lib/generators/daemon_kit/ruote/ruote_generator.rb +29 -0
  140. data/lib/generators/daemon_kit/ruote/templates/config/amqp.yml +30 -0
  141. data/lib/generators/daemon_kit/ruote/templates/config/pre-daemonize/ruote.rb +13 -0
  142. data/lib/generators/daemon_kit/ruote/templates/config/ruote.yml +23 -0
  143. data/lib/generators/daemon_kit/ruote/templates/lib/%app_name%.rb +4 -0
  144. data/lib/generators/daemon_kit/ruote/templates/lib/sample.rb +26 -0
  145. data/lib/generators/daemon_kit/ruote/templates/libexec/%app_name%-daemon.rb +33 -0
  146. data/lib/generators/daemon_kit/test_unit/USAGE +5 -0
  147. data/lib/generators/daemon_kit/test_unit/templates/tasks/test_unit.rake +7 -0
  148. data/lib/generators/daemon_kit/test_unit/templates/test/%app_name%_test.rb.tt +9 -0
  149. data/lib/generators/daemon_kit/test_unit/templates/test/test_helper.rb +6 -0
  150. data/lib/generators/daemon_kit/test_unit/test_unit_generator.rb +20 -0
  151. data/lib/generators/daemon_kit/xmpp/templates/config/pre-daemonize/xmpp.rb +6 -0
  152. data/lib/generators/daemon_kit/xmpp/templates/config/xmpp.yml +29 -0
  153. data/lib/generators/daemon_kit/xmpp/templates/libexec/%app_name%-daemon.rb +27 -0
  154. data/lib/generators/daemon_kit/xmpp/xmpp_generator.rb +24 -0
  155. data/script/console +10 -0
  156. data/script/destroy +14 -0
  157. data/script/generate +14 -0
  158. data/script/txt2html +71 -0
  159. data/spec/abstract_logger_spec.rb +126 -0
  160. data/spec/argument_spec.rb +70 -0
  161. data/spec/config_spec.rb +83 -0
  162. data/spec/configurable_spec.rb +56 -0
  163. data/spec/daemon_kit_spec.rb +7 -0
  164. data/spec/error_handlers_spec.rb +23 -0
  165. data/spec/fixtures/env.yml +15 -0
  166. data/spec/fixtures/noenv.yml +4 -0
  167. data/spec/initializer_spec.rb +26 -0
  168. data/spec/spec.opts +1 -0
  169. data/spec/spec_helper.rb +27 -0
  170. data/tasks/cucumber.rake +13 -0
  171. data/tasks/rspec.rake +21 -0
  172. data/tasks/tests.rake +6 -0
  173. data/templates/god/god.erb +69 -0
  174. data/templates/monit/monit.erb +14 -0
  175. data/test/test_amqp_generator.rb +48 -0
  176. data/test/test_cron_generator.rb +45 -0
  177. data/test/test_daemon-kit_generator.rb +84 -0
  178. data/test/test_daemon_kit_config.rb +28 -0
  179. data/test/test_deploy_capistrano_generator.rb +48 -0
  180. data/test/test_generator_helper.rb +29 -0
  181. data/test/test_helper.rb +7 -0
  182. data/test/test_nanite_agent_generator.rb +49 -0
  183. data/test/test_ruote_generator.rb +51 -0
  184. data/test/test_test_unit_generator.rb +46 -0
  185. metadata +325 -0
@@ -0,0 +1,84 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+ class TestDaemonKitGenerator < Test::Unit::TestCase
4
+ include RubiGen::GeneratorTestHelper
5
+
6
+ attr_reader :daemon_name
7
+ def setup
8
+ bare_setup
9
+ @daemon_name = File.basename(File.expand_path(APP_ROOT))
10
+ end
11
+
12
+ def teardown
13
+ bare_teardown
14
+ end
15
+
16
+ # Some generator-related assertions:
17
+ # assert_generated_file(name, &block) # block passed the file contents
18
+ # assert_directory_exists(name)
19
+ # assert_generated_class(name, &block)
20
+ # assert_generated_module(name, &block)
21
+ # assert_generated_test_for(name, &block)
22
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
23
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
24
+ #
25
+ # Other helper methods are:
26
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
27
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
28
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
29
+
30
+ def test_generator_without_options
31
+ run_generator('daemon_kit', [APP_ROOT], sources)
32
+
33
+ assert_generated_file "README"
34
+ assert_generated_file "Rakefile"
35
+ assert_directory_exists "bin"
36
+ assert_generated_file "bin/#{daemon_name}"
37
+ assert_directory_exists "config"
38
+ assert_generated_file "config/arguments.rb"
39
+ assert_generated_file "config/boot.rb"
40
+ assert_generated_file "config/environment.rb"
41
+ assert_generated_file "config/environments/development.rb"
42
+ assert_generated_file "config/environments/test.rb"
43
+ assert_generated_file "config/environments/production.rb"
44
+ assert_directory_exists "config/pre-daemonize"
45
+ assert_generated_file "config/pre-daemonize/readme"
46
+ assert_directory_exists "config/post-daemonize"
47
+ assert_generated_file "config/post-daemonize/readme"
48
+ assert_directory_exists "lib"
49
+ assert_generated_file "lib/#{daemon_name}.rb"
50
+ assert_directory_exists "libexec"
51
+ assert_generated_file "libexec/#{daemon_name}-daemon.rb"
52
+ assert_directory_exists "log"
53
+ assert_directory_exists "script"
54
+ assert_generated_file "script/console"
55
+ assert_generated_file "script/destroy"
56
+ assert_generated_file "script/generate"
57
+ assert_directory_exists "spec"
58
+ assert_directory_exists "tasks"
59
+ assert_directory_exists "vendor"
60
+ assert_directory_exists "tmp"
61
+
62
+ assert !File.exists?("#{APP_ROOT}/Capfile"), 'Capfile generated, but should not be'
63
+ end
64
+
65
+ def test_generator_with_capistrano_deployer
66
+ run_generator('daemon_kit', [APP_ROOT, '-d capistrano'], sources)
67
+
68
+ assert_generated_file "Capfile"
69
+ assert_generated_file "config/deploy.rb"
70
+ end
71
+
72
+ private
73
+ def sources
74
+ [
75
+ RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path)),
76
+ RubiGen::PathSource.new(:app, File.join(File.dirname(__FILE__), "..", "daemon_generators")),
77
+ RubiGen::PathSource.new(:app, File.join(File.dirname(__FILE__), "..", "rubygems_generators"))
78
+ ]
79
+ end
80
+
81
+ def generator_path
82
+ "app_generators"
83
+ end
84
+ end
@@ -0,0 +1,28 @@
1
+ require File.join(File.dirname(__FILE__), "test_helper")
2
+
3
+ class TestDaemonKitConfig < Test::Unit::TestCase
4
+
5
+ def test_initialize_with_env_hash
6
+ data = {
7
+ 'test' => {
8
+ 'foo' => 'bar'
9
+ }
10
+ }
11
+
12
+ config = DaemonKit::Config.new( data )
13
+
14
+ assert_equal config['foo'], 'bar'
15
+ assert_equal config.foo, 'bar'
16
+ end
17
+
18
+ def test_initialize_without_env_hash
19
+ data = {
20
+ 'foo' => 'bar'
21
+ }
22
+
23
+ config = DaemonKit::Config.new( data )
24
+
25
+ assert_equal config['foo'], 'bar'
26
+ assert_equal config.foo, 'bar'
27
+ end
28
+ end
@@ -0,0 +1,48 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+
4
+ class TestDeployCapistranoGenerator < Test::Unit::TestCase
5
+ include RubiGen::GeneratorTestHelper
6
+
7
+ def setup
8
+ bare_setup
9
+ end
10
+
11
+ def teardown
12
+ bare_teardown
13
+ end
14
+
15
+ # Some generator-related assertions:
16
+ # assert_generated_file(name, &block) # block passed the file contents
17
+ # assert_directory_exists(name)
18
+ # assert_generated_class(name, &block)
19
+ # assert_generated_module(name, &block)
20
+ # assert_generated_test_for(name, &block)
21
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
22
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
23
+ #
24
+ # Other helper methods are:
25
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
26
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
27
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
28
+
29
+ def test_generator_without_options
30
+ run_generator('deploy_capistrano', ['myapp'], sources)
31
+ assert_generated_file "Capfile"
32
+ assert_directory_exists "config"
33
+ assert_generated_file "config/deploy.rb"
34
+ assert_directory_exists "config/deploy"
35
+ assert_generated_file "config/deploy/staging.rb"
36
+ assert_generated_file "config/deploy/production.rb"
37
+ end
38
+
39
+ private
40
+ def sources
41
+ [RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path))
42
+ ]
43
+ end
44
+
45
+ def generator_path
46
+ "daemon_generators"
47
+ end
48
+ end
@@ -0,0 +1,29 @@
1
+ begin
2
+ require File.dirname(__FILE__) + '/test_helper'
3
+ rescue LoadError
4
+ require 'test/unit'
5
+ end
6
+ require 'fileutils'
7
+
8
+ # Must set before requiring generator libs.
9
+ TMP_ROOT = File.dirname(__FILE__) + "/tmp" unless defined?(TMP_ROOT)
10
+ PROJECT_NAME = "myproject" unless defined?(PROJECT_NAME)
11
+ app_root = File.join(TMP_ROOT, PROJECT_NAME)
12
+ if defined?(APP_ROOT)
13
+ APP_ROOT.replace(app_root)
14
+ else
15
+ APP_ROOT = app_root
16
+ end
17
+ if defined?(RAILS_ROOT)
18
+ RAILS_ROOT.replace(app_root)
19
+ else
20
+ RAILS_ROOT = app_root
21
+ end
22
+
23
+ begin
24
+ require 'rubigen'
25
+ rescue LoadError
26
+ require 'rubygems'
27
+ require 'rubigen'
28
+ end
29
+ require 'rubigen/helpers/generator_test_helper'
@@ -0,0 +1,7 @@
1
+ require 'test/unit'
2
+
3
+ DAEMON_ENV = "test"
4
+
5
+ require File.dirname(__FILE__) + '/../lib/daemon_kit'
6
+
7
+
@@ -0,0 +1,49 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+
4
+ class TestNaniteAgentGenerator < Test::Unit::TestCase
5
+ include RubiGen::GeneratorTestHelper
6
+
7
+ def setup
8
+ bare_setup
9
+ end
10
+
11
+ def teardown
12
+ bare_teardown
13
+ end
14
+
15
+ # Some generator-related assertions:
16
+ # assert_generated_file(name, &block) # block passed the file contents
17
+ # assert_directory_exists(name)
18
+ # assert_generated_class(name, &block)
19
+ # assert_generated_module(name, &block)
20
+ # assert_generated_test_for(name, &block)
21
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
22
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
23
+ #
24
+ # Other helper methods are:
25
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
26
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
27
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
28
+
29
+ def test_generator_without_options
30
+ name = "myapp"
31
+ run_generator('nanite_agent', [name], sources)
32
+ assert_directory_exists "lib/actors"
33
+ assert_generated_file "lib/actors/sample.rb"
34
+ assert_directory_exists "config"
35
+ assert_generated_file "config/nanite.yml"
36
+ assert_directory_exists "config/initializers"
37
+ assert_generated_file "config/initializers/myapp.rb"
38
+ end
39
+
40
+ private
41
+ def sources
42
+ [RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path))
43
+ ]
44
+ end
45
+
46
+ def generator_path
47
+ "daemon_generators"
48
+ end
49
+ end
@@ -0,0 +1,51 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+
4
+ class TestRuoteGenerator < Test::Unit::TestCase
5
+ include RubiGen::GeneratorTestHelper
6
+
7
+ def setup
8
+ bare_setup
9
+ end
10
+
11
+ def teardown
12
+ bare_teardown
13
+ end
14
+
15
+ # Some generator-related assertions:
16
+ # assert_generated_file(name, &block) # block passed the file contents
17
+ # assert_directory_exists(name)
18
+ # assert_generated_class(name, &block)
19
+ # assert_generated_module(name, &block)
20
+ # assert_generated_test_for(name, &block)
21
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
22
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
23
+ #
24
+ # Other helper methods are:
25
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
26
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
27
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
28
+
29
+ def test_generator_without_options
30
+ name = "myapp"
31
+ run_generator('ruote', [name], sources)
32
+ assert_directory_exists "config"
33
+ assert_generated_file "config/amqp.yml"
34
+ assert_generated_file "config/ruote.yml"
35
+ assert_directory_exists "config/initializers"
36
+ assert_generated_file "config/initializers/myapp.rb"
37
+
38
+ assert_generated_file "lib/myapp.rb"
39
+ assert_generated_file "lib/sample.rb"
40
+ end
41
+
42
+ private
43
+ def sources
44
+ [RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path))
45
+ ]
46
+ end
47
+
48
+ def generator_path
49
+ "daemon_generators"
50
+ end
51
+ end
@@ -0,0 +1,46 @@
1
+ require File.join(File.dirname(__FILE__), "test_generator_helper.rb")
2
+
3
+
4
+ class TestTestUnitGenerator < Test::Unit::TestCase
5
+ include RubiGen::GeneratorTestHelper
6
+
7
+ def setup
8
+ bare_setup
9
+ end
10
+
11
+ def teardown
12
+ bare_teardown
13
+ end
14
+
15
+ # Some generator-related assertions:
16
+ # assert_generated_file(name, &block) # block passed the file contents
17
+ # assert_directory_exists(name)
18
+ # assert_generated_class(name, &block)
19
+ # assert_generated_module(name, &block)
20
+ # assert_generated_test_for(name, &block)
21
+ # The assert_generated_(class|module|test_for) &block is passed the body of the class/module within the file
22
+ # assert_has_method(body, *methods) # check that the body has a list of methods (methods with parentheses not supported yet)
23
+ #
24
+ # Other helper methods are:
25
+ # app_root_files - put this in teardown to show files generated by the test method (e.g. p app_root_files)
26
+ # bare_setup - place this in setup method to create the APP_ROOT folder for each test
27
+ # bare_teardown - place this in teardown method to destroy the TMP_ROOT or APP_ROOT folder after each test
28
+
29
+ def test_generator_without_options
30
+ name = "myapp"
31
+ run_generator('test_unit', [name], sources)
32
+ assert_directory_exists "test"
33
+ assert_generated_file "test/test_helper.rb"
34
+ assert_generated_file "test/myproject_test.rb"
35
+ end
36
+
37
+ private
38
+ def sources
39
+ [RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", generator_path))
40
+ ]
41
+ end
42
+
43
+ def generator_path
44
+ "daemon_generators"
45
+ end
46
+ end
metadata ADDED
@@ -0,0 +1,325 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: textgoeshere-daemon-kit
3
+ version: !ruby/object:Gem::Version
4
+ hash: 1765000962
5
+ prerelease: true
6
+ segments:
7
+ - 0
8
+ - 1
9
+ - 8rc3
10
+ version: 0.1.8rc3
11
+ platform: ruby
12
+ authors:
13
+ - kenneth.kalmer@gmail.com
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2010-06-16 00:00:00 +02:00
19
+ default_executable: daemon-kit
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: eventmachine
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 59
30
+ segments:
31
+ - 0
32
+ - 12
33
+ - 10
34
+ version: 0.12.10
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: rspec
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 3
46
+ segments:
47
+ - 0
48
+ version: "0"
49
+ type: :development
50
+ version_requirements: *id002
51
+ - !ruby/object:Gem::Dependency
52
+ name: cucumber
53
+ prerelease: false
54
+ requirement: &id003 !ruby/object:Gem::Requirement
55
+ none: false
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ hash: 3
60
+ segments:
61
+ - 0
62
+ version: "0"
63
+ type: :development
64
+ version_requirements: *id003
65
+ description: daemon-kit aims to simplify creating Ruby daemons by providing a sound application skeleton (through a generator), task specific generators (jabber bot, etc) and robust environment management code.
66
+ email: kenneth.kalmer@gmail.com
67
+ executables:
68
+ - daemon-kit
69
+ extensions: []
70
+
71
+ extra_rdoc_files:
72
+ - Configuration.txt
73
+ - Deployment.txt
74
+ - History.txt
75
+ - Logging.txt
76
+ - PostInstall.txt
77
+ - README.rdoc
78
+ - RuoteParticipants.txt
79
+ - TODO.txt
80
+ files:
81
+ - .gitignore
82
+ - Configuration.txt
83
+ - Deployment.txt
84
+ - History.txt
85
+ - Logging.txt
86
+ - PostInstall.txt
87
+ - README.rdoc
88
+ - Rakefile
89
+ - RuoteParticipants.txt
90
+ - TODO.txt
91
+ - bin/daemon-kit
92
+ - config/website.yml
93
+ - daemon-kit.gemspec
94
+ - lib/daemon_kit.rb
95
+ - lib/daemon_kit/abstract_logger.rb
96
+ - lib/daemon_kit/amqp.rb
97
+ - lib/daemon_kit/application.rb
98
+ - lib/daemon_kit/arguments.rb
99
+ - lib/daemon_kit/commands/console.rb
100
+ - lib/daemon_kit/commands/destroy.rb
101
+ - lib/daemon_kit/commands/generate.rb
102
+ - lib/daemon_kit/config.rb
103
+ - lib/daemon_kit/console_daemon.rb
104
+ - lib/daemon_kit/core_ext.rb
105
+ - lib/daemon_kit/core_ext/configurable.rb
106
+ - lib/daemon_kit/core_ext/string.rb
107
+ - lib/daemon_kit/cron.rb
108
+ - lib/daemon_kit/cucumber/world.rb
109
+ - lib/daemon_kit/deployment/capistrano.rb
110
+ - lib/daemon_kit/em.rb
111
+ - lib/daemon_kit/error_handlers/base.rb
112
+ - lib/daemon_kit/error_handlers/hoptoad.rb
113
+ - lib/daemon_kit/exceptions.rb
114
+ - lib/daemon_kit/generators.rb
115
+ - lib/daemon_kit/generators/base.rb
116
+ - lib/daemon_kit/initializer.rb
117
+ - lib/daemon_kit/jabber.rb
118
+ - lib/daemon_kit/nanite.rb
119
+ - lib/daemon_kit/nanite/agent.rb
120
+ - lib/daemon_kit/pid_file.rb
121
+ - lib/daemon_kit/ruote_participants.rb
122
+ - lib/daemon_kit/ruote_pseudo_participant.rb
123
+ - lib/daemon_kit/ruote_workitem.rb
124
+ - lib/daemon_kit/safety.rb
125
+ - lib/daemon_kit/tasks.rb
126
+ - lib/daemon_kit/tasks/environment.rake
127
+ - lib/daemon_kit/tasks/framework.rake
128
+ - lib/daemon_kit/tasks/god.rake
129
+ - lib/daemon_kit/tasks/log.rake
130
+ - lib/daemon_kit/tasks/monit.rake
131
+ - lib/daemon_kit/vendor/thor-0.13.6/CHANGELOG.rdoc
132
+ - lib/daemon_kit/vendor/thor-0.13.6/LICENSE
133
+ - lib/daemon_kit/vendor/thor-0.13.6/README.rdoc
134
+ - lib/daemon_kit/vendor/thor-0.13.6/Thorfile
135
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor.rb
136
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions.rb
137
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/create_file.rb
138
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/directory.rb
139
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/empty_directory.rb
140
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/file_manipulation.rb
141
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/actions/inject_into_file.rb
142
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/base.rb
143
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/file_binary_read.rb
144
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/hash_with_indifferent_access.rb
145
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/core_ext/ordered_hash.rb
146
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/error.rb
147
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/group.rb
148
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/invocation.rb
149
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser.rb
150
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/argument.rb
151
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/arguments.rb
152
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/option.rb
153
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/parser/options.rb
154
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/rake_compat.rb
155
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/runner.rb
156
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell.rb
157
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell/basic.rb
158
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/shell/color.rb
159
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/task.rb
160
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/util.rb
161
+ - lib/daemon_kit/vendor/thor-0.13.6/lib/thor/version.rb
162
+ - lib/daemon_kit/xmpp.rb
163
+ - lib/generators/daemon_kit/amqp/USAGE
164
+ - lib/generators/daemon_kit/amqp/amqp_generator.rb
165
+ - lib/generators/daemon_kit/amqp/templates/config/amqp.yml
166
+ - lib/generators/daemon_kit/amqp/templates/config/pre-daemonize/amqp.rb
167
+ - lib/generators/daemon_kit/amqp/templates/libexec/%app_name%-daemon.rb
168
+ - lib/generators/daemon_kit/app/USAGE
169
+ - lib/generators/daemon_kit/app/app_generator.rb
170
+ - lib/generators/daemon_kit/app/templates/Gemfile
171
+ - lib/generators/daemon_kit/app/templates/README.tt
172
+ - lib/generators/daemon_kit/app/templates/Rakefile
173
+ - lib/generators/daemon_kit/app/templates/bin/daemon.tt
174
+ - lib/generators/daemon_kit/app/templates/config/arguments.rb
175
+ - lib/generators/daemon_kit/app/templates/config/boot.rb
176
+ - lib/generators/daemon_kit/app/templates/config/environment.rb.tt
177
+ - lib/generators/daemon_kit/app/templates/config/environments/development.rb
178
+ - lib/generators/daemon_kit/app/templates/config/environments/production.rb
179
+ - lib/generators/daemon_kit/app/templates/config/environments/test.rb
180
+ - lib/generators/daemon_kit/app/templates/config/post-daemonize/readme
181
+ - lib/generators/daemon_kit/app/templates/config/pre-daemonize/readme
182
+ - lib/generators/daemon_kit/app/templates/lib/%app_name%.rb
183
+ - lib/generators/daemon_kit/app/templates/libexec/%app_name%-daemon.rb
184
+ - lib/generators/daemon_kit/app/templates/script/console
185
+ - lib/generators/daemon_kit/app/templates/script/destroy
186
+ - lib/generators/daemon_kit/app/templates/script/generate
187
+ - lib/generators/daemon_kit/capistrano/capistrano_generator.rb
188
+ - lib/generators/daemon_kit/capistrano/templates/Capfile
189
+ - lib/generators/daemon_kit/capistrano/templates/USAGE
190
+ - lib/generators/daemon_kit/capistrano/templates/config/deploy.rb.tt
191
+ - lib/generators/daemon_kit/capistrano/templates/config/deploy/logrotate.erb
192
+ - lib/generators/daemon_kit/capistrano/templates/config/deploy/production.rb.tt
193
+ - lib/generators/daemon_kit/capistrano/templates/config/deploy/staging.rb.tt
194
+ - lib/generators/daemon_kit/capistrano/templates/config/environments/staging.rb
195
+ - lib/generators/daemon_kit/cron/USAGE
196
+ - lib/generators/daemon_kit/cron/cron_generator.rb
197
+ - lib/generators/daemon_kit/cron/templates/config/pre-daemonize/cron.rb
198
+ - lib/generators/daemon_kit/cron/templates/libexec/%app_name%-daemon.rb
199
+ - lib/generators/daemon_kit/cucumber/USAGE
200
+ - lib/generators/daemon_kit/cucumber/cucumber_generator.rb
201
+ - lib/generators/daemon_kit/cucumber/templates/config/environments/cucumber.rb
202
+ - lib/generators/daemon_kit/cucumber/templates/features/step_definitions/.empty_directory
203
+ - lib/generators/daemon_kit/cucumber/templates/features/support/env.rb
204
+ - lib/generators/daemon_kit/cucumber/templates/script/cucumber
205
+ - lib/generators/daemon_kit/cucumber/templates/tasks/cucumber.rake
206
+ - lib/generators/daemon_kit/nanite_agent/USAGE
207
+ - lib/generators/daemon_kit/nanite_agent/nanite_agent_generator.rb
208
+ - lib/generators/daemon_kit/nanite_agent/templates/config/nanite.yml
209
+ - lib/generators/daemon_kit/nanite_agent/templates/config/pre-daemonize/nanite_agent.rb
210
+ - lib/generators/daemon_kit/nanite_agent/templates/lib/actors/sample.rb
211
+ - lib/generators/daemon_kit/nanite_agent/templates/libexec/%app_name%-daemon.rb
212
+ - lib/generators/daemon_kit/rspec/USAGE
213
+ - lib/generators/daemon_kit/rspec/rspec_generator.rb
214
+ - lib/generators/daemon_kit/rspec/templates/spec/%app_name%_spec.rb
215
+ - lib/generators/daemon_kit/rspec/templates/spec/spec.opts
216
+ - lib/generators/daemon_kit/rspec/templates/spec/spec_helper.rb
217
+ - lib/generators/daemon_kit/rspec/templates/tasks/rspec.rake
218
+ - lib/generators/daemon_kit/ruote/USAGE
219
+ - lib/generators/daemon_kit/ruote/ruote_generator.rb
220
+ - lib/generators/daemon_kit/ruote/templates/config/amqp.yml
221
+ - lib/generators/daemon_kit/ruote/templates/config/pre-daemonize/ruote.rb
222
+ - lib/generators/daemon_kit/ruote/templates/config/ruote.yml
223
+ - lib/generators/daemon_kit/ruote/templates/lib/%app_name%.rb
224
+ - lib/generators/daemon_kit/ruote/templates/lib/sample.rb
225
+ - lib/generators/daemon_kit/ruote/templates/libexec/%app_name%-daemon.rb
226
+ - lib/generators/daemon_kit/test_unit/USAGE
227
+ - lib/generators/daemon_kit/test_unit/templates/tasks/test_unit.rake
228
+ - lib/generators/daemon_kit/test_unit/templates/test/%app_name%_test.rb.tt
229
+ - lib/generators/daemon_kit/test_unit/templates/test/test_helper.rb
230
+ - lib/generators/daemon_kit/test_unit/test_unit_generator.rb
231
+ - lib/generators/daemon_kit/xmpp/templates/config/pre-daemonize/xmpp.rb
232
+ - lib/generators/daemon_kit/xmpp/templates/config/xmpp.yml
233
+ - lib/generators/daemon_kit/xmpp/templates/libexec/%app_name%-daemon.rb
234
+ - lib/generators/daemon_kit/xmpp/xmpp_generator.rb
235
+ - script/console
236
+ - script/destroy
237
+ - script/generate
238
+ - script/txt2html
239
+ - spec/abstract_logger_spec.rb
240
+ - spec/argument_spec.rb
241
+ - spec/config_spec.rb
242
+ - spec/configurable_spec.rb
243
+ - spec/daemon_kit_spec.rb
244
+ - spec/error_handlers_spec.rb
245
+ - spec/fixtures/env.yml
246
+ - spec/fixtures/noenv.yml
247
+ - spec/initializer_spec.rb
248
+ - spec/spec.opts
249
+ - spec/spec_helper.rb
250
+ - tasks/cucumber.rake
251
+ - tasks/rspec.rake
252
+ - tasks/tests.rake
253
+ - templates/god/god.erb
254
+ - templates/monit/monit.erb
255
+ - test/test_amqp_generator.rb
256
+ - test/test_cron_generator.rb
257
+ - test/test_daemon-kit_generator.rb
258
+ - test/test_daemon_kit_config.rb
259
+ - test/test_deploy_capistrano_generator.rb
260
+ - test/test_generator_helper.rb
261
+ - test/test_helper.rb
262
+ - test/test_nanite_agent_generator.rb
263
+ - test/test_ruote_generator.rb
264
+ - test/test_test_unit_generator.rb
265
+ has_rdoc: true
266
+ homepage: http://github.com/kennethkalmer/daemon-kit
267
+ licenses: []
268
+
269
+ post_install_message: |+
270
+
271
+ For more information on daemon-kit, see http://kit.rubyforge.org/daemon-kit
272
+
273
+ To get started quickly run 'daemon-kit' without any arguments
274
+
275
+
276
+ rdoc_options:
277
+ - --charset=UTF-8
278
+ require_paths:
279
+ - lib
280
+ required_ruby_version: !ruby/object:Gem::Requirement
281
+ none: false
282
+ requirements:
283
+ - - ">="
284
+ - !ruby/object:Gem::Version
285
+ hash: 3
286
+ segments:
287
+ - 0
288
+ version: "0"
289
+ required_rubygems_version: !ruby/object:Gem::Requirement
290
+ none: false
291
+ requirements:
292
+ - - ">"
293
+ - !ruby/object:Gem::Version
294
+ hash: 25
295
+ segments:
296
+ - 1
297
+ - 3
298
+ - 1
299
+ version: 1.3.1
300
+ requirements: []
301
+
302
+ rubyforge_project:
303
+ rubygems_version: 1.3.7
304
+ signing_key:
305
+ specification_version: 3
306
+ summary: Build of opinionated framework for Ruby daemons
307
+ test_files:
308
+ - spec/config_spec.rb
309
+ - spec/configurable_spec.rb
310
+ - spec/error_handlers_spec.rb
311
+ - spec/abstract_logger_spec.rb
312
+ - spec/spec_helper.rb
313
+ - spec/initializer_spec.rb
314
+ - spec/argument_spec.rb
315
+ - spec/daemon_kit_spec.rb
316
+ - test/test_nanite_agent_generator.rb
317
+ - test/test_deploy_capistrano_generator.rb
318
+ - test/test_ruote_generator.rb
319
+ - test/test_test_unit_generator.rb
320
+ - test/test_daemon-kit_generator.rb
321
+ - test/test_generator_helper.rb
322
+ - test/test_amqp_generator.rb
323
+ - test/test_helper.rb
324
+ - test/test_cron_generator.rb
325
+ - test/test_daemon_kit_config.rb