redcar 0.3.1dev → 0.3.2dev

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 (316) hide show
  1. data/CHANGES +34 -1
  2. data/README.md +2 -1
  3. data/ROADMAP.md +13 -45
  4. data/Rakefile +15 -14
  5. data/bin/redcar +4 -1
  6. data/lib/plugin_manager/README.md +61 -0
  7. data/lib/plugin_manager/Rakefile +55 -0
  8. data/lib/plugin_manager/bin/plugin_manager +4 -0
  9. data/lib/plugin_manager/lib/plugin_manager.rb +107 -0
  10. data/lib/plugin_manager/lib/plugin_manager/definition_builder.rb +37 -0
  11. data/lib/plugin_manager/lib/plugin_manager/plugin.rb +9 -0
  12. data/lib/plugin_manager/lib/plugin_manager/plugin_definition.rb +50 -0
  13. data/lib/plugin_manager/plugin_manager.gemspec +33 -0
  14. data/lib/plugin_manager/spec/fixtures/error_in_definition/core/plugin.rb +2 -0
  15. data/lib/plugin_manager/spec/fixtures/error_in_plugin/core/core.rb +4 -0
  16. data/lib/plugin_manager/spec/fixtures/error_in_plugin/core/plugin.rb +7 -0
  17. data/lib/plugin_manager/spec/fixtures/example/core/core.rb +20 -0
  18. data/lib/plugin_manager/spec/fixtures/example/core/plugin.rb +7 -0
  19. data/lib/plugin_manager/spec/fixtures/example/debug/debug.rb +6 -0
  20. data/lib/plugin_manager/spec/fixtures/example/debug/plugin.rb +8 -0
  21. data/lib/plugin_manager/spec/fixtures/example/extras/extras.rb +6 -0
  22. data/lib/plugin_manager/spec/fixtures/example/extras/plugin.rb +8 -0
  23. data/lib/plugin_manager/spec/fixtures/two_versions1/core/core.rb +20 -0
  24. data/lib/plugin_manager/spec/fixtures/two_versions1/core/plugin.rb +7 -0
  25. data/lib/plugin_manager/spec/fixtures/two_versions1/core2/core.rb +20 -0
  26. data/lib/plugin_manager/spec/fixtures/two_versions1/core2/plugin.rb +7 -0
  27. data/lib/plugin_manager/spec/fixtures/two_versions2/core/core.rb +20 -0
  28. data/lib/plugin_manager/spec/fixtures/two_versions2/core/plugin.rb +7 -0
  29. data/lib/plugin_manager/spec/fixtures/two_versions2/core2/core.rb +20 -0
  30. data/lib/plugin_manager/spec/fixtures/two_versions2/core2/plugin.rb +8 -0
  31. data/lib/plugin_manager/spec/fixtures/unmet_dependencies1/core/core.rb +10 -0
  32. data/lib/plugin_manager/spec/fixtures/unmet_dependencies1/core/plugin.rb +7 -0
  33. data/lib/plugin_manager/spec/fixtures/unmet_dependencies1/debug/debug.rb +6 -0
  34. data/lib/plugin_manager/spec/fixtures/unmet_dependencies1/debug/plugin.rb +8 -0
  35. data/lib/plugin_manager/spec/fixtures/unmet_dependencies2/core/core.rb +10 -0
  36. data/lib/plugin_manager/spec/fixtures/unmet_dependencies2/core/plugin.rb +7 -0
  37. data/lib/plugin_manager/spec/fixtures/unmet_dependencies2/debug/debug.rb +6 -0
  38. data/lib/plugin_manager/spec/fixtures/unmet_dependencies2/debug/plugin.rb +8 -0
  39. data/lib/plugin_manager/spec/plugin_manager_spec.rb +208 -0
  40. data/lib/plugin_manager/spec/spec_helper.rb +3 -0
  41. data/lib/redcar.rb +8 -3
  42. data/lib/redcar/boot.rb +59 -56
  43. data/lib/redcar/installer.rb +1 -1
  44. data/lib/redcar/instance_exec.rb +25 -0
  45. data/lib/redcar/runner.rb +5 -1
  46. data/lib/redcar/usage.rb +5 -1
  47. data/plugins/application/icons/close.png +0 -0
  48. data/plugins/application/lib/application.rb +61 -28
  49. data/plugins/application/lib/application/clipboard.rb +71 -0
  50. data/plugins/application/lib/application/dialog.rb +63 -0
  51. data/plugins/application/lib/application/menu.rb +32 -1
  52. data/plugins/application/lib/application/menu/builder.rb +10 -4
  53. data/plugins/application/lib/application/menu/item.rb +16 -3
  54. data/plugins/application/lib/application/notebook.rb +5 -0
  55. data/plugins/application/lib/application/speedbar.rb +73 -0
  56. data/plugins/application/lib/application/window.rb +25 -0
  57. data/plugins/application/plugin.rb +8 -0
  58. data/plugins/application/spec/application/clipboard_spec.rb +36 -0
  59. data/plugins/application/spec/application/menu_spec.rb +73 -1
  60. data/plugins/application/spec/application/speedbar_spec.rb +46 -0
  61. data/plugins/application/spec/spec_helper.rb +1 -1
  62. data/plugins/application_swt/lib/application_swt.rb +18 -11
  63. data/plugins/application_swt/lib/application_swt/clipboard.rb +42 -0
  64. data/plugins/application_swt/lib/application_swt/dialog_adapter.rb +68 -0
  65. data/plugins/application_swt/lib/application_swt/dialogs/filter_list_dialog_controller.rb +1 -1
  66. data/plugins/application_swt/lib/application_swt/html_tab.rb +32 -0
  67. data/plugins/application_swt/lib/application_swt/menu.rb +57 -21
  68. data/plugins/application_swt/lib/application_swt/menu/binding_translator.rb +39 -2
  69. data/plugins/application_swt/lib/application_swt/notebook.rb +5 -0
  70. data/plugins/application_swt/lib/application_swt/speedbar.rb +187 -0
  71. data/plugins/application_swt/lib/application_swt/swt_wrapper.rb +24 -1
  72. data/plugins/application_swt/lib/application_swt/window.rb +33 -3
  73. data/plugins/application_swt/plugin.rb +8 -0
  74. data/plugins/application_swt/spec/spec_helper.rb +1 -1
  75. data/plugins/auto_completer/features/auto_complete.feature +65 -0
  76. data/plugins/auto_completer/features/step_definitions/auto_complete_steps.rb +4 -0
  77. data/plugins/auto_completer/features/support/env.rb +4 -0
  78. data/plugins/auto_completer/lib/auto_completer.rb +99 -0
  79. data/plugins/auto_completer/lib/auto_completer/document_controller.rb +52 -0
  80. data/plugins/auto_completer/lib/auto_completer/word_iterator.rb +48 -0
  81. data/plugins/auto_completer/lib/auto_completer/word_list.rb +40 -0
  82. data/plugins/auto_completer/plugin.rb +10 -0
  83. data/plugins/auto_indenter/lib/auto_indenter.rb +1 -1
  84. data/plugins/auto_indenter/lib/auto_indenter/document_controller.rb +1 -1
  85. data/plugins/auto_indenter/plugin.rb +8 -0
  86. data/plugins/core/lib/core.rb +6 -30
  87. data/plugins/core/lib/core/gui.rb +7 -2
  88. data/plugins/core/lib/core/logger.rb +7 -4
  89. data/plugins/core/lib/core/plugin/storage.rb +15 -5
  90. data/plugins/core/plugin.rb +7 -0
  91. data/plugins/core/spec/core/storage_spec.rb +0 -9
  92. data/plugins/edit_view/features/cut_and_paste.feature +45 -0
  93. data/plugins/edit_view/features/step_definitions/editing_steps.rb +22 -0
  94. data/plugins/edit_view/features/step_definitions/key_steps.rb +1 -1
  95. data/plugins/edit_view/features/step_definitions/notebook_steps.rb +1 -1
  96. data/plugins/edit_view/features/step_definitions/tab_steps.rb +2 -0
  97. data/plugins/edit_view/features/step_definitions/window_steps.rb +1 -1
  98. data/plugins/edit_view/features/support/env.rb +2 -2
  99. data/plugins/edit_view/lib/edit_view.rb +24 -13
  100. data/plugins/edit_view/lib/edit_view/document.rb +233 -15
  101. data/plugins/edit_view/lib/edit_view/edit_tab.rb +2 -2
  102. data/plugins/edit_view/plugin.rb +9 -0
  103. data/plugins/edit_view/spec/spec_helper.rb +1 -1
  104. data/plugins/edit_view_swt/lib/edit_view_swt.rb +37 -8
  105. data/plugins/edit_view_swt/lib/edit_view_swt/document.rb +59 -24
  106. data/plugins/edit_view_swt/lib/edit_view_swt/word_movement.rb +66 -0
  107. data/plugins/edit_view_swt/plugin.rb +9 -0
  108. data/plugins/edit_view_swt/spec/edit_view_swt/word_movement_spec.rb +29 -0
  109. data/plugins/edit_view_swt/spec/spec_helper.rb +6 -0
  110. data/plugins/html_view/assets/blueprint/ie.css +35 -0
  111. data/plugins/html_view/assets/blueprint/print.css +29 -0
  112. data/plugins/html_view/assets/blueprint/screen.css +257 -0
  113. data/plugins/html_view/assets/blueprint/src/forms.css +65 -0
  114. data/plugins/html_view/assets/blueprint/src/grid.css +281 -0
  115. data/plugins/html_view/assets/blueprint/src/grid.png +0 -0
  116. data/plugins/html_view/assets/blueprint/src/ie.css +76 -0
  117. data/plugins/html_view/assets/blueprint/src/print.css +85 -0
  118. data/plugins/html_view/assets/blueprint/src/reset.css +38 -0
  119. data/plugins/html_view/assets/blueprint/src/typography.css +106 -0
  120. data/plugins/html_view/assets/jquery-1.4.min.js +151 -0
  121. data/plugins/html_view/assets/redcar.css +12 -0
  122. data/plugins/html_view/lib/html_controller.rb +5 -0
  123. data/plugins/html_view/lib/html_view.rb +47 -0
  124. data/plugins/html_view/lib/html_view/html_tab.rb +16 -0
  125. data/plugins/html_view/plugin.rb +12 -0
  126. data/plugins/my_plugin/lib/my_plugin.rb +55 -0
  127. data/plugins/my_plugin/plugin.rb +8 -0
  128. data/plugins/plugin_manager_ui/lib/plugin_manager_ui.rb +62 -0
  129. data/plugins/plugin_manager_ui/plugin.rb +12 -0
  130. data/plugins/plugin_manager_ui/views/index.html.erb +31 -0
  131. data/plugins/project/lib/project.rb +27 -13
  132. data/plugins/project/lib/project/find_file_dialog.rb +25 -19
  133. data/plugins/project/plugin.rb +8 -0
  134. data/plugins/project/spec/spec_helper.rb +1 -1
  135. data/plugins/redcar/plugin.rb +13 -0
  136. data/plugins/redcar/redcar.rb +249 -8
  137. data/plugins/repl/lib/repl.rb +22 -14
  138. data/plugins/repl/plugin.rb +8 -0
  139. data/plugins/repl/spec/spec_helper.rb +1 -1
  140. data/plugins/tree/plugin.rb +9 -0
  141. data/plugins/tree/spec/spec_helper.rb +1 -1
  142. data/plugins/tree_view_swt/plugin.rb +9 -0
  143. data/textmate/Bundles/Apache.tmbundle/Syntaxes/Apache.plist +544 -0
  144. data/textmate/Bundles/Apache.tmbundle/Syntaxes/mod_perl.tmLanguage +120 -0
  145. data/textmate/Bundles/Blogging.tmbundle/Syntaxes/Blog___HTML__.plist +88 -0
  146. data/textmate/Bundles/Blogging.tmbundle/Syntaxes/Blog___Markdown__.plist +89 -0
  147. data/textmate/Bundles/Blogging.tmbundle/Syntaxes/Blog___Text__.plist +74 -0
  148. data/textmate/Bundles/Blogging.tmbundle/Syntaxes/Blog___Textile__.plist +74 -0
  149. data/textmate/Bundles/Bundle Development.tmbundle/Syntaxes/LanguageGrammar.tmLanguage +1829 -0
  150. data/textmate/Bundles/C Sharp.tmbundle/Syntaxes/Build.tmLanguage +142 -0
  151. data/textmate/Bundles/C Sharp.tmbundle/Syntaxes/C__.tmLanguage +524 -0
  152. data/textmate/Bundles/C++ Qt.tmbundle/Syntaxes/Qt_C____.tmLanguage +62 -0
  153. data/textmate/Bundles/C++ Qt.tmbundle/Syntaxes/qmake_Project.tmLanguage +308 -0
  154. data/textmate/Bundles/C.tmbundle/Syntaxes/C.plist +90 -48
  155. data/textmate/Bundles/Clojure.tmbundle/Syntaxes/Clojure.tmLanguage +427 -0
  156. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/Cucumber_Plain_Text_Feature.tmLanguage +106 -13
  157. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/Cucumber_Steps.tmLanguage +177 -2
  158. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/plaintext_template.erb +109 -17
  159. data/textmate/Bundles/D.tmbundle/Syntaxes/D.tmLanguage +908 -0
  160. data/textmate/Bundles/Diff.tmbundle/Syntaxes/Diff.plist +229 -0
  161. data/textmate/Bundles/DokuWiki.tmbundle/Syntaxes/DokuWiki.tmLanguage +649 -0
  162. data/textmate/Bundles/F-Script.tmbundle/Syntaxes/F__Script.plist +219 -0
  163. data/textmate/Bundles/Haskell.tmbundle/Syntaxes/Haskell.plist +646 -0
  164. data/textmate/Bundles/Haskell.tmbundle/Syntaxes/Literate_Haskell.plist +90 -0
  165. data/textmate/Bundles/Io.tmbundle/Syntaxes/Io.plist +225 -0
  166. data/textmate/Bundles/JSON.tmbundle/Syntaxes/JSON.tmLanguage +285 -0
  167. data/textmate/Bundles/JavaScript Prototype & Script_aculo_us.tmbundle/Syntaxes/JavaScript____Prototype.tmLanguage +193 -0
  168. data/textmate/Bundles/JavaScript Prototype & Script_aculo_us.tmbundle/Syntaxes/JavaScript____Prototype_Bracketed.tmLanguage +394 -0
  169. data/textmate/Bundles/JavaScript jQuery.tmbundle/Syntaxes/jQuery___JavaScript__.tmLanguage +440 -0
  170. data/textmate/Bundles/JavaScript.tmbundle/Syntaxes/JavaScript.plist +712 -0
  171. data/textmate/Bundles/Latex.tmbundle/Syntaxes/Bibtex.plist +406 -0
  172. data/textmate/Bundles/Latex.tmbundle/Syntaxes/LaTeX.plist +1601 -0
  173. data/textmate/Bundles/Latex.tmbundle/Syntaxes/LaTeX_Beamer.plist +106 -0
  174. data/textmate/Bundles/Latex.tmbundle/Syntaxes/LaTeX_Log.plist +141 -0
  175. data/textmate/Bundles/Latex.tmbundle/Syntaxes/LaTeX_Memoir.tmLanguage +165 -0
  176. data/textmate/Bundles/Latex.tmbundle/Syntaxes/TeX.plist +246 -0
  177. data/textmate/Bundles/Latex.tmbundle/Syntaxes/TeX_Math.plist +132 -0
  178. data/textmate/Bundles/Lisp.tmbundle/Syntaxes/Lisp.plist +160 -0
  179. data/textmate/Bundles/Makefile.tmbundle/Syntaxes/Makefile.plist +103 -0
  180. data/textmate/Bundles/Markdown.tmbundle/Syntaxes/Markdown.plist +1192 -0
  181. data/textmate/Bundles/Markdown.tmbundle/Syntaxes/MultiMarkdown.tmLanguage +80 -0
  182. data/textmate/Bundles/PHP.tmbundle/Syntaxes/PHP.plist +3481 -0
  183. data/textmate/Bundles/Perl HTML-Template.tmbundle/Syntaxes/Perl_HTML__Template.tmLanguage +217 -0
  184. data/textmate/Bundles/Perl Template Toolkit.tmbundle/Syntaxes/HTML___Template_Toolkit__.tmLanguage +339 -0
  185. data/textmate/Bundles/Postscript.tmbundle/Syntaxes/Postscript.tmLanguage +321 -0
  186. data/textmate/Bundles/Processing.tmbundle/Syntaxes/Processing.plist +296 -0
  187. data/textmate/Bundles/Property List.tmbundle/Syntaxes/Property_List.tmLanguage +1650 -0
  188. data/textmate/Bundles/Python Django Templates.tmbundle/Syntaxes/HTML___Django__.tmLanguage +104 -0
  189. data/textmate/Bundles/Python Django.tmbundle/Syntaxes/Python_Django.tmLanguage +57 -0
  190. data/textmate/Bundles/Python.tmbundle/Syntaxes/Python.tmLanguage +3016 -0
  191. data/textmate/Bundles/Python.tmbundle/Syntaxes/Regular_Expressions___Python__.tmLanguage +299 -0
  192. data/textmate/Bundles/Rez.tmbundle/Syntaxes/Rez.plist +219 -0
  193. data/textmate/Bundles/Ruby Haml.tmbundle/Syntaxes/Ruby_Haml.tmLanguage +403 -0
  194. data/textmate/Bundles/Ruby RSpec.tmbundle/Syntaxes/RSpec.tmLanguage +142 -0
  195. data/textmate/Bundles/Ruby.tmbundle/Syntaxes/Ruby.plist +139 -49
  196. data/textmate/Bundles/SQL.tmbundle/Syntaxes/SQL.plist +705 -0
  197. data/textmate/Bundles/SSH-Config.tmbundle/Syntaxes/SSH__Config.tmLanguage +88 -0
  198. data/textmate/Bundles/Scala.tmbundle/Syntaxes/Scala.tmLanguage +609 -0
  199. data/textmate/Bundles/Scala.tmbundle/Syntaxes/Scala_Properties.tmLanguage +54 -0
  200. data/textmate/Bundles/ShellScript.tmbundle/Syntaxes/Shell__Unix__Generic.plist +1855 -0
  201. data/textmate/Bundles/Tabular.tmbundle/Syntaxes/CSV.tmLanguage +178 -0
  202. data/textmate/Bundles/Tabular.tmbundle/Syntaxes/TSV.tmLanguage +135 -0
  203. data/textmate/Bundles/TextMate.tmbundle/Syntaxes/Regular_Expressions___Oniguruma__.tmLanguage +295 -0
  204. data/textmate/Bundles/TextMate.tmbundle/Syntaxes/Release_Notes.tmLanguage +126 -0
  205. data/textmate/Bundles/Textile.tmbundle/Syntaxes/Textile.plist +490 -0
  206. data/textmate/Bundles/Thrift.tmbundle/Syntaxes/Thrift.tmLanguage +1024 -0
  207. data/textmate/Bundles/XML.tmbundle/Syntaxes/XML.plist +576 -0
  208. data/textmate/Bundles/XML.tmbundle/Syntaxes/XSL.plist +157 -0
  209. data/textmate/Bundles/YAML.tmbundle/Syntaxes/YAML.plist +466 -0
  210. data/textmate/Themes/Django.tmTheme +436 -0
  211. metadata +371 -325
  212. data/config/default.yaml +0 -15
  213. data/lib/freebase2/README.txt +0 -47
  214. data/lib/freebase2/bin/default.yaml +0 -15
  215. data/lib/freebase2/bin/install.rb +0 -42
  216. data/lib/freebase2/bin/run.rb +0 -48
  217. data/lib/freebase2/lib/freebase/configuration.rb +0 -535
  218. data/lib/freebase2/lib/freebase/core.rb +0 -197
  219. data/lib/freebase2/lib/freebase/databus.rb +0 -1128
  220. data/lib/freebase2/lib/freebase/freebase.rb +0 -60
  221. data/lib/freebase2/lib/freebase/logger.rb +0 -117
  222. data/lib/freebase2/lib/freebase/plugin.rb +0 -384
  223. data/lib/freebase2/lib/freebase/properties.rb +0 -130
  224. data/lib/freebase2/lib/freebase/readers.rb +0 -328
  225. data/lib/freebase2/notes +0 -61
  226. data/lib/freebase2/plugins/raa_webrick/httpd.rb +0 -125
  227. data/lib/freebase2/plugins/raa_webrick/plugin.yaml +0 -7
  228. data/lib/freebase2/plugins/raa_webrick/web_root/test.html +0 -5
  229. data/lib/freebase2/plugins/raa_webrick/webserver.yaml +0 -6
  230. data/lib/freebase2/plugins/raa_xmlrpc4r/plugin.xml +0 -8
  231. data/lib/freebase2/plugins/raa_xmlrpc4r/rpcd.rb +0 -54
  232. data/lib/freebase2/regress/README +0 -1
  233. data/lib/little_plugger/History.txt +0 -20
  234. data/lib/little_plugger/Rakefile +0 -34
  235. data/lib/little_plugger/lib/little-plugger.rb +0 -323
  236. data/lib/little_plugger/spec/little-plugger_spec.rb +0 -26
  237. data/lib/little_plugger/spec/spec_helper.rb +0 -16
  238. data/lib/logging/History.txt +0 -240
  239. data/lib/logging/Rakefile +0 -37
  240. data/lib/logging/data/bad_logging_1.rb +0 -13
  241. data/lib/logging/data/bad_logging_2.rb +0 -21
  242. data/lib/logging/data/logging.rb +0 -42
  243. data/lib/logging/data/logging.yaml +0 -63
  244. data/lib/logging/data/simple_logging.rb +0 -13
  245. data/lib/logging/examples/appenders.rb +0 -47
  246. data/lib/logging/examples/classes.rb +0 -41
  247. data/lib/logging/examples/consolidation.rb +0 -83
  248. data/lib/logging/examples/formatting.rb +0 -51
  249. data/lib/logging/examples/hierarchies.rb +0 -73
  250. data/lib/logging/examples/layouts.rb +0 -48
  251. data/lib/logging/examples/loggers.rb +0 -29
  252. data/lib/logging/examples/names.rb +0 -43
  253. data/lib/logging/examples/simple.rb +0 -17
  254. data/lib/logging/lib/logging.rb +0 -501
  255. data/lib/logging/lib/logging/appender.rb +0 -251
  256. data/lib/logging/lib/logging/appenders.rb +0 -131
  257. data/lib/logging/lib/logging/appenders/buffering.rb +0 -168
  258. data/lib/logging/lib/logging/appenders/console.rb +0 -60
  259. data/lib/logging/lib/logging/appenders/email.rb +0 -75
  260. data/lib/logging/lib/logging/appenders/file.rb +0 -58
  261. data/lib/logging/lib/logging/appenders/growl.rb +0 -197
  262. data/lib/logging/lib/logging/appenders/io.rb +0 -69
  263. data/lib/logging/lib/logging/appenders/rolling_file.rb +0 -293
  264. data/lib/logging/lib/logging/appenders/string_io.rb +0 -68
  265. data/lib/logging/lib/logging/appenders/syslog.rb +0 -194
  266. data/lib/logging/lib/logging/config/configurator.rb +0 -188
  267. data/lib/logging/lib/logging/config/yaml_configurator.rb +0 -191
  268. data/lib/logging/lib/logging/layout.rb +0 -117
  269. data/lib/logging/lib/logging/layouts.rb +0 -47
  270. data/lib/logging/lib/logging/layouts/basic.rb +0 -32
  271. data/lib/logging/lib/logging/layouts/parseable.rb +0 -211
  272. data/lib/logging/lib/logging/layouts/pattern.rb +0 -311
  273. data/lib/logging/lib/logging/log_event.rb +0 -45
  274. data/lib/logging/lib/logging/logger.rb +0 -503
  275. data/lib/logging/lib/logging/repository.rb +0 -232
  276. data/lib/logging/lib/logging/root_logger.rb +0 -61
  277. data/lib/logging/lib/logging/stats.rb +0 -278
  278. data/lib/logging/lib/logging/utils.rb +0 -153
  279. data/lib/logging/lib/spec/logging_helper.rb +0 -34
  280. data/lib/logging/test/appenders/test_buffered_io.rb +0 -176
  281. data/lib/logging/test/appenders/test_console.rb +0 -66
  282. data/lib/logging/test/appenders/test_email.rb +0 -170
  283. data/lib/logging/test/appenders/test_file.rb +0 -95
  284. data/lib/logging/test/appenders/test_growl.rb +0 -127
  285. data/lib/logging/test/appenders/test_io.rb +0 -129
  286. data/lib/logging/test/appenders/test_rolling_file.rb +0 -200
  287. data/lib/logging/test/appenders/test_syslog.rb +0 -194
  288. data/lib/logging/test/benchmark.rb +0 -86
  289. data/lib/logging/test/config/test_configurator.rb +0 -70
  290. data/lib/logging/test/config/test_yaml_configurator.rb +0 -40
  291. data/lib/logging/test/layouts/test_basic.rb +0 -42
  292. data/lib/logging/test/layouts/test_json.rb +0 -112
  293. data/lib/logging/test/layouts/test_pattern.rb +0 -198
  294. data/lib/logging/test/layouts/test_yaml.rb +0 -121
  295. data/lib/logging/test/setup.rb +0 -44
  296. data/lib/logging/test/test_appender.rb +0 -152
  297. data/lib/logging/test/test_consolidate.rb +0 -46
  298. data/lib/logging/test/test_layout.rb +0 -110
  299. data/lib/logging/test/test_log_event.rb +0 -80
  300. data/lib/logging/test/test_logger.rb +0 -699
  301. data/lib/logging/test/test_logging.rb +0 -267
  302. data/lib/logging/test/test_repository.rb +0 -158
  303. data/lib/logging/test/test_root_logger.rb +0 -81
  304. data/lib/logging/test/test_stats.rb +0 -274
  305. data/lib/logging/test/test_utils.rb +0 -116
  306. data/plugins/application/plugin.yaml +0 -11
  307. data/plugins/application_swt/plugin.yaml +0 -11
  308. data/plugins/auto_indenter/plugin.yaml +0 -12
  309. data/plugins/core/plugin.yaml +0 -7
  310. data/plugins/edit_view/plugin.yaml +0 -14
  311. data/plugins/edit_view_swt/plugin.yaml +0 -14
  312. data/plugins/project/plugin.yaml +0 -12
  313. data/plugins/redcar/plugin.yaml +0 -18
  314. data/plugins/repl/plugin.yaml +0 -12
  315. data/plugins/tree/plugin.yaml +0 -14
  316. data/plugins/tree_view_swt/plugin.yaml +0 -14
@@ -1,95 +0,0 @@
1
-
2
- require File.join(File.dirname(__FILE__), %w[.. setup])
3
-
4
- module TestLogging
5
- module TestAppenders
6
-
7
- class TestFile < Test::Unit::TestCase
8
- include LoggingTestCase
9
-
10
- NAME = 'logfile'
11
-
12
- def setup
13
- super
14
- Logging.init
15
-
16
- FileUtils.mkdir [File.join(TMP, 'dir'), File.join(TMP, 'uw_dir')]
17
- FileUtils.chmod 0555, File.join(TMP, 'uw_dir')
18
- FileUtils.touch File.join(TMP, 'uw_file')
19
- FileUtils.chmod 0444, File.join(TMP, 'uw_file')
20
- end
21
-
22
- def test_class_assert_valid_logfile
23
- log = File.join(TMP, 'uw_dir', 'file.log')
24
- assert_raise(ArgumentError) do
25
- Logging.appenders.file.assert_valid_logfile(log)
26
- end
27
-
28
- log = File.join(TMP, 'dir')
29
- assert_raise(ArgumentError) do
30
- Logging.appenders.file.assert_valid_logfile(log)
31
- end
32
-
33
- log = File.join(TMP, 'uw_file')
34
- assert_raise(ArgumentError) do
35
- Logging.appenders.file.assert_valid_logfile(log)
36
- end
37
-
38
- log = File.join(TMP, 'file.log')
39
- assert Logging.appenders.file.assert_valid_logfile(log)
40
- end
41
-
42
- def test_initialize
43
- log = File.join(TMP, 'file.log')
44
- appender = Logging.appenders.file(NAME, 'filename' => log)
45
- assert_equal 'logfile', appender.name
46
- assert_equal log, appender.filename
47
- appender << "This will be the first line\n"
48
- appender << "This will be the second line\n"
49
- appender.flush
50
- File.open(log, 'r') do |file|
51
- assert_equal "This will be the first line\n", file.readline
52
- assert_equal "This will be the second line\n", file.readline
53
- assert_raise(EOFError) {file.readline}
54
- end
55
- cleanup
56
-
57
- appender = Logging.appenders.file(NAME, :filename => log)
58
- assert_equal 'logfile', appender.name
59
- assert_equal log, appender.filename
60
- appender << "This will be the third line\n"
61
- appender.flush
62
- File.open(log, 'r') do |file|
63
- assert_equal "This will be the first line\n", file.readline
64
- assert_equal "This will be the second line\n", file.readline
65
- assert_equal "This will be the third line\n", file.readline
66
- assert_raise(EOFError) {file.readline}
67
- end
68
- cleanup
69
-
70
- appender = Logging.appenders.file(NAME, :filename => log,
71
- :truncate => true)
72
- assert_equal 'logfile', appender.name
73
- appender << "The file was truncated\n"
74
- appender.flush
75
- File.open(log, 'r') do |file|
76
- assert_equal "The file was truncated\n", file.readline
77
- assert_raise(EOFError) {file.readline}
78
- end
79
- cleanup
80
- end
81
-
82
- private
83
- def cleanup
84
- unless Logging.appenders[NAME].nil?
85
- Logging.appenders[NAME].close false
86
- Logging.appenders[NAME] = nil
87
- end
88
- end
89
-
90
- end # class TestFile
91
-
92
- end # module TestAppenders
93
- end # module TestLogging
94
-
95
- # EOF
@@ -1,127 +0,0 @@
1
-
2
- require File.join(File.dirname(__FILE__), %w[.. setup])
3
- require 'flexmock'
4
-
5
- module TestLogging
6
- module TestAppenders
7
-
8
- class TestGrowl < Test::Unit::TestCase
9
- include FlexMock::TestCase
10
- include LoggingTestCase
11
-
12
- def setup
13
- super
14
-
15
- @appender = Logging.appenders.growl('growl',
16
- :coalesce => true, :separator => "\000",
17
- :layout => Logging.layouts.pattern(:pattern => "%5l - Test\000%m")
18
- )
19
- @appender.level = :all
20
- @growl = @appender.instance_variable_get(:@growl).dup
21
- @levels = Logging::LEVELS
22
- end
23
-
24
- def test_initialize
25
- assert_equal('growlnotify -w -n "growl" -t "%s" -m "%s" -p %d &', @growl)
26
- assert_equal(true, @appender.instance_variable_get(:@coalesce))
27
- assert_equal("\000", @appender.instance_variable_get(:@title_sep))
28
- end
29
-
30
- def test_append
31
- info = Logging::LogEvent.new('TestLogger', @levels['info'],
32
- 'info message', false)
33
- warn = Logging::LogEvent.new('TestLogger', @levels['warn'],
34
- 'warning message', false)
35
-
36
- flexmock(@appender).should_receive(:system => true).once.with(
37
- @growl % ['WARN - Test', "warning message\nwarning message\nwarning message", 0])
38
-
39
- flexmock(@appender).should_receive(:system => true).once.with(
40
- @growl % ['INFO - Test', "info message\ninfo message", -1])
41
-
42
- flexmock(@appender).should_receive(:system => true).once.with(
43
- @growl % ['WARN - Test', "warning message", 0])
44
-
45
- @appender.append warn
46
- @appender.append warn
47
- @appender.append warn
48
- @appender.append info
49
- @appender.append info
50
- @appender.append warn
51
- sleep 0.7 # give the coalescing thread time to run
52
- end
53
-
54
- def test_append_without_coalescing
55
- @appender.instance_variable_set(:@coalesce, false)
56
- event = Logging::LogEvent.new('TestLogger', @levels['warn'],
57
- 'warning message', false)
58
-
59
- flexmock(@appender).should_receive(:system => true).twice.with(
60
- @growl % ['WARN - Test', 'warning message', 0])
61
-
62
- @appender.append event
63
- @appender.append event
64
- end
65
-
66
- def test_concat
67
- flexmock(@appender).should_receive(:system => true).once.with(
68
- @growl % ['', "first message\nsecond message\nthird message", 0])
69
-
70
- @appender << 'first message'
71
- @appender << 'second message'
72
- @appender << 'third message'
73
- sleep 0.7 # give the coalescing thread time to run
74
- end
75
-
76
- def test_concat_without_coalescing
77
- @appender.instance_variable_set(:@coalesce, false)
78
-
79
- flexmock(@appender).should_receive(:system => true).twice.with(
80
- @growl % ['', 'concat message', 0])
81
-
82
- @appender << 'concat message'
83
- @appender << 'concat message'
84
- end
85
-
86
- def test_map_eq
87
- get_map = lambda {@appender.instance_variable_get(:@map)}
88
- assert_equal([-2,-1,0,1,2], get_map.call)
89
-
90
- @appender.map = {
91
- 'fatal' => '0',
92
- :error => -2,
93
- :warn => '2',
94
- 'INFO' => 1,
95
- 'Debug' => -1
96
- }
97
- assert_equal([-1,1,2,-2,0], get_map.call)
98
-
99
- assert_raise(ArgumentError) do
100
- @appender.map = {:fatal => 'not a number', :error => 2}
101
- end
102
-
103
- assert_raise(ArgumentError) do
104
- @appender.map = {:fatal => -3, :error => 3}
105
- end
106
- end
107
-
108
- def test_disabling
109
- @appender.instance_variable_set(:@coalesce, false)
110
- event = Logging::LogEvent.new('TestLogger', @levels['warn'],
111
- 'warning message', false)
112
-
113
- flexmock(@appender).should_receive(:system => false).once.with(
114
- @growl % ['WARN - Test', 'warning message', 0])
115
-
116
- assert_equal 0, @appender.level
117
- @appender.append event
118
- assert_equal 5, @appender.level
119
- @appender.append event
120
- @appender.append event
121
- end
122
-
123
- end # class TestGrowl
124
- end # module TestLogging
125
- end # module TestAppenders
126
-
127
- # EOF
@@ -1,129 +0,0 @@
1
-
2
- require File.join(File.dirname(__FILE__), %w[.. setup])
3
-
4
- module TestLogging
5
- module TestAppenders
6
-
7
- class TestIO < Test::Unit::TestCase
8
- include LoggingTestCase
9
-
10
- def setup
11
- super
12
-
13
- @appender = Logging.appenders.string_io('test_appender')
14
- @sio = @appender.sio
15
- @levels = Logging::LEVELS
16
- end
17
-
18
- def test_append
19
- event = Logging::LogEvent.new('TestLogger', @levels['warn'],
20
- [1, 2, 3, 4], false)
21
- @appender.append event
22
- assert_equal " WARN TestLogger : <Array> #{[1, 2, 3, 4]}\n", readline
23
- assert_nil(readline)
24
-
25
- event.level = @levels['debug']
26
- event.data = 'the big log message'
27
- @appender.append event
28
- assert_equal "DEBUG TestLogger : the big log message\n", readline
29
- assert_nil(readline)
30
-
31
- @appender.close
32
- assert_raise(RuntimeError) {@appender.append event}
33
- end
34
-
35
- def test_append_error
36
- # setup an internal logger to capture error messages from the IO
37
- # appender
38
- log = Logging.appenders.string_io('__internal_io')
39
- Logging.logger[Logging].add_appenders(log)
40
- Logging.logger[Logging].level = 'all'
41
-
42
- # close the string IO object so we get an error
43
- @sio.close
44
- event = Logging::LogEvent.new('TestLogger', @levels['warn'],
45
- [1, 2, 3, 4], false)
46
- @appender.append event
47
-
48
- assert_equal "INFO Logging : appender \"test_appender\" has been disabled", log.readline.strip
49
- assert_equal "ERROR Logging : <IOError> not opened for writing", log.readline.strip
50
-
51
- assert_equal false, @appender.closed?
52
- assert_equal 5, @appender.level
53
- end
54
-
55
- def test_close
56
- assert_equal false, @sio.closed?
57
- assert_equal false, @appender.closed?
58
-
59
- @appender.close
60
- assert_equal true, @sio.closed?
61
- assert_equal true, @appender.closed?
62
-
63
- [STDIN, STDERR, STDOUT].each do |io|
64
- @appender = Logging.appenders.io('test', io)
65
- @appender.close
66
- assert_equal false, io.closed?
67
- assert_equal true, @appender.closed?
68
- end
69
- end
70
-
71
- def test_concat
72
- @appender << "this is a test message\n"
73
- assert_equal "this is a test message\n", readline
74
- assert_nil(readline)
75
-
76
- @appender << "this is another message\n"
77
- @appender << "some other line\n"
78
- assert_equal "this is another message\n", readline
79
- assert_equal "some other line\n", readline
80
- assert_nil(readline)
81
-
82
- @appender.close
83
- assert_raise(RuntimeError) {@appender << 'message'}
84
- end
85
-
86
- def test_concat_error
87
- # setup an internal logger to capture error messages from the IO
88
- # appender
89
- log = Logging.appenders.string_io('__internal_io')
90
- Logging.logger[Logging].add_appenders(log)
91
- Logging.logger[Logging].level = 'all'
92
-
93
- # close the string IO object so we get an error
94
- @sio.close
95
- @appender << 'oopsy'
96
-
97
- assert_equal "INFO Logging : appender \"test_appender\" has been disabled", log.readline.strip
98
- assert_equal "ERROR Logging : <IOError> not opened for writing", log.readline.strip
99
-
100
- # and the appender does not close itself
101
- assert_equal false, @appender.closed?
102
- assert_equal 5, @appender.level
103
- end
104
-
105
- def test_flush
106
- ary = []
107
- @sio.instance_variable_set :@ary, ary
108
- def @sio.flush() @ary << :flush end
109
-
110
- @appender.flush
111
- assert_equal :flush, ary.pop
112
- end
113
-
114
- def test_initialize
115
- assert_raise(EOFError) {@sio.readline}
116
- assert_raise(TypeError) {Logging.appenders.io('test', [])}
117
- end
118
-
119
- private
120
- def readline
121
- @appender.readline
122
- end
123
-
124
- end # class TestIO
125
-
126
- end # module TestAppenders
127
- end # module TestLogging
128
-
129
- # EOF
@@ -1,200 +0,0 @@
1
-
2
- require File.join(File.dirname(__FILE__), %w[.. setup])
3
-
4
- module TestLogging
5
- module TestAppenders
6
-
7
- class TestRollingFile < Test::Unit::TestCase
8
- include LoggingTestCase
9
-
10
- NAME = 'roller'
11
-
12
- def setup
13
- super
14
- Logging.init
15
-
16
- @fn = File.join(TMP, 'test.log')
17
- @fn_fmt = File.join(TMP, 'test.%d.log')
18
- @glob = File.join(TMP, '*.log')
19
- end
20
-
21
- def test_initialize
22
- assert_equal [], Dir.glob(@glob)
23
-
24
- # create a new appender
25
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn)
26
- assert_equal @fn, ap.filename
27
- assert File.exist?(@fn)
28
- assert_equal 0, File.size(@fn)
29
-
30
- ap << "Just a line of text\n" # 20 bytes
31
- ap.flush
32
- assert_equal 20, File.size(@fn)
33
- cleanup
34
-
35
- # make sure we append to the current file (not truncate)
36
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn)
37
- assert_equal @fn, ap.filename
38
- assert_equal [@fn], Dir.glob(@glob)
39
- assert_equal 20, File.size(@fn)
40
-
41
- ap << "Just another line of text\n" # 26 bytes
42
- ap.flush
43
- assert_equal 46, File.size(@fn)
44
- cleanup
45
-
46
- # setting the truncate option to true should roll the current log file
47
- # and create a new one
48
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn, :truncate => true)
49
-
50
- log1 = sprintf(@fn_fmt, 1)
51
- assert_equal [log1, @fn], Dir.glob(@glob).sort
52
- assert_equal 0, File.size(@fn)
53
- assert_equal 46, File.size(log1)
54
-
55
- ap << "Some more text in the new file\n" # 31 bytes
56
- ap.flush
57
- assert_equal 31, File.size(@fn)
58
- cleanup
59
- end
60
-
61
- def test_keep
62
- assert_equal [], Dir.glob(@glob)
63
-
64
- (1..12).each do |cnt|
65
- name = sprintf(@fn_fmt, cnt)
66
- File.open(name,'w') {|fd| fd.write 'X'*cnt}
67
- end
68
- FileUtils.touch(@fn)
69
-
70
- # keep only five files
71
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn, :keep => 5)
72
-
73
- # we still have 13 files because we did not truncate the log file,
74
- # and hence, we did not roll all the log files
75
- assert_equal 13, Dir.glob(@glob).length
76
-
77
- # force the appender to roll the files
78
- ap.send :roll
79
- assert_equal 6, Dir.glob(@glob).length
80
-
81
- (1..5).each do |cnt|
82
- name = sprintf(@fn_fmt, cnt)
83
- assert_equal cnt-1, File.size(name)
84
- end
85
- cleanup
86
- end
87
-
88
- def test_age
89
- assert_equal [], Dir.glob(@glob)
90
-
91
- assert_raise(ArgumentError) do
92
- Logging.appenders.rolling_file(NAME, :filename => @fn, :age => 'bob')
93
- end
94
-
95
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn, :age => 1)
96
- ap << "random message\n"
97
- assert_equal 1, Dir.glob(@glob).length
98
-
99
- sleep 1.250
100
- ap << "another random message\n"
101
- assert_equal 2, Dir.glob(@glob).length
102
-
103
- cleanup
104
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn, 'age' => 'daily')
105
- ap << "random message\n"
106
- assert_equal 2, Dir.glob(@glob).length
107
-
108
- age_fn = @fn + '.age'
109
- now = ::File.mtime(age_fn)
110
- start = now - 3600 * 24
111
- ::File.utime(start, start, age_fn)
112
-
113
- sleep 0.250
114
- ap << "yet another random message\n"
115
- assert_equal 3, Dir.glob(@glob).length
116
-
117
- cleanup
118
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn, :age => 'weekly')
119
- ap << "random message\n"
120
- assert_equal 3, Dir.glob(@glob).length
121
-
122
- start = now - 3600 * 24 * 7
123
- ::File.utime(start, start, age_fn)
124
-
125
- sleep 0.250
126
- ap << "yet another random message\n"
127
- assert_equal 4, Dir.glob(@glob).length
128
-
129
- cleanup
130
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn, :age => 'monthly')
131
- ap << "random message\n"
132
- assert_equal 4, Dir.glob(@glob).length
133
-
134
- start = now - 3600 * 24 * 31
135
- ::File.utime(start, start, age_fn)
136
-
137
- sleep 0.250
138
- ap << "yet another random message\n"
139
- assert_equal 5, Dir.glob(@glob).length
140
- end
141
-
142
- def test_size
143
- assert_equal [], Dir.glob(@glob)
144
-
145
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn, :size => 100)
146
-
147
- ap << 'X' * 100; ap.flush
148
- assert_equal 1, Dir.glob(@glob).length
149
- assert_equal 100, File.size(@fn)
150
-
151
- # this character is appended to the log file (bringing its size to 101)
152
- # and THEN the file is rolled resulting in a new, empty log file
153
- ap << 'X'
154
- assert_equal 2, Dir.glob(@glob).length
155
- assert_equal 0, File.size(@fn)
156
-
157
- ap << 'X' * 100; ap.flush
158
- assert_equal 2, Dir.glob(@glob).length
159
- assert_equal 100, File.size(@fn)
160
-
161
- ap << 'X'
162
- assert_equal 3, Dir.glob(@glob).length
163
- assert_equal 0, File.size(@fn)
164
-
165
- cleanup
166
- end
167
-
168
- def test_file_removed
169
- assert_equal [], Dir.glob(@glob)
170
-
171
- ap = Logging.appenders.rolling_file(NAME, :filename => @fn, :size => 100)
172
-
173
- ap << 'X' * 100; ap.flush
174
- assert_equal 1, Dir.glob(@glob).length
175
- assert_equal 100, File.size(@fn)
176
-
177
- # Now remove @fn and make sure that the log file is written to
178
- # again
179
- File.unlink(@fn)
180
- assert_equal 0, Dir.glob(@glob).length
181
-
182
- ap << 'X' * 50; ap.flush
183
- assert_equal 1, Dir.glob(@glob).length
184
- assert_equal 50, File.size(@fn)
185
-
186
- end
187
-
188
- private
189
- def cleanup
190
- unless Logging.appenders[NAME].nil?
191
- Logging.appenders[NAME].close false
192
- Logging.appenders[NAME] = nil
193
- end
194
- end
195
-
196
- end # class TestRollingFile
197
- end # module TestAppenders
198
- end # module TestLogging
199
-
200
- # EOF