git_workflow 0.0.5

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/README.markdown +77 -0
  2. data/Rakefile +33 -0
  3. data/bin/git-finish +4 -0
  4. data/bin/git-start +4 -0
  5. data/bin/git-workflow-setup +4 -0
  6. data/features/core_functionality/4049578_need_the_ability_to_start_a_new_branch.feature +15 -0
  7. data/features/core_functionality/4049611_need_the_ability_to_finish_a_specified_branch.feature +17 -0
  8. data/features/core_functionality/4056359_start_with_local_branch_already_present.feature +16 -0
  9. data/features/core_functionality/4056363_finish_the_current_branch.feature +17 -0
  10. data/features/core_functionality/4056389_changes_to_pt_story_name_cause_branch_issues.feature +25 -0
  11. data/features/core_functionality/4135658_control_output_verbosity_using_v_switch.feature +32 -0
  12. data/features/core_functionality/4468313_get_config_value_for_is_producing_an_error_log.feature +43 -0
  13. data/features/extensions/4058326_display_story_description_on_start.feature +14 -0
  14. data/features/git_branching/4135501_allow_branch_start_point_to_be_specified_from_command_line.feature +27 -0
  15. data/features/hooks/4069174_investigate_the_effort_required_to_add_pre_amp_post_hooks.feature +24 -0
  16. data/features/hooks/4199841_need_hooks_for_my_workflow.feature +51 -0
  17. data/features/hooks/4199845_need_hooks_for_sanger_workflow.feature +66 -0
  18. data/features/hooks/4205913_output_from_rake_tests_should_be_seen.feature +19 -0
  19. data/features/hooks/4424828_git_start_is_missing_pt_integration_for_my_hooks.feature +15 -0
  20. data/features/pivotal_tracker_api/4133291_chores_go_straight_to_accepted_not_to_finished.feature +15 -0
  21. data/features/release/4132264_fix_the_libxml_warnings_from_nokogiri.feature +20 -0
  22. data/features/step_definitions/aruba_extensions.rb +4 -0
  23. data/features/step_definitions/configuration_steps.rb +38 -0
  24. data/features/step_definitions/git_steps.rb +102 -0
  25. data/features/step_definitions/misc_steps.rb +3 -0
  26. data/features/step_definitions/pivotal_tracker_steps.rb +43 -0
  27. data/features/step_definitions/project_code_steps.rb +35 -0
  28. data/features/support/aruba.rb +1 -0
  29. data/features/support/hooks/configuration.rb +4 -0
  30. data/features/support/hooks/environment.rb +49 -0
  31. data/features/support/hooks/pivotal_tracker.rb +170 -0
  32. data/lib/git_workflow.rb +5 -0
  33. data/lib/git_workflow/callbacks.rb +16 -0
  34. data/lib/git_workflow/callbacks/pivotal_tracker_support.rb +64 -0
  35. data/lib/git_workflow/callbacks/remote_git_branch_support.rb +9 -0
  36. data/lib/git_workflow/callbacks/styles/debug.rb +58 -0
  37. data/lib/git_workflow/callbacks/styles/default.rb +43 -0
  38. data/lib/git_workflow/callbacks/styles/mine.rb +52 -0
  39. data/lib/git_workflow/callbacks/styles/sanger.rb +48 -0
  40. data/lib/git_workflow/callbacks/test_code_support.rb +29 -0
  41. data/lib/git_workflow/command_line.rb +46 -0
  42. data/lib/git_workflow/commands.rb +4 -0
  43. data/lib/git_workflow/commands/base.rb +31 -0
  44. data/lib/git_workflow/commands/finish.rb +36 -0
  45. data/lib/git_workflow/commands/setup.rb +157 -0
  46. data/lib/git_workflow/commands/start.rb +30 -0
  47. data/lib/git_workflow/configuration.rb +93 -0
  48. data/lib/git_workflow/core_ext.rb +106 -0
  49. data/lib/git_workflow/git.rb +143 -0
  50. data/lib/git_workflow/logger.yaml +27 -0
  51. data/lib/git_workflow/logging.rb +77 -0
  52. data/lib/git_workflow/story.rb +96 -0
  53. data/spec/core_functionality/4056539_support_http_proxy_spec.rb +68 -0
  54. data/spec/core_functionality/4058365_bad_request_on_story_update_spec.rb +13 -0
  55. data/spec/core_functionality/4058394_make_commands_more_verbose_spec.rb +41 -0
  56. data/spec/core_functionality/4058719_error_if_none_of_the_required_configuration_values_are_set_spec.rb +21 -0
  57. data/spec/core_functionality/4058861_git_config_returns_empty_strings_which_should_be_nil_spec.rb +59 -0
  58. data/spec/core_functionality/4172431_add_git_workflow_setup_command_to_make_setup_easier_spec.rb +148 -0
  59. data/spec/core_functionality/4199841_need_callbacks_for_my_workflow_spec.rb +97 -0
  60. data/spec/extensions/4199841_need_callbacks_for_my_workflow_spec.rb +167 -0
  61. data/spec/extensions/4205913_output_from_rake_tests_should_be_seen_spec.rb +34 -0
  62. data/spec/git_branching/4058723_branches_end_in_if_the_last_character_is_invalid_spec.rb +40 -0
  63. data/spec/git_branching/4059824_code_is_not_using_workflow_localbranchconvention_to_decode_branch_names_on_finish_spec.rb +115 -0
  64. data/spec/git_branching/4216087_support_pushing_branches_spec.rb +44 -0
  65. data/spec/hooks/4199845_need_hooks_for_sanger_workflow_spec.rb +27 -0
  66. data/spec/pivotal_tracker_api/4056381_pt_api_token_not_being_passed_in_headers_spec.rb +40 -0
  67. data/spec/pivotal_tracker_api/4056638_library_code_using_localhost_spec.rb +16 -0
  68. data/spec/pivotal_tracker_api/4056661_content_type_header_should_be_text_xml_on_updates_spec.rb +16 -0
  69. data/spec/pivotal_tracker_api/4058718_if_pt_username_is_not_set_use_user_name_spec.rb +26 -0
  70. data/spec/pivotal_tracker_api/4146016_decode_the_xml_encoded_text_of_description_and_name_spec.rb +63 -0
  71. data/spec/shared_examples/configuration.rb +10 -0
  72. data/spec/shared_examples/story.rb +17 -0
  73. data/spec/spec_helper.rb +18 -0
  74. metadata +220 -0
@@ -0,0 +1,44 @@
1
+ require 'spec_helper'
2
+
3
+ class GitWorkflow::Configuration
4
+ def self.for_testing
5
+ new
6
+ end
7
+ end
8
+
9
+ describe GitWorkflow::Configuration do
10
+ before(:each) do
11
+ @configuration = described_class.for_testing
12
+ end
13
+
14
+ describe '#remote_branch_convention' do
15
+ it 'uses the workflow.remotebranchconvention setting' do
16
+ @configuration.should_receive(:get_config_value_for!).with('workflow.remotebranchconvention').and_return('${number}_foo')
17
+ @configuration.remote_branch_convention
18
+ end
19
+ end
20
+ end
21
+
22
+ class GitWorkflow::Git::Repository
23
+ def self.for_testing
24
+ new
25
+ end
26
+ end
27
+
28
+ describe GitWorkflow::Git::Repository do
29
+ before(:each) do
30
+ @repository = described_class.for_testing
31
+ end
32
+
33
+ describe '#push' do
34
+ it 'pushes the branch to origin' do
35
+ @repository.should_receive(:execute_command).with('git push origin foo')
36
+ @repository.push('foo')
37
+ end
38
+
39
+ it 'raises BranchError if the push fails' do
40
+ @repository.should_receive(:execute_command).with('git push origin foo').and_raise(Execution::CommandFailure.new('command', :failure))
41
+ lambda { @repository.push('foo') }.should raise_error(GitWorkflow::Git::Repository::BranchError)
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,27 @@
1
+ require 'spec_helper'
2
+ require 'git_workflow/callbacks/styles/sanger'
3
+
4
+ describe GitWorkflow::Callbacks::Styles::Sanger::StartBehaviour do
5
+ before(:each) do
6
+ @behaviour = Class.new
7
+ @behaviour.extend(GitWorkflow::Callbacks::Styles::Sanger::StartBehaviour)
8
+ end
9
+
10
+ describe '#start' do
11
+ after(:each) do
12
+ story = mock('Story')
13
+ story.stub(:branch_name).and_return('story_branch')
14
+ @behaviour.should_receive(:checkout_or_create_branch).with('story_branch', @expected_branch_point)
15
+
16
+ @behaviour.start(story, @branch_point)
17
+ end
18
+
19
+ it 'creates the branch from the default start point' do
20
+ @branch_point, @expected_branch_point = nil, 'master'
21
+ end
22
+
23
+ it 'creates the branch from the specified start point' do
24
+ @branch_point = @expected_branch_point = 'foobar'
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,40 @@
1
+ require 'spec_helper'
2
+ require 'git_workflow/callbacks/pivotal_tracker_support'
3
+
4
+ module GitWorkflow::Callbacks::PivotalTrackerSupport
5
+ public :pivotal_tracker_service_for
6
+ end
7
+
8
+ describe GitWorkflow::Callbacks::PivotalTrackerSupport do
9
+ before(:each) do
10
+ @command = Class.new.new
11
+ @command.stub!(:debug).with(any_args)
12
+ @command.extend(GitWorkflow::Callbacks::PivotalTrackerSupport)
13
+ end
14
+
15
+ describe '#pivotal_tracker_service_for' do
16
+ it_should_behave_like 'it needs configuration'
17
+
18
+ before(:each) do
19
+ @command.class.instance_eval do
20
+ stub!(:enable_http_proxy_if_present)
21
+ should_receive(:pivotal_tracker_url_for).with('project_id', 'story_id').and_return('url')
22
+ end
23
+
24
+ @expectation = RestClient::Resource.should_receive(:new)
25
+ end
26
+
27
+ after(:each) do
28
+ @expectation.and_return(:ok)
29
+ @command.pivotal_tracker_service_for('story_id').should == :ok
30
+ end
31
+
32
+ it 'uses the correct PT URL' do
33
+ @expectation = @expectation.with('url', anything)
34
+ end
35
+
36
+ it 'uses the users PT API token' do
37
+ @expectation = @expectation.with(anything, hash_including(:headers => hash_including('X-TrackerToken' => 'api_token')))
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,16 @@
1
+ require 'spec_helper'
2
+ require 'git_workflow/callbacks/pivotal_tracker_support'
3
+
4
+ describe GitWorkflow::Callbacks::PivotalTrackerSupport::ClassMethods do
5
+ before(:each) do
6
+ @class_methods = Object.new
7
+ @class_methods.extend(GitWorkflow::Callbacks::PivotalTrackerSupport::ClassMethods)
8
+ end
9
+
10
+ describe '.pivotal_tracker_url_for' do
11
+ it 'returns an appropriate real world URL' do
12
+ @class_methods.pivotal_tracker_url_for('project_id', 'story_id').should ==
13
+ 'http://www.pivotaltracker.com/services/v3/projects/project_id/stories/story_id'
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ require 'spec_helper'
2
+
3
+ class GitWorkflow::Story
4
+ public :service!
5
+ end
6
+
7
+ describe GitWorkflow::Story do
8
+ describe '#service!' do
9
+ it_should_behave_like 'it needs a working Story'
10
+
11
+ it 'sets the "Content-Type" header to "text/xml"' do
12
+ @service.should_receive(:put).with(anything, hash_including(:content_type => 'application/xml'))
13
+ @story.service!
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,26 @@
1
+ require 'spec_helper'
2
+
3
+ class GitWorkflow::Configuration
4
+ def self.instance_for_testing
5
+ new
6
+ end
7
+ end
8
+
9
+ describe GitWorkflow::Configuration do
10
+ describe '#username' do
11
+ before(:each) do
12
+ @configuration = described_class.instance_for_testing
13
+ end
14
+
15
+ it 'uses pt.username first' do
16
+ @configuration.should_receive(:get_config_value_for).with('pt.username').and_return('pt.username')
17
+ @configuration.username.should == 'pt.username'
18
+ end
19
+
20
+ it 'falls back to user.name otherwise' do
21
+ @configuration.should_receive(:get_config_value_for).with('pt.username').and_return(nil)
22
+ @configuration.should_receive(:get_config_value_for!).with('user.name').and_return('user.name')
23
+ @configuration.username.should == 'user.name'
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,63 @@
1
+ require 'spec_helper'
2
+
3
+ class GitWorkflow::Story
4
+ attr_reader :story_type
5
+ end
6
+
7
+ describe GitWorkflow::Story do
8
+ describe '#load_story!' do
9
+ context 'basic behaviour' do
10
+ before(:each) do
11
+ @elements = {
12
+ :story_type => 'Story Type',
13
+ :name => 'Name',
14
+ :id => 10,
15
+ :description => 'Story Description'
16
+ }
17
+
18
+ xml = Builder::XmlMarkup.new
19
+ xml.story { @elements.each { |e,v| xml.tag!(e, v.to_s) } }
20
+
21
+ service = mock('PT Service')
22
+ service.should_receive(:get).and_return(xml.target)
23
+
24
+ @story = described_class.new(service)
25
+ end
26
+
27
+ it 'properly sets story_id' do
28
+ @story.story_id.should == @elements[ :id ]
29
+ end
30
+
31
+ [ :story_type, :name, :description ].each do |attribute|
32
+ it "properly sets #{ attribute }" do
33
+ @story.send(attribute).should == @elements[ attribute ]
34
+ end
35
+ end
36
+ end
37
+
38
+ context 'encoded characters' do
39
+ before(:each) do
40
+ xml = Builder::XmlMarkup.new
41
+ xml.story {
42
+ xml.story_type('something')
43
+ xml.id('10')
44
+ xml.name('The name & something important')
45
+ xml.description('The description & something important')
46
+ }
47
+
48
+ service = mock('PT Service')
49
+ service.should_receive(:get).and_return(xml.target)
50
+
51
+ @story = described_class.new(service)
52
+ end
53
+
54
+ it 'decodes the name' do
55
+ @story.name.should == 'The name & something important'
56
+ end
57
+
58
+ it 'decodes the description' do
59
+ @story.description.should == 'The description & something important'
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,10 @@
1
+ shared_examples_for 'it needs configuration' do
2
+ before(:each) do
3
+ configuration = mock('configuration')
4
+ configuration.stub!(:username).and_return('username')
5
+ configuration.stub!(:project_id).and_return('project_id')
6
+ configuration.stub!(:api_token).and_return('api_token')
7
+ configuration.stub!(:local_branch_convention).and_return('convention')
8
+ GitWorkflow::Configuration.stub!(:instance).and_return(configuration)
9
+ end
10
+ end
@@ -0,0 +1,17 @@
1
+ shared_examples_for 'it needs a working Story' do
2
+ before(:each) do
3
+ xml = Builder::XmlMarkup.new
4
+ xml.story {
5
+ xml.name('name')
6
+ xml.id('1', :type => 'integer')
7
+ xml.description('description')
8
+ xml.story_type('story_type')
9
+ }
10
+
11
+ @service = mock('service')
12
+ @service.stub!(:get).and_return(xml.target)
13
+
14
+ @story = GitWorkflow::Story.new(@service)
15
+ end
16
+ end
17
+
@@ -0,0 +1,18 @@
1
+ require 'rubygems'
2
+ require 'git_workflow'
3
+
4
+ require 'shared_examples/configuration'
5
+ require 'shared_examples/story'
6
+
7
+ # Disable the logging output during tests
8
+ require 'log4r'
9
+ GitWorkflow::Logging.logger = logger = Log4r::Logger.new('test logger')
10
+ logger.outputters = Log4r::Outputter.stdout
11
+ logger.level = Log4r::FATAL
12
+
13
+ # Just so that the test code doesn't fail
14
+ class GitWorkflow::Commands::Base
15
+ def usage_info(options)
16
+ options.banner = 'Usage: git something'
17
+ end
18
+ end
metadata ADDED
@@ -0,0 +1,220 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: git_workflow
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 0
8
+ - 5
9
+ version: 0.0.5
10
+ platform: ruby
11
+ authors:
12
+ - Matthew Denner
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-07-01 00:00:00 +01:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: rest-client
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ segments:
28
+ - 1
29
+ - 5
30
+ - 1
31
+ version: 1.5.1
32
+ type: :runtime
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: nokogiri
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ segments:
42
+ - 1
43
+ - 4
44
+ - 2
45
+ version: 1.4.2
46
+ type: :runtime
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
49
+ name: builder
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ segments:
56
+ - 2
57
+ - 1
58
+ - 2
59
+ version: 2.1.2
60
+ type: :runtime
61
+ version_requirements: *id003
62
+ - !ruby/object:Gem::Dependency
63
+ name: POpen4
64
+ prerelease: false
65
+ requirement: &id004 !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ segments:
70
+ - 0
71
+ - 1
72
+ - 4
73
+ version: 0.1.4
74
+ type: :runtime
75
+ version_requirements: *id004
76
+ - !ruby/object:Gem::Dependency
77
+ name: highline
78
+ prerelease: false
79
+ requirement: &id005 !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ segments:
84
+ - 1
85
+ - 6
86
+ - 1
87
+ version: 1.6.1
88
+ type: :runtime
89
+ version_requirements: *id005
90
+ - !ruby/object:Gem::Dependency
91
+ name: log4r
92
+ prerelease: false
93
+ requirement: &id006 !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ segments:
98
+ - 1
99
+ - 1
100
+ - 8
101
+ version: 1.1.8
102
+ type: :runtime
103
+ version_requirements: *id006
104
+ description: Extends git with some scripts that support a tie up with Pivotal Tracker
105
+ email: matt.denner@gmail.com
106
+ executables:
107
+ - git-start
108
+ - git-finish
109
+ - git-workflow-setup
110
+ extensions: []
111
+
112
+ extra_rdoc_files:
113
+ - README.markdown
114
+ files:
115
+ - README.markdown
116
+ - Rakefile
117
+ - lib/git_workflow/callbacks/pivotal_tracker_support.rb
118
+ - lib/git_workflow/callbacks/remote_git_branch_support.rb
119
+ - lib/git_workflow/callbacks/styles/debug.rb
120
+ - lib/git_workflow/callbacks/styles/default.rb
121
+ - lib/git_workflow/callbacks/styles/mine.rb
122
+ - lib/git_workflow/callbacks/styles/sanger.rb
123
+ - lib/git_workflow/callbacks/test_code_support.rb
124
+ - lib/git_workflow/callbacks.rb
125
+ - lib/git_workflow/command_line.rb
126
+ - lib/git_workflow/commands/base.rb
127
+ - lib/git_workflow/commands/finish.rb
128
+ - lib/git_workflow/commands/setup.rb
129
+ - lib/git_workflow/commands/start.rb
130
+ - lib/git_workflow/commands.rb
131
+ - lib/git_workflow/configuration.rb
132
+ - lib/git_workflow/core_ext.rb
133
+ - lib/git_workflow/git.rb
134
+ - lib/git_workflow/logging.rb
135
+ - lib/git_workflow/story.rb
136
+ - lib/git_workflow.rb
137
+ - lib/git_workflow/logger.yaml
138
+ - bin/git-finish
139
+ - bin/git-start
140
+ - bin/git-workflow-setup
141
+ has_rdoc: yard
142
+ homepage: http://github.com/mattdenner/git_workflow
143
+ licenses: []
144
+
145
+ post_install_message:
146
+ rdoc_options:
147
+ - --charset=UTF-8
148
+ require_paths:
149
+ - lib
150
+ required_ruby_version: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ segments:
155
+ - 0
156
+ version: "0"
157
+ required_rubygems_version: !ruby/object:Gem::Requirement
158
+ requirements:
159
+ - - ">="
160
+ - !ruby/object:Gem::Version
161
+ segments:
162
+ - 1
163
+ - 3
164
+ - 6
165
+ version: 1.3.6
166
+ requirements: []
167
+
168
+ rubyforge_project:
169
+ rubygems_version: 1.3.6
170
+ signing_key:
171
+ specification_version: 3
172
+ summary: git extensions to support Pivotal Tracker
173
+ test_files:
174
+ - spec/core_functionality/4056539_support_http_proxy_spec.rb
175
+ - spec/core_functionality/4058365_bad_request_on_story_update_spec.rb
176
+ - spec/core_functionality/4058394_make_commands_more_verbose_spec.rb
177
+ - spec/core_functionality/4058719_error_if_none_of_the_required_configuration_values_are_set_spec.rb
178
+ - spec/core_functionality/4058861_git_config_returns_empty_strings_which_should_be_nil_spec.rb
179
+ - spec/core_functionality/4172431_add_git_workflow_setup_command_to_make_setup_easier_spec.rb
180
+ - spec/core_functionality/4199841_need_callbacks_for_my_workflow_spec.rb
181
+ - spec/extensions/4199841_need_callbacks_for_my_workflow_spec.rb
182
+ - spec/extensions/4205913_output_from_rake_tests_should_be_seen_spec.rb
183
+ - spec/git_branching/4058723_branches_end_in_if_the_last_character_is_invalid_spec.rb
184
+ - spec/git_branching/4059824_code_is_not_using_workflow_localbranchconvention_to_decode_branch_names_on_finish_spec.rb
185
+ - spec/git_branching/4216087_support_pushing_branches_spec.rb
186
+ - spec/hooks/4199845_need_hooks_for_sanger_workflow_spec.rb
187
+ - spec/pivotal_tracker_api/4056381_pt_api_token_not_being_passed_in_headers_spec.rb
188
+ - spec/pivotal_tracker_api/4056638_library_code_using_localhost_spec.rb
189
+ - spec/pivotal_tracker_api/4056661_content_type_header_should_be_text_xml_on_updates_spec.rb
190
+ - spec/pivotal_tracker_api/4058718_if_pt_username_is_not_set_use_user_name_spec.rb
191
+ - spec/pivotal_tracker_api/4146016_decode_the_xml_encoded_text_of_description_and_name_spec.rb
192
+ - spec/shared_examples/configuration.rb
193
+ - spec/shared_examples/story.rb
194
+ - spec/spec_helper.rb
195
+ - features/core_functionality/4049578_need_the_ability_to_start_a_new_branch.feature
196
+ - features/core_functionality/4049611_need_the_ability_to_finish_a_specified_branch.feature
197
+ - features/core_functionality/4056359_start_with_local_branch_already_present.feature
198
+ - features/core_functionality/4056363_finish_the_current_branch.feature
199
+ - features/core_functionality/4056389_changes_to_pt_story_name_cause_branch_issues.feature
200
+ - features/core_functionality/4135658_control_output_verbosity_using_v_switch.feature
201
+ - features/core_functionality/4468313_get_config_value_for_is_producing_an_error_log.feature
202
+ - features/extensions/4058326_display_story_description_on_start.feature
203
+ - features/git_branching/4135501_allow_branch_start_point_to_be_specified_from_command_line.feature
204
+ - features/hooks/4069174_investigate_the_effort_required_to_add_pre_amp_post_hooks.feature
205
+ - features/hooks/4199841_need_hooks_for_my_workflow.feature
206
+ - features/hooks/4199845_need_hooks_for_sanger_workflow.feature
207
+ - features/hooks/4205913_output_from_rake_tests_should_be_seen.feature
208
+ - features/hooks/4424828_git_start_is_missing_pt_integration_for_my_hooks.feature
209
+ - features/pivotal_tracker_api/4133291_chores_go_straight_to_accepted_not_to_finished.feature
210
+ - features/release/4132264_fix_the_libxml_warnings_from_nokogiri.feature
211
+ - features/step_definitions/aruba_extensions.rb
212
+ - features/step_definitions/configuration_steps.rb
213
+ - features/step_definitions/git_steps.rb
214
+ - features/step_definitions/misc_steps.rb
215
+ - features/step_definitions/pivotal_tracker_steps.rb
216
+ - features/step_definitions/project_code_steps.rb
217
+ - features/support/aruba.rb
218
+ - features/support/hooks/configuration.rb
219
+ - features/support/hooks/environment.rb
220
+ - features/support/hooks/pivotal_tracker.rb