branston 0.4.3 → 0.4.4

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -40,6 +40,16 @@ This will start the Branston server on port 3970. By default, the server binds
40
40
  to the IP 0.0.0.0, so don't do this on a public-facing box unless you want to
41
41
  make your Branston server available to the entire internet.
42
42
 
43
+ Writing stories is a two-step process. Stories are laid out so that they look
44
+ somewhat like the recipe cards we use in our agile processes; on the front
45
+ of the card, we write the user story itself, on the "back" of the card are the
46
+ testing scenarios for the story. Start off by writing the basic story as your
47
+ first step.
48
+
49
+ Once the story itself is done, you can write one or more scenarios for the
50
+ story. Each testing scenario describes a concrete test involving a user, some
51
+ preconditions, and one or more testable outcomes for the story.
52
+
43
53
  Once you've got some stories with acceptance conditions, you can make your
44
54
  Rails app and start generating cucumber test code. Try this:
45
55
 
@@ -49,15 +59,40 @@ Rails app and start generating cucumber test code. Try this:
49
59
  ruby script/generate cucumber
50
60
 
51
61
  Now, let's assume you've got a story called "add video". You want to turn the
52
- scenarios for that story into executable cucumber test code, so here's what you
53
- do:
62
+ scenarios for that story into executable cucumber test code, so click on the
63
+ little "clippy" swf next to your story title, and you'll get the generator
64
+ code copied onto your clipboard. It might look like this:
65
+
66
+ branston -g -f add-video -p 3970 -b 192.168.0.43
67
+
68
+ Change directory into the root of your Rails project, paste that generator code
69
+ into your terminal and hit enter. The Branston client will generate the
70
+ cucumber steps for that user story. Then you can run:
54
71
 
55
- branston -g -f add-video
56
72
  rake cucumber:all
57
73
 
58
- Branston will
74
+ You'll see some failures. Implement the steps and code to make your cucumber
75
+ tests pass.
76
+
77
+ == Known problems
78
+
79
+ * Generating cucumber code for a story twice, or step definition files with identical names, will wipe out any customizations you did the first time through. This sucks and is no fun. We'll get around to fixing it unless you get around to fixing it first (pull requests welcome).
80
+
81
+ * The security is at present somewhat ludicrous, anyone can sign up and automatically get access to the stories. We use our Branston server on a private intranet and haven't bothered to get it ready for public-facing use yet. In general we only use the user accounts to see who did what.
82
+
83
+ * There is no multi-project support yet.
84
+
85
+ == Help options
86
+
87
+ Running
88
+
89
+ branston -h
90
+
91
+ will show a basic help message. To get help on any of the top-level options, you add "-h" after that option, e.g.
92
+
93
+ branston -s -h
59
94
 
60
- Then, you implement the steps and code to make it pass.
95
+ will list out the help options for the branston server.
61
96
 
62
97
  == Note on Patches/Pull Requests
63
98
 
@@ -65,7 +100,7 @@ Then, you implement the steps and code to make it pass.
65
100
  * Make your feature addition or bug fix.
66
101
  * Add tests for it. This is important so I don't break it in a
67
102
  future version unintentionally.
68
- * Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
103
+ * Commit, do not mess with rakefile, version, or history. If you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull.
69
104
  * Send me a pull request. Bonus points for topic branches.
70
105
 
71
106
  == Copyright
@@ -10,5 +10,35 @@ module ApplicationHelper
10
10
  def element_id(obj, field="")
11
11
  obj.class.to_s + '_' + obj.id.to_s + (field.blank? ? '' : '_' + field)
12
12
  end
13
+
14
+ def clippy(text, bgcolor='#FFFFFF')
15
+ html = <<-EOF
16
+ <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
17
+ width="110"
18
+ height="14"
19
+ id="clippy" >
20
+ <param name="movie" value="/flash/clippy.swf"/>
21
+ <param name="allowScriptAccess" value="always" />
22
+ <param name="quality" value="high" />
23
+ <param name="scale" value="noscale" />
24
+ <param NAME="FlashVars" value="text=#{text}">
25
+ <param name="bgcolor" value="#{bgcolor}">
26
+ <embed src="/flash/clippy.swf"
27
+ width="110"
28
+ height="14"
29
+ name="clippy"
30
+ quality="high"
31
+ allowScriptAccess="always"
32
+ type="application/x-shockwave-flash"
33
+ pluginspage="http://www.macromedia.com/go/getflashplayer"
34
+ FlashVars="text=#{text}"
35
+ bgcolor="#{bgcolor}"
36
+ />
37
+ </object>
38
+ EOF
39
+ end
40
+
41
+
42
+
13
43
  end
14
44
 
@@ -2,20 +2,21 @@
2
2
  <% @story = story -%>
3
3
  <div id="<%= element_id(story) %>" class="story">
4
4
  <div class="accordion-toggle<%= ' accordion-toggle-active' if @active %>">
5
- <%= in_place_editor_field 'story', 'title', {}, :url => {
6
- :action => "set_story_title", :id => @story.id,
7
- :iteration_id => @iteration.to_param } %>
8
- <%= link_to image_tag("/images/icons/delete_icon_20x19.png", :alt => "Delete"),
9
- iteration_story_path(@iteration, @story), :confirm => 'Delete this story?',
5
+ <%= in_place_editor_field 'story', 'title', {}, :url => {
6
+ :action => "set_story_title", :id => @story.id,
7
+ :iteration_id => @iteration.to_param } %> &nbsp;
8
+ <%= clippy("branston -f -g #{@story.to_param} -b #{request.host} -p #{request.port} ", "#FFFF99") %>
9
+ <%= link_to image_tag("/images/icons/delete_icon_20x19.png", :alt => "Delete"),
10
+ iteration_story_path(@iteration, @story), :confirm => 'Delete this story?',
10
11
  :method => :delete, :class => "delete-small" %>
11
- <div style="clear:left">By <%=@story.author%></div>
12
+ <div style="clear:left">By <%=@story.author%></div>
12
13
  </div>
13
-
14
+
14
15
  <div id="<%= element_id(story,'scenarios') %>" class="accordion-content">
15
16
  <div class="story-props">
16
17
  <% remote_form_for :story, @story, :url => "#{iteration_story_path(@iteration, @story)}.js" do |f| -%>
17
18
  <%= hidden_field_tag '_method', 'PUT' %>
18
- <%= hidden_field_tag 'id', @story.id %>
19
+ <%= hidden_field_tag 'id', @story.id %>
19
20
  <div>
20
21
  <%= f.select :points, (1..10).to_a, {}, :id => element_id(@story,'points') %> Points
21
22
  </div>
@@ -27,7 +28,7 @@
27
28
  <% unless @iterations.empty? -%>
28
29
  <div>
29
30
  <%= f.label :iteration_id, "Iteration" %>
30
- <%= f.select :iteration_id, @iterations.map{|i|[i.name,i.id]},
31
+ <%= f.select :iteration_id, @iterations.map{|i|[i.name,i.id]},
31
32
  {:prompt => "Assign Iteration"}, :id => element_id(@story,'iterations') %>
32
33
  </div>
33
34
  <% end -%>
@@ -36,14 +37,14 @@
36
37
  <p>
37
38
  <%= in_place_editor_field 'story', 'description' %>
38
39
  </p>
39
-
40
+
40
41
  <div>
41
42
  <%= link_to_remote "Scenarios &raquo;", :method => 'GET',
42
43
  :url => iteration_story_scenarios_path(@iteration, @story) %>
43
44
  </div>
44
45
  </div>
45
46
  </div>
46
-
47
+
47
48
  <% content_for :page_end do -%>
48
49
  <script type="text/javascript">
49
50
  document.observe("dom:loaded", function() {
@@ -55,3 +56,4 @@ document.observe("dom:loaded", function() {
55
56
  });
56
57
  </script>
57
58
  <% end -%>
59
+
@@ -3032,3 +3032,569 @@ Completed in 130ms (View: 75, DB: 4) | 200 OK [http://localhost/iterations/1/sto
3032
3032
  SQL (32.1ms) INSERT INTO "schema_migrations" (version) VALUES ('20091202105555')
3033
3033
  SQL (40.4ms) INSERT INTO "schema_migrations" (version) VALUES ('20091127173744')
3034
3034
  SQL (27.8ms) INSERT INTO "schema_migrations" (version) VALUES ('20091127164217')
3035
+
3036
+
3037
+ Processing IterationsController#index (for 127.0.0.1 at 2010-01-07 16:09:27) [GET]
3038
+ User Load (0.4ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3039
+ Iteration Load (0.5ms) SELECT * FROM "iterations" 
3040
+ Rendering template within layouts/main
3041
+ Rendering iterations/index
3042
+ Rendered layouts/_meta (0.1ms)
3043
+ Rendered layouts/_header (0.3ms)
3044
+ Rendered layouts/_footer (4.1ms)
3045
+ Completed in 129ms (View: 89, DB: 1) | 200 OK [http://localhost/]
3046
+
3047
+
3048
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:09:30) [GET]
3049
+ Parameters: {"iteration_id"=>"1"}
3050
+ User Load (0.4ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3051
+ Iteration Load (0.6ms) SELECT * FROM "iterations" 
3052
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3053
+ Rendering template within layouts/main
3054
+ Rendering stories/index
3055
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3056
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3057
+ Story Load (0.1ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3058
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3059
+ Story Load (1.1ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3060
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3061
+ Rendered stories/_story (28.4ms)
3062
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3063
+ Rendered stories/_story (13.2ms)
3064
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3065
+ Rendered stories/_story (13.5ms)
3066
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3067
+ Rendered stories/_story (12.7ms)
3068
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3069
+ Rendered layouts/_meta (0.1ms)
3070
+ Rendered layouts/_header (0.2ms)
3071
+ Rendered layouts/_footer (0.4ms)
3072
+ Completed in 287ms (View: 95, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3073
+
3074
+
3075
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:13:11) [GET]
3076
+ Parameters: {"iteration_id"=>"1"}
3077
+ User Load (0.5ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3078
+ Iteration Load (0.5ms) SELECT * FROM "iterations" 
3079
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3080
+ Rendering template within layouts/main
3081
+ Rendering stories/index
3082
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3083
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3084
+ Story Load (0.1ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3085
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3086
+ Story Load (1.0ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3087
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3088
+ Rendered stories/_story (22.3ms)
3089
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3090
+ Rendered stories/_story (14.4ms)
3091
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3092
+ Rendered stories/_story (13.7ms)
3093
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3094
+ Rendered stories/_story (12.4ms)
3095
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3096
+ Rendered layouts/_meta (0.1ms)
3097
+ Rendered layouts/_header (0.2ms)
3098
+ Rendered layouts/_footer (0.4ms)
3099
+ Completed in 140ms (View: 86, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3100
+
3101
+
3102
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:16:55) [GET]
3103
+ Parameters: {"iteration_id"=>"1"}
3104
+ User Load (0.5ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3105
+ Iteration Load (0.5ms) SELECT * FROM "iterations" 
3106
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3107
+ Rendering template within layouts/main
3108
+ Rendering stories/index
3109
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3110
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3111
+ Story Load (0.1ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3112
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3113
+ Story Load (1.1ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3114
+ ERROR: compiling _run_erb_app47views47stories47_story46html46erb_locals_object_story RAISED compile error
3115
+ /home/dave/workspace/branston/lib/branston/app/views/stories/_story.html.erb:8: syntax error, unexpected ';'
3116
+ ; host = ; @output_buffer.concat "\n "
3117
+ ^
3118
+ Function body: def _run_erb_app47views47stories47_story46html46erb_locals_object_story(local_assigns)
3119
+ old_output_buffer = output_buffer;object = local_assigns[:object];story = local_assigns[:story];;@output_buffer = ''; __in_erb_template=true ; @output_buffer.concat "<!-- stories/_story.html.erb -->\n "
3120
+ ; @story = story
3121
+ @output_buffer.concat " <div id=\""; @output_buffer.concat(( element_id(story) ).to_s); @output_buffer.concat "\" class=\"story\">\n <div class=\"accordion-toggle"
3122
+ ; @output_buffer.concat(( ' accordion-toggle-active' if @active ).to_s); @output_buffer.concat "\">\n "
3123
+ ; @output_buffer.concat(( in_place_editor_field 'story', 'title', {}, :url => {
3124
+ :action => "set_story_title", :id => @story.id,
3125
+ :iteration_id => @iteration.to_param } ).to_s); @output_buffer.concat "\n "
3126
+ ; host = ; @output_buffer.concat "\n "
3127
+ ; @output_buffer.concat(( clippy("branston -f -g #{@story.to_param} -b #{request.host} -p #{request.port} ") ).to_s); @output_buffer.concat "\n "
3128
+ ; @output_buffer.concat(( link_to image_tag("/images/icons/delete_icon_20x19.png", :alt => "Delete"),
3129
+ iteration_story_path(@iteration, @story), :confirm => 'Delete this story?',
3130
+ :method => :delete, :class => "delete-small" ).to_s); @output_buffer.concat "\n <div style=\"clear:left\">By "
3131
+ ; @output_buffer.concat((@story.author).to_s); @output_buffer.concat "</div>\n </div>\n\n <div id=\""
3132
+
3133
+
3134
+ ; @output_buffer.concat(( element_id(story,'scenarios') ).to_s); @output_buffer.concat "\" class=\"accordion-content\">\n <div class=\"story-props\">\n "
3135
+
3136
+ ; remote_form_for :story, @story, :url => "#{iteration_story_path(@iteration, @story)}.js" do |f|
3137
+ @output_buffer.concat " "; @output_buffer.concat(( hidden_field_tag '_method', 'PUT' ).to_s); @output_buffer.concat "\n "
3138
+ ; @output_buffer.concat(( hidden_field_tag 'id', @story.id ).to_s); @output_buffer.concat "\n <div>\n "
3139
+
3140
+ ; @output_buffer.concat(( f.select :points, (1..10).to_a, {}, :id => element_id(@story,'points') ).to_s); @output_buffer.concat " Points\n </div>\n <div>\n "
3141
+
3142
+
3143
+ ; @output_buffer.concat(( f.label :status ).to_s); @output_buffer.concat "\n "
3144
+ ; @output_buffer.concat(( f.select :status, ['new', 'in_progress', 'completed'], {},
3145
+ :id => element_id(@story, 'status') ).to_s); @output_buffer.concat "\n </div>\n "
3146
+
3147
+ ; unless @iterations.empty?
3148
+ @output_buffer.concat " <div>\n "
3149
+ ; @output_buffer.concat(( f.label :iteration_id, "Iteration" ).to_s); @output_buffer.concat "\n "
3150
+ ; @output_buffer.concat(( f.select :iteration_id, @iterations.map{|i|[i.name,i.id]},
3151
+ {:prompt => "Assign Iteration"}, :id => element_id(@story,'iterations') ).to_s); @output_buffer.concat "\n </div>\n "
3152
+
3153
+ ; end
3154
+ @output_buffer.concat " "; end
3155
+ @output_buffer.concat " </div>\n <p>\n "
3156
+
3157
+ ; @output_buffer.concat(( in_place_editor_field 'story', 'description' ).to_s); @output_buffer.concat "\n </p>\n\n <div>\n "
3158
+
3159
+
3160
+
3161
+ ; @output_buffer.concat(( link_to_remote "Scenarios &raquo;", :method => 'GET',
3162
+ :url => iteration_story_scenarios_path(@iteration, @story) ).to_s); @output_buffer.concat "\n </div>\n </div>\n </div>\n\n"
3163
+
3164
+
3165
+
3166
+
3167
+ ; content_for :page_end do
3168
+ @output_buffer.concat "<script type=\"text/javascript\">\ndocument.observe(\"dom:loaded\", function() {\n $(\""
3169
+
3170
+ ; @output_buffer.concat(( element_id(@story, 'points') ).to_s); @output_buffer.concat "\").observe(\"change\", Util.Form.selectChange);\n "
3171
+ ; unless @iterations.empty? ; @output_buffer.concat "\n $(\""
3172
+ ; @output_buffer.concat(( element_id(@story, 'iterations') ).to_s); @output_buffer.concat "\").observe(\"change\", Util.Form.selectChange);\n "
3173
+ ; end ; @output_buffer.concat "\n $(\""
3174
+ ; @output_buffer.concat(( element_id(@story, 'status') ).to_s); @output_buffer.concat "\").observe(\"change\", Util.Form.selectChange);\n});\n</script>\n"
3175
+
3176
+
3177
+ ; end
3178
+ @output_buffer.concat "\n"
3179
+ ; @output_buffer
3180
+ ensure
3181
+ self.output_buffer = old_output_buffer
3182
+ end
3183
+ Backtrace: /home/dave/workspace/branston/lib/branston/app/views/stories/_story.html.erb:64:in `compile!'
3184
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/renderable.rb:61:in `compile'
3185
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/renderable.rb:28:in `render'
3186
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/renderable_partial.rb:20:in `render'
3187
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/benchmarking.rb:26:in `benchmark'
3188
+ /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/core_ext/benchmark.rb:17:in `ms'
3189
+ /usr/lib/ruby/1.8/benchmark.rb:308:in `realtime'
3190
+ /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/core_ext/benchmark.rb:17:in `ms'
3191
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/benchmarking.rb:26:in `benchmark'
3192
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/renderable_partial.rb:19:in `render'
3193
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/template.rb:205:in `render_template'
3194
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/renderable_partial.rb:44:in `render_partial'
3195
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/partials.rb:184:in `render_partial'
3196
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/base.rb:267:in `render'
3197
+ /home/dave/workspace/branston/lib/branston/app/views/stories/index.html.erb:45:in `_run_erb_app47views47stories47index46html46erb'
3198
+ /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/named_scope.rb:109:in `each'
3199
+ /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/named_scope.rb:109:in `__send__'
3200
+ /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/named_scope.rb:109:in `each'
3201
+ /home/dave/workspace/branston/lib/branston/app/views/stories/index.html.erb:44:in `_run_erb_app47views47stories47index46html46erb'
3202
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/renderable.rb:34:in `send'
3203
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/renderable.rb:34:in `render'
3204
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/base.rb:306:in `with_template'
3205
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/renderable.rb:30:in `render'
3206
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/template.rb:205:in `render_template'
3207
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/base.rb:265:in `render'
3208
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/base.rb:348:in `_render_with_layout'
3209
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/base.rb:262:in `render'
3210
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/base.rb:1250:in `render_for_file'
3211
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/base.rb:951:in `render_without_benchmark'
3212
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/benchmarking.rb:51:in `render'
3213
+ /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/core_ext/benchmark.rb:17:in `ms'
3214
+ /usr/lib/ruby/1.8/benchmark.rb:308:in `realtime'
3215
+ /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/core_ext/benchmark.rb:17:in `ms'
3216
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/benchmarking.rb:51:in `render'
3217
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/mime_responds.rb:135:in `send'
3218
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/mime_responds.rb:135:in `custom'
3219
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/mime_responds.rb:179:in `call'
3220
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/mime_responds.rb:179:in `respond'
3221
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/mime_responds.rb:173:in `each'
3222
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/mime_responds.rb:173:in `respond'
3223
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/mime_responds.rb:107:in `respond_to'
3224
+ /home/dave/workspace/branston/lib/branston/app/controllers/stories_controller.rb:43:in `index'
3225
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/base.rb:1331:in `send'
3226
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/base.rb:1331:in `perform_action_without_filters'
3227
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/filters.rb:617:in `call_filters'
3228
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/filters.rb:610:in `perform_action_without_benchmark'
3229
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
3230
+ /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/core_ext/benchmark.rb:17:in `ms'
3231
+ /usr/lib/ruby/1.8/benchmark.rb:308:in `realtime'
3232
+ /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/core_ext/benchmark.rb:17:in `ms'
3233
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
3234
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/rescue.rb:160:in `perform_action_without_flash'
3235
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/flash.rb:146:in `perform_action'
3236
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/base.rb:532:in `send'
3237
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/base.rb:532:in `process_without_filters'
3238
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/filters.rb:606:in `process'
3239
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/base.rb:391:in `process'
3240
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/base.rb:386:in `call'
3241
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/route_set.rb:437:in `call'
3242
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/dispatcher.rb:87:in `dispatch'
3243
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/dispatcher.rb:121:in `_call'
3244
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/dispatcher.rb:130:in `build_middleware_stack'
3245
+ /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/query_cache.rb:29:in `call'
3246
+ /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/query_cache.rb:29:in `call'
3247
+ /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/query_cache.rb:34:in `cache'
3248
+ /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/query_cache.rb:9:in `cache'
3249
+ /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/query_cache.rb:28:in `call'
3250
+ /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:361:in `call'
3251
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/string_coercion.rb:25:in `call'
3252
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/head.rb:9:in `call'
3253
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/methodoverride.rb:24:in `call'
3254
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/params_parser.rb:15:in `call'
3255
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/session/cookie_store.rb:93:in `call'
3256
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/failsafe.rb:26:in `call'
3257
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/lock.rb:11:in `call'
3258
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/lock.rb:11:in `synchronize'
3259
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/lock.rb:11:in `call'
3260
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/dispatcher.rb:114:in `call'
3261
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/reloader.rb:34:in `run'
3262
+ /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/dispatcher.rb:108:in `call'
3263
+ /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/rack/static.rb:31:in `call'
3264
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/urlmap.rb:46:in `call'
3265
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/urlmap.rb:40:in `each'
3266
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/urlmap.rb:40:in `call'
3267
+ /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/rack/log_tailer.rb:17:in `call'
3268
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/content_length.rb:13:in `call'
3269
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/chunked.rb:15:in `call'
3270
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/handler/mongrel.rb:64:in `process'
3271
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:159:in `process_client'
3272
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:in `each'
3273
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:in `process_client'
3274
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `run'
3275
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `initialize'
3276
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `new'
3277
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `run'
3278
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `initialize'
3279
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `new'
3280
+ /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `run'
3281
+ /usr/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/handler/mongrel.rb:34:in `run'
3282
+ /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/commands/server.rb:111
3283
+ /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
3284
+ /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
3285
+ script/server:3
3286
+
3287
+ ActionView::TemplateError (compile error
3288
+ /home/dave/workspace/branston/lib/branston/app/views/stories/_story.html.erb:8: syntax error, unexpected ';'
3289
+ ; host = ; @output_buffer.concat "\n "
3290
+ ^) on line #8 of app/views/stories/_story.html.erb:
3291
+ 5: <%= in_place_editor_field 'story', 'title', {}, :url => {
3292
+ 6: :action => "set_story_title", :id => @story.id,
3293
+ 7: :iteration_id => @iteration.to_param } %>
3294
+ 8: <% host = %>
3295
+ 9: <%= clippy("branston -f -g #{@story.to_param} -b #{request.host} -p #{request.port} ") %>
3296
+ 10: <%= link_to image_tag("/images/icons/delete_icon_20x19.png", :alt => "Delete"),
3297
+ 11: iteration_story_path(@iteration, @story), :confirm => 'Delete this story?',
3298
+
3299
+ app/views/stories/_story.html.erb:64:in `compile!'
3300
+ app/views/stories/index.html.erb:45
3301
+ app/views/stories/index.html.erb:44
3302
+ app/controllers/stories_controller.rb:43:in `index'
3303
+
3304
+ Rendered rescues/_trace (74.6ms)
3305
+ Rendered rescues/_request_and_response (0.4ms)
3306
+ Rendering rescues/layout (internal_server_error)
3307
+
3308
+
3309
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:17:08) [GET]
3310
+ Parameters: {"iteration_id"=>"1"}
3311
+ User Load (0.4ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3312
+ Iteration Load (0.4ms) SELECT * FROM "iterations" 
3313
+ Iteration Load (0.3ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3314
+ Rendering template within layouts/main
3315
+ Rendering stories/index
3316
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3317
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3318
+ Story Load (0.1ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3319
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3320
+ Story Load (1.1ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3321
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3322
+ Rendered stories/_story (23.2ms)
3323
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3324
+ Rendered stories/_story (13.4ms)
3325
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3326
+ Rendered stories/_story (15.2ms)
3327
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3328
+ Rendered stories/_story (12.7ms)
3329
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3330
+ Rendered layouts/_meta (0.1ms)
3331
+ Rendered layouts/_header (0.2ms)
3332
+ Rendered layouts/_footer (0.4ms)
3333
+ Completed in 271ms (View: 88, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3334
+
3335
+
3336
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:18:31) [GET]
3337
+ Parameters: {"iteration_id"=>"1"}
3338
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3339
+ Iteration Load (0.5ms) SELECT * FROM "iterations" 
3340
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3341
+ Rendering template within layouts/main
3342
+ Rendering stories/index
3343
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3344
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3345
+ Story Load (0.1ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3346
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3347
+ Story Load (1.0ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3348
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3349
+ Rendered stories/_story (22.4ms)
3350
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3351
+ Rendered stories/_story (12.8ms)
3352
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3353
+ Rendered stories/_story (13.6ms)
3354
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3355
+ Rendered stories/_story (12.8ms)
3356
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3357
+ Rendered layouts/_meta (0.1ms)
3358
+ Rendered layouts/_header (0.2ms)
3359
+ Rendered layouts/_footer (0.4ms)
3360
+ Completed in 138ms (View: 84, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3361
+
3362
+
3363
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:19:24) [GET]
3364
+ Parameters: {"iteration_id"=>"1"}
3365
+ User Load (0.4ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3366
+ Iteration Load (0.5ms) SELECT * FROM "iterations" 
3367
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3368
+ Rendering template within layouts/main
3369
+ Rendering stories/index
3370
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3371
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3372
+ Story Load (0.1ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3373
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3374
+ Story Load (1.1ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3375
+ User Load (0.7ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3376
+ Rendered stories/_story (24.1ms)
3377
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3378
+ Rendered stories/_story (14.1ms)
3379
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3380
+ Rendered stories/_story (15.1ms)
3381
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3382
+ Rendered stories/_story (13.6ms)
3383
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3384
+ Rendered layouts/_meta (0.1ms)
3385
+ Rendered layouts/_header (0.2ms)
3386
+ Rendered layouts/_footer (0.4ms)
3387
+ Completed in 248ms (View: 196, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3388
+
3389
+
3390
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:19:33) [GET]
3391
+ Parameters: {"iteration_id"=>"1"}
3392
+ User Load (0.4ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3393
+ Iteration Load (0.4ms) SELECT * FROM "iterations" 
3394
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3395
+ Rendering template within layouts/main
3396
+ Rendering stories/index
3397
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3398
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3399
+ Story Load (0.2ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3400
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3401
+ Story Load (1.1ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3402
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3403
+ Rendered stories/_story (27.6ms)
3404
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3405
+ Rendered stories/_story (15.2ms)
3406
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3407
+ Rendered stories/_story (16.0ms)
3408
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3409
+ Rendered stories/_story (12.8ms)
3410
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3411
+ Rendered layouts/_meta (0.1ms)
3412
+ Rendered layouts/_header (0.2ms)
3413
+ Rendered layouts/_footer (0.4ms)
3414
+ Completed in 271ms (View: 97, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3415
+
3416
+
3417
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:21:02) [GET]
3418
+ Parameters: {"iteration_id"=>"1"}
3419
+ User Load (0.4ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3420
+ Iteration Load (0.5ms) SELECT * FROM "iterations" 
3421
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3422
+ Rendering template within layouts/main
3423
+ Rendering stories/index
3424
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3425
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3426
+ Story Load (0.1ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3427
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3428
+ Story Load (1.0ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3429
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3430
+ Rendered stories/_story (22.4ms)
3431
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3432
+ Rendered stories/_story (12.3ms)
3433
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3434
+ Rendered stories/_story (13.2ms)
3435
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3436
+ Rendered stories/_story (12.6ms)
3437
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3438
+ Rendered layouts/_meta (0.1ms)
3439
+ Rendered layouts/_header (0.2ms)
3440
+ Rendered layouts/_footer (0.4ms)
3441
+ Completed in 138ms (View: 83, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3442
+
3443
+
3444
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:22:04) [GET]
3445
+ Parameters: {"iteration_id"=>"1"}
3446
+ User Load (0.5ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3447
+ Iteration Load (0.5ms) SELECT * FROM "iterations" 
3448
+ Iteration Load (0.5ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3449
+ Rendering template within layouts/main
3450
+ Rendering stories/index
3451
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3452
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3453
+ Story Load (0.1ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3454
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3455
+ Story Load (1.3ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3456
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3457
+ Rendered stories/_story (26.4ms)
3458
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3459
+ Rendered stories/_story (15.0ms)
3460
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3461
+ Rendered stories/_story (15.6ms)
3462
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3463
+ Rendered stories/_story (12.7ms)
3464
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3465
+ Rendered layouts/_meta (0.1ms)
3466
+ Rendered layouts/_header (0.2ms)
3467
+ Rendered layouts/_footer (0.4ms)
3468
+ Completed in 263ms (View: 207, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3469
+
3470
+
3471
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:22:18) [GET]
3472
+ Parameters: {"iteration_id"=>"1"}
3473
+ User Load (0.4ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3474
+ Iteration Load (0.4ms) SELECT * FROM "iterations" 
3475
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3476
+ Rendering template within layouts/main
3477
+ Rendering stories/index
3478
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3479
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3480
+ Story Load (0.2ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3481
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3482
+ Story Load (1.1ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3483
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3484
+ Rendered stories/_story (23.6ms)
3485
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3486
+ Rendered stories/_story (13.4ms)
3487
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3488
+ Rendered stories/_story (14.9ms)
3489
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3490
+ Rendered stories/_story (12.9ms)
3491
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3492
+ Rendered layouts/_meta (0.1ms)
3493
+ Rendered layouts/_header (0.2ms)
3494
+ Rendered layouts/_footer (0.4ms)
3495
+ Completed in 267ms (View: 89, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3496
+
3497
+
3498
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:22:29) [GET]
3499
+ Parameters: {"iteration_id"=>"1"}
3500
+ User Load (0.5ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3501
+ Iteration Load (0.5ms) SELECT * FROM "iterations" 
3502
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3503
+ Rendering template within layouts/main
3504
+ Rendering stories/index
3505
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3506
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3507
+ Story Load (0.2ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3508
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3509
+ Story Load (1.1ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3510
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3511
+ Rendered stories/_story (22.4ms)
3512
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3513
+ Rendered stories/_story (12.3ms)
3514
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3515
+ Rendered stories/_story (13.5ms)
3516
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3517
+ Rendered stories/_story (13.3ms)
3518
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3519
+ Rendered layouts/_meta (0.1ms)
3520
+ Rendered layouts/_header (0.2ms)
3521
+ Rendered layouts/_footer (12.6ms)
3522
+ Completed in 251ms (View: 196, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3523
+
3524
+
3525
+ Processing ScenariosController#index (for 127.0.0.1 at 2010-01-07 16:25:05) [GET]
3526
+ Parameters: {"authenticity_token"=>"2vLNrAJRQ8dKqgkVAhzA6SkE+MBbZnZ8+1M9y9zFhkI=", "story_id"=>"add-video", "iteration_id"=>"1"}
3527
+ User Load (0.4ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3528
+ Story Load (0.7ms) SELECT * FROM "stories" WHERE ("stories"."slug" = 'add-video') LIMIT 1
3529
+ Iteration Load (0.4ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3530
+ Rendering scenarios/index
3531
+ Scenario Load (0.6ms) SELECT * FROM "scenarios" WHERE ("scenarios".story_id = 3) 
3532
+ Rendered scenarios/_scenario (8.1ms)
3533
+ Rendered scenarios/_scenarios (20.4ms)
3534
+ Completed in 226ms (View: 23, DB: 2) | 200 OK [http://localhost/iterations/1/stories/add-video/scenarios?authenticity_token=2vLNrAJRQ8dKqgkVAhzA6SkE%2BMBbZnZ8%2B1M9y9zFhkI%3D]
3535
+
3536
+
3537
+ Processing StoriesController#index (for 127.0.0.1 at 2010-01-07 16:27:44) [GET]
3538
+ Parameters: {"iteration_id"=>"1"}
3539
+ User Load (0.4ms) SELECT * FROM "users" WHERE ("users"."id" = 1) LIMIT 1
3540
+ Iteration Load (0.5ms) SELECT * FROM "iterations" 
3541
+ Iteration Load (0.5ms) SELECT * FROM "iterations" WHERE ("iterations"."id" = 1) 
3542
+ Rendering template within layouts/main
3543
+ Rendering stories/index
3544
+ SQL (0.3ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3545
+ SQL (0.2ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3546
+ Story Load (0.2ms) SELECT * FROM "stories" WHERE ((status = "in_progress") AND (iteration_id = 1)) 
3547
+ CACHE (0.0ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3548
+ Story Load (1.2ms) SELECT * FROM "stories" WHERE ((status = "new") AND (iteration_id = 1)) 
3549
+ User Load (0.6ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3550
+ Rendered stories/_story (145.9ms)
3551
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3552
+ Rendered stories/_story (14.4ms)
3553
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3554
+ Rendered stories/_story (15.5ms)
3555
+ CACHE (0.0ms) SELECT * FROM "users" WHERE ("users"."id" = 1) 
3556
+ Rendered stories/_story (14.3ms)
3557
+ SQL (0.4ms) SELECT count(*) AS count_all FROM "stories" WHERE ((status = "completed") AND (iteration_id = 1)) 
3558
+ Rendered layouts/_meta (0.1ms)
3559
+ Rendered layouts/_header (0.2ms)
3560
+ Rendered layouts/_footer (0.4ms)
3561
+ Completed in 261ms (View: 210, DB: 4) | 200 OK [http://localhost/iterations/1/stories]
3562
+ SQL (1.1ms)  SELECT name
3563
+ FROM sqlite_master
3564
+ WHERE type = 'table' AND NOT name = 'sqlite_sequence'
3565
+ 
3566
+ SQL (0.8ms) SELECT version FROM schema_migrations
3567
+ Migrating to CreateUsers (20091127114237)
3568
+ Migrating to CreateIterations (20091127120627)
3569
+ Migrating to CreateStories (20091127122422)
3570
+ Migrating to CreateUserRoles (20091127131037)
3571
+ Migrating to CreateParticipations (20091127144645)
3572
+ Migrating to CreateScenarios (20091127164217)
3573
+ Migrating to CreatePreconditions (20091127164446)
3574
+ Migrating to CreateOutcomes (20091127164705)
3575
+ Migrating to AddTitleToStories (20091127172849)
3576
+ Migrating to AddStoryIdToUserRole (20091127172950)
3577
+ Migrating to AddAuthorIdToStory (20091127173744)
3578
+ Migrating to CreateReleases (20091202105555)
3579
+ Migrating to AddSlugToStories (20091204173634)
3580
+ Migrating to AddStatusToStory (20091223100903)
3581
+ SQL (0.3ms) select sqlite_version(*)
3582
+ SQL (0.7ms)  SELECT name
3583
+ FROM sqlite_master
3584
+ WHERE type = 'table' AND NOT name = 'sqlite_sequence'
3585
+ 
3586
+ SQL (0.7ms) SELECT version FROM schema_migrations
3587
+ SQL (0.6ms)  SELECT name
3588
+ FROM sqlite_master
3589
+ WHERE type = 'table' AND NOT name = 'sqlite_sequence'
3590
+ 
3591
+ SQL (0.1ms) PRAGMA index_list("iterations")
3592
+ SQL (0.1ms) PRAGMA index_list("outcomes")
3593
+ SQL (0.1ms) PRAGMA index_list("participations")
3594
+ SQL (0.2ms) PRAGMA index_list("preconditions")
3595
+ SQL (0.1ms) PRAGMA index_list("releases")
3596
+ SQL (0.1ms) PRAGMA index_list("scenarios")
3597
+ SQL (0.1ms) PRAGMA index_list("stories")
3598
+ SQL (0.1ms) PRAGMA index_list("user_roles")
3599
+ SQL (0.2ms) PRAGMA index_list("users")
3600
+ SQL (0.2ms) PRAGMA index_info('index_users_on_login')
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: branston
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.4.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - dave.hrycyszyn@headlondon.com
@@ -269,6 +269,7 @@ files:
269
269
  - lib/branston/public/500.html
270
270
  - lib/branston/public/blank_iframe.html
271
271
  - lib/branston/public/favicon.ico
272
+ - lib/branston/public/flash/clippy.swf
272
273
  - lib/branston/public/images/agplv3.png
273
274
  - lib/branston/public/images/branston_pickle_bg.png
274
275
  - lib/branston/public/images/calendar_date_select/calendar.gif