yarn 0.0.1 → 0.0.2

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 (74) hide show
  1. data/.gitignore +1 -0
  2. data/Gemfile +0 -3
  3. data/README.md +25 -1
  4. data/bin/yarn +6 -4
  5. data/features/concurrency.feature +4 -4
  6. data/features/dynamic_request.feature +6 -1
  7. data/features/rack.feature +5 -8
  8. data/features/static_request.feature +2 -2
  9. data/features/step_definitions/rack_steps.rb +13 -0
  10. data/features/step_definitions/server_steps.rb +5 -5
  11. data/features/step_definitions/web_steps.rb +8 -0
  12. data/lib/rack/handler/yarn.rb +4 -3
  13. data/lib/yarn/error_page.rb +2 -1
  14. data/lib/yarn/logging.rb +1 -1
  15. data/lib/yarn/parslet_parser.rb +9 -24
  16. data/lib/yarn/rack_handler.rb +11 -9
  17. data/lib/yarn/request_handler.rb +21 -12
  18. data/lib/yarn/server.rb +39 -30
  19. data/lib/yarn/version.rb +1 -1
  20. data/spec/helpers.rb +16 -8
  21. data/spec/rack/handler/yarn_spec.rb +21 -0
  22. data/spec/spec_helper.rb +1 -4
  23. data/spec/yarn/directory_lister_spec.rb +0 -5
  24. data/spec/yarn/logging_spec.rb +3 -2
  25. data/spec/yarn/parslet_parser_spec.rb +26 -0
  26. data/spec/yarn/rack_handler_spec.rb +15 -4
  27. data/spec/yarn/request_handler_spec.rb +17 -7
  28. data/spec/yarn/server_spec.rb +49 -8
  29. data/test_objects/.gitignore +1 -0
  30. data/test_objects/app.rb +0 -2
  31. data/test_objects/config.ru +1 -49
  32. data/test_objects/rails_test/.gitignore +5 -0
  33. data/test_objects/rails_test/Gemfile +34 -0
  34. data/test_objects/rails_test/README +261 -0
  35. data/test_objects/rails_test/Rakefile +7 -0
  36. data/test_objects/rails_test/app/assets/images/rails.png +0 -0
  37. data/test_objects/rails_test/app/assets/javascripts/application.js +6 -0
  38. data/test_objects/rails_test/app/assets/stylesheets/application.css +7 -0
  39. data/test_objects/rails_test/app/assets/stylesheets/scaffolds.css.scss +56 -0
  40. data/test_objects/rails_test/app/mailers/.gitkeep +0 -0
  41. data/test_objects/rails_test/app/models/.gitkeep +0 -0
  42. data/test_objects/rails_test/app/views/layouts/application.html.erb +15 -0
  43. data/test_objects/rails_test/app/views/posts/_form.html.erb +25 -0
  44. data/test_objects/rails_test/app/views/posts/edit.html.erb +6 -0
  45. data/test_objects/rails_test/app/views/posts/index.html.erb +20 -0
  46. data/test_objects/rails_test/app/views/posts/new.html.erb +5 -0
  47. data/test_objects/rails_test/app/views/posts/show.html.erb +15 -0
  48. data/test_objects/rails_test/config.ru +4 -0
  49. data/test_objects/rails_test/config/database.yml +25 -0
  50. data/test_objects/rails_test/config/locales/en.yml +5 -0
  51. data/test_objects/rails_test/doc/README_FOR_APP +2 -0
  52. data/test_objects/rails_test/lib/assets/.gitkeep +0 -0
  53. data/test_objects/rails_test/lib/tasks/.gitkeep +0 -0
  54. data/test_objects/rails_test/log/.gitkeep +0 -0
  55. data/test_objects/rails_test/public/404.html +26 -0
  56. data/test_objects/rails_test/public/422.html +26 -0
  57. data/test_objects/rails_test/public/500.html +26 -0
  58. data/test_objects/rails_test/public/favicon.ico +0 -0
  59. data/test_objects/rails_test/public/robots.txt +5 -0
  60. data/test_objects/rails_test/script/rails +6 -0
  61. data/test_objects/rails_test/test/fixtures/.gitkeep +0 -0
  62. data/test_objects/rails_test/test/fixtures/posts.yml +9 -0
  63. data/test_objects/rails_test/test/functional/.gitkeep +0 -0
  64. data/test_objects/rails_test/test/integration/.gitkeep +0 -0
  65. data/test_objects/rails_test/test/unit/.gitkeep +0 -0
  66. data/test_objects/rails_test/vendor/assets/stylesheets/.gitkeep +0 -0
  67. data/test_objects/rails_test/vendor/plugins/.gitkeep +0 -0
  68. data/yarn.gemspec +4 -8
  69. metadata +59 -59
  70. data/lib/yarn/worker.rb +0 -19
  71. data/lib/yarn/worker_pool.rb +0 -36
  72. data/spec/yarn/worker_pool_spec.rb +0 -23
  73. data/spec/yarn/worker_spec.rb +0 -26
  74. data/test_objects/simple_rack.rb +0 -12
@@ -1,23 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Yarn
4
-
5
- describe WorkerPool do
6
-
7
- describe "#new" do
8
- it "should accept a pool size and set it accordingly" do
9
- pool = WorkerPool.new 8
10
-
11
- pool.size.should == 8
12
- end
13
-
14
- it "should instantiate the pool from the given size" do
15
- pool = WorkerPool.new 8
16
-
17
- pool.workers.size.should == 8
18
- end
19
- end
20
-
21
- end
22
-
23
- end
@@ -1,26 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Yarn
4
- describe Worker do
5
- describe "#new" do
6
- it "should accept a handler and store it" do
7
- handler = RequestHandler.new
8
- worker = Worker.new handler
9
-
10
- worker.handler.should == handler
11
- end
12
- end
13
-
14
- describe "#process" do
15
- it "should execute the handler with the supplied session" do
16
- handler = RequestHandler.new
17
- handler.stub(:run).and_return(:response)
18
- worker = Worker.new handler
19
-
20
- worker.process("test").should == :response
21
- end
22
- end
23
-
24
- end
25
-
26
- end
@@ -1,12 +0,0 @@
1
- # app = Rack::Builder.new {
2
- # use Rack::CommonLogger
3
- # use Rack::ShowExceptions
4
- # map "/lobster" do
5
- # use Rack::Lint
6
- # run Rack::Lobster.new
7
- # end
8
- # }
9
- #
10
- app = proc do |env|
11
- [200, { 'Content-Type' => 'text/html' }, ['rack works']]
12
- end