branston 0.4.2 → 0.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. data/README.rdoc +44 -16
  2. data/bin/branston +15 -0
  3. data/lib/branston/app/controllers/application_controller.rb +17 -2
  4. data/lib/branston/app/controllers/iterations_controller.rb +15 -0
  5. data/lib/branston/app/controllers/outcomes_controller.rb +14 -0
  6. data/lib/branston/app/controllers/preconditions_controller.rb +14 -0
  7. data/lib/branston/app/controllers/releases_controller.rb +14 -0
  8. data/lib/branston/app/controllers/scenarios_controller.rb +14 -0
  9. data/lib/branston/app/controllers/sessions_controller.rb +14 -0
  10. data/lib/branston/app/controllers/stories_controller.rb +15 -44
  11. data/lib/branston/app/controllers/user_roles_controller.rb +14 -0
  12. data/lib/branston/app/controllers/users_controller.rb +14 -0
  13. data/lib/branston/app/models/iteration.rb +16 -0
  14. data/lib/branston/app/models/outcome.rb +14 -0
  15. data/lib/branston/app/models/participation.rb +14 -0
  16. data/lib/branston/app/models/precondition.rb +14 -0
  17. data/lib/branston/app/models/release.rb +18 -3
  18. data/lib/branston/app/models/scenario.rb +14 -0
  19. data/lib/branston/app/models/story.rb +24 -10
  20. data/lib/branston/app/models/user.rb +18 -3
  21. data/lib/branston/app/models/user_role.rb +14 -0
  22. data/lib/branston/app/views/layouts/_footer.html.erb +3 -2
  23. data/lib/branston/coverage/app-controllers-application_controller_rb.html +105 -15
  24. data/lib/branston/coverage/app-controllers-iterations_controller_rb.html +216 -108
  25. data/lib/branston/coverage/app-controllers-outcomes_controller_rb.html +200 -104
  26. data/lib/branston/coverage/app-controllers-preconditions_controller_rb.html +202 -154
  27. data/lib/branston/coverage/app-controllers-releases_controller_rb.html +190 -94
  28. data/lib/branston/coverage/app-controllers-scenarios_controller_rb.html +213 -105
  29. data/lib/branston/coverage/app-controllers-sessions_controller_rb.html +146 -44
  30. data/lib/branston/coverage/app-controllers-stories_controller_rb.html +328 -112
  31. data/lib/branston/coverage/app-controllers-user_roles_controller_rb.html +208 -88
  32. data/lib/branston/coverage/app-controllers-users_controller_rb.html +125 -29
  33. data/lib/branston/coverage/app-helpers-application_helper_rb.html +25 -7
  34. data/lib/branston/coverage/app-helpers-iterations_helper_rb.html +238 -10
  35. data/lib/branston/coverage/app-helpers-outcomes_helper_rb.html +1 -1
  36. data/lib/branston/coverage/app-helpers-preconditions_helper_rb.html +1 -1
  37. data/lib/branston/coverage/app-helpers-releases_helper_rb.html +1 -1
  38. data/lib/branston/coverage/app-helpers-sessions_helper_rb.html +1 -1
  39. data/lib/branston/coverage/app-helpers-stories_helper_rb.html +1 -1
  40. data/lib/branston/coverage/app-helpers-user_roles_helper_rb.html +1 -1
  41. data/lib/branston/coverage/app-models-iteration_rb.html +192 -24
  42. data/lib/branston/coverage/app-models-outcome_rb.html +102 -18
  43. data/lib/branston/coverage/app-models-participation_rb.html +93 -9
  44. data/lib/branston/coverage/app-models-precondition_rb.html +107 -17
  45. data/lib/branston/coverage/app-models-release_rb.html +99 -9
  46. data/lib/branston/coverage/app-models-scenario_rb.html +100 -16
  47. data/lib/branston/coverage/app-models-story_rb.html +354 -24
  48. data/lib/branston/coverage/app-models-user_rb.html +173 -59
  49. data/lib/branston/coverage/app-models-user_role_rb.html +93 -9
  50. data/lib/branston/coverage/index.html +132 -116
  51. data/lib/branston/coverage/lib-client_rb.html +537 -0
  52. data/lib/branston/coverage/lib-faker_extras_rb.html +1 -1
  53. data/lib/branston/coverage/lib-story_generator_rb.html +43 -49
  54. data/lib/branston/db/development.sqlite3 +0 -0
  55. data/lib/branston/db/test.sqlite3 +0 -0
  56. data/lib/branston/log/development.log +1516 -0
  57. data/lib/branston/log/test.log +10156 -0
  58. data/lib/branston/public/images/agplv3.png +0 -0
  59. data/lib/branston/test/functional/stories_controller_test.rb +33 -32
  60. metadata +5 -5
  61. data/LICENSE +0 -20
@@ -1,31 +1,31 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class StoriesControllerTest < ActionController::TestCase
4
-
4
+
5
5
  context "The StoriesController" do
6
6
  setup do
7
7
  @iteration = Iteration.make
8
8
  @story = Factory.make_story(:iteration => @iteration)
9
9
  @in_progress = Factory.make_story(:iteration => @iteration, :status => "in_progress")
10
10
  @completed = Factory.make_story(:iteration => @iteration, :status => "completed")
11
-
11
+
12
12
  @some_other_iteration = Iteration.make
13
13
  @later = Story.make(:iteration => @some_other_iteration)
14
14
  end
15
-
15
+
16
16
  teardown do
17
17
  feature_file = FEATURE_PATH + @story.feature_filename
18
18
  FileUtils.rm feature_file if File.exists? feature_file
19
19
  step_file = FEATURE_PATH + @story.step_filename
20
20
  FileUtils.rm step_file if File.exists? step_file
21
21
  end
22
-
22
+
23
23
  context "with a logged-in user" do
24
24
  setup do
25
25
  @user = User.make
26
26
  login_as(@user)
27
27
  end
28
-
28
+
29
29
  should "show a list of all the stories in the current iteration" do
30
30
  get :index, :iteration_id => @iteration.to_param
31
31
  assert_response :success
@@ -39,27 +39,27 @@ class StoriesControllerTest < ActionController::TestCase
39
39
  assert assigns(:current_stories).include? @in_progress
40
40
  assert assigns(:completed_stories).include? @completed
41
41
  end
42
-
42
+
43
43
  should "show a form to edit stories" do
44
44
  get :edit, :id => @story.to_param, :iteration_id => @iteration.to_param
45
45
  assert_response :success
46
46
  assert assigns(:iterations)
47
47
  end
48
-
48
+
49
49
  should "show a form to add stories" do
50
50
  get :new, :iteration_id => @iteration.to_param
51
51
  assert_response :success
52
52
  assert assigns(:iterations)
53
53
  end
54
-
54
+
55
55
  should "delete a story" do
56
56
  assert_difference('Story.count', -1) do
57
57
  delete :destroy, :id => @story.to_param, :iteration_id => @iteration.to_param
58
58
  end
59
-
59
+
60
60
  assert_redirected_to iteration_stories_path(@iteration)
61
61
  end
62
-
62
+
63
63
  should "generate the cucumber feature file for a story" do
64
64
  get :generate_feature, :id => @story.to_param, :path => 'test/features/',
65
65
  :iteration_id => @iteration.to_param
@@ -67,56 +67,56 @@ class StoriesControllerTest < ActionController::TestCase
67
67
  assert File.exists? FEATURE_PATH + @story.feature_filename
68
68
  assert File.exists? FEATURE_PATH + @story.step_filename
69
69
  end
70
-
70
+
71
71
  context "creating a story" do
72
-
72
+
73
73
  context "with valid params" do
74
74
  setup do
75
75
  assert_difference("Story.count") do
76
76
  post :create, :story => Story.plan, :iteration_id => @iteration.to_param
77
77
  end
78
78
  end
79
-
79
+
80
80
  should "redirect to show" do
81
81
  assert_redirected_to iteration_stories_path(@iteration)
82
82
  end
83
-
83
+
84
84
  should "be associated with an iteration" do
85
- assert assigns(:story).iteration
85
+ assert_equal assigns(:story).iteration, @iteration
86
86
  end
87
-
87
+
88
88
  should "remember who authored it" do
89
89
  assert_equal @user, assigns(:story).author
90
90
  end
91
-
91
+
92
92
  context "including an iteration id" do
93
93
  setup do
94
94
  assert_difference("Story.count") do
95
- post :create, :story => Story.plan(:in_progress),
95
+ post :create, :story => Story.plan(:in_progress),
96
96
  :iteration_id => @iteration.to_param
97
97
  end
98
98
  end
99
-
99
+
100
100
  should "be associated with an iteration" do
101
101
  assert assigns(:story).iteration
102
102
  end
103
103
  end
104
104
  end
105
-
105
+
106
106
  context "with invalid params" do
107
107
  setup do
108
108
  assert_no_difference("Story.count") do
109
109
  post :create, :story => {}, :iteration_id => @iteration.to_param
110
110
  end
111
111
  end
112
-
112
+
113
113
  should "redisplay" do
114
114
  assert_template 'new'
115
115
  assert assigns(:iterations)
116
116
  end
117
117
  end
118
118
  end
119
-
119
+
120
120
  context "updating a story" do
121
121
  context "with valid parameters" do
122
122
  setup do
@@ -125,40 +125,41 @@ class StoriesControllerTest < ActionController::TestCase
125
125
  :iteration_id => @iteration.to_param }
126
126
  end
127
127
  end
128
-
128
+
129
129
  should "redirect to show" do
130
130
  assert_redirected_to iteration_story_path(@iteration, @story)
131
131
  end
132
-
132
+
133
133
  end
134
-
134
+
135
135
  context "with invalid parameters" do
136
136
  setup do
137
137
  put :update, :id => @story.to_param, :story => {:description => ""},
138
138
  :iteration_id => @iteration.to_param
139
139
  end
140
-
140
+
141
141
  should "redisplay the edit template" do
142
142
  assert_template "edit"
143
143
  assert assigns(:iterations)
144
144
  end
145
145
  end
146
146
  end
147
-
147
+
148
148
  end
149
-
149
+
150
150
  context "Without logging in, the StoriesController" do
151
-
151
+
152
152
  should "show details about a story" do
153
153
  get :show, :id => @story.to_param, :iteration_id => @iteration.to_param
154
154
  assert_response :success
155
155
  end
156
-
156
+
157
157
  should "fail gracefully if the slug is not found" do
158
158
  get :show, :id => 'none-such-story', :iteration_id => @iteration.to_param
159
159
  assert_response 404
160
160
  end
161
- end
162
-
161
+ end
162
+
163
163
  end
164
164
  end
165
+
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.2
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - dave.hrycyszyn@headlondon.com
@@ -74,14 +74,13 @@ dependencies:
74
74
  - !ruby/object:Gem::Version
75
75
  version: 1.4.0
76
76
  version:
77
- description: Cucumber and more!
77
+ description: An agile user story tracker that generates gherkin files and step definitions for use with the cucumber testing framework.
78
78
  email: dave.hrycyszyn@headlondon.com
79
79
  executables:
80
80
  - branston
81
81
  extensions: []
82
82
 
83
83
  extra_rdoc_files:
84
- - LICENSE
85
84
  - README.rdoc
86
85
  files:
87
86
  - lib/branston/README
@@ -221,6 +220,7 @@ files:
221
220
  - lib/branston/coverage/index.html
222
221
  - lib/branston/coverage/jquery-1.3.2.min.js
223
222
  - lib/branston/coverage/jquery.tablesorter.min.js
223
+ - lib/branston/coverage/lib-client_rb.html
224
224
  - lib/branston/coverage/lib-faker_extras_rb.html
225
225
  - lib/branston/coverage/lib-story_generator_rb.html
226
226
  - lib/branston/coverage/print.css
@@ -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/images/agplv3.png
272
273
  - lib/branston/public/images/branston_pickle_bg.png
273
274
  - lib/branston/public/images/calendar_date_select/calendar.gif
274
275
  - lib/branston/public/images/icons/back_icon_30x23.png
@@ -569,7 +570,6 @@ files:
569
570
  - lib/branston/vendor/plugins/state_machine/test/unit/state_machine_test.rb
570
571
  - lib/branston/vendor/plugins/state_machine/test/unit/state_test.rb
571
572
  - lib/branston/vendor/plugins/state_machine/test/unit/transition_test.rb
572
- - LICENSE
573
573
  - README.rdoc
574
574
  has_rdoc: true
575
575
  homepage: http://github.com/futurechimp/branston
@@ -598,6 +598,6 @@ rubyforge_project:
598
598
  rubygems_version: 1.3.5
599
599
  signing_key:
600
600
  specification_version: 3
601
- summary: An experiment in turning user stories into cucumber files
601
+ summary: An experiment in turning agile user stories into cucumber files
602
602
  test_files: []
603
603
 
data/LICENSE DELETED
@@ -1,20 +0,0 @@
1
- Copyright (c) 2009 dave@boomer
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining
4
- a copy of this software and associated documentation files (the
5
- "Software"), to deal in the Software without restriction, including
6
- without limitation the rights to use, copy, modify, merge, publish,
7
- distribute, sublicense, and/or sell copies of the Software, and to
8
- permit persons to whom the Software is furnished to do so, subject to
9
- the following conditions:
10
-
11
- The above copyright notice and this permission notice shall be
12
- included in all copies or substantial portions of the Software.
13
-
14
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.