gitnesse 0.12.5 → 0.12.6

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.
data/.gitignore CHANGED
@@ -15,3 +15,4 @@ spec/reports
15
15
  test/tmp
16
16
  test/version_tmp
17
17
  tmp
18
+ /config/gitnesse.rb
data/README.md CHANGED
@@ -4,6 +4,8 @@
4
4
 
5
5
  It enables a project to store Cucumber feature stories in a git-based wiki, test them against your code, and then update the wiki with the latest test results.
6
6
 
7
+ The advantage is, that the features are on a wiki, so non-programmers can see them, and edit using the wiki. Hence an awesome bi-directional testing flow between developers and non-developers on a team.
8
+
7
9
  Conceptually influenced by Fitnesse http://fitnesse.org/ thank you Uncle Bob!
8
10
 
9
11
  ## Installation
@@ -29,6 +31,17 @@ the following to it:
29
31
  config.info = "Bob Martin's development laptop"
30
32
  end
31
33
 
34
+ ## Git Config
35
+
36
+ Gitnesse depends on two values being present in your `gitconfig`: `user.name`
37
+ and `user.email`. These will be used when annotating test results, and to
38
+ identify commits you make to the feature wiki. If Gitnesse complains that you
39
+ don't have these set, you can fix this by entering the following lines in your
40
+ terminal:
41
+
42
+ $ git config --add --global user.name <your_name>
43
+ $ git config --add --global user.email <your_email>
44
+
32
45
  ## rake tasks
33
46
 
34
47
  $ rake gitnesse:pull
@@ -0,0 +1,5 @@
1
+ Gitnesse.configure do |config|
2
+ config.repository_url = "git@github.com:hybridgroup/gitnesse.wiki.git"
3
+ config.annotate_results = true
4
+ config.info = "Bob Martin's development laptop"
5
+ end
@@ -0,0 +1,54 @@
1
+ Given /^there is a code repo with cucumber features defined$/ do
2
+ @repo_dir = File.join(Dir.home, ".gitnesse_repo")
3
+ end
4
+
5
+ Given /^there is a code repo without any cucumber features defined$/ do
6
+ @repo_dir = File.join(Dir.home, ".gitnesse_repo_no_features")
7
+ end
8
+
9
+ Given /^there is a git wiki with cucumber features defined$/ do
10
+ @features_dir = File.join(Dir.home, ".gitnesse_features")
11
+
12
+ config_file = File.join(@repo_dir, "gitnesse.rb")
13
+ config = File.read(config_file)
14
+ config.gsub!(/config\.repository_url.*$/, "config.repository_url = '#{@features_dir}'")
15
+ File.open(config_file, 'w') { |file| file.puts config }
16
+ end
17
+
18
+ Given /^there is a git wiki without any cucumber features defined$/ do
19
+ @features_dir = File.join(Dir.home, ".gitnesse_features_no_features")
20
+
21
+ config_file = File.join(@repo_dir, "gitnesse.rb")
22
+ config = File.read(config_file)
23
+ config.gsub!(/config\.repository_url.*$/, "config.repository_url = '#{@features_dir}'")
24
+ File.open(config_file, 'w') { |file| file.puts config }
25
+ end
26
+
27
+ When /^developer pulls feature stories from the wiki$/ do
28
+ Dir.chdir(@repo_dir) do
29
+ `bundle exec rake gitnesse:pull &> /dev/null`
30
+ assert_equal $?, 0
31
+ end
32
+ end
33
+
34
+ When /^developer pushes feature stories to the wiki$/ do
35
+ Dir.chdir(@repo_dir) do
36
+ `bundle exec rake gitnesse:push &> /dev/null`
37
+ assert_equal $?, 0
38
+ end
39
+ end
40
+
41
+ Then /^the feature stories within the code should match the wiki$/ do
42
+ assert_dir = File.join(Dir.home, ".gitnesse_features_for_assert")
43
+
44
+ `git clone #{@features_dir} #{assert_dir} &> /dev/null`
45
+
46
+ repo_features = Dir.glob("#{@repo_dir}/features/*.feature").map { |file| File.basename(file, ".feature") }
47
+ wiki_files = Dir.glob("#{assert_dir}/*.md").map { |file| File.basename(file, ".md") }
48
+
49
+ FileUtils.rm_rf(assert_dir)
50
+
51
+ repo_features.each do |feature|
52
+ assert(wiki_files.include?(feature) || wiki_files.include?("#{feature}.feature"))
53
+ end
54
+ end
@@ -0,0 +1,65 @@
1
+ require 'test/unit/assertions'
2
+ World(Test::Unit::Assertions)
3
+
4
+ puts " Setting up Gitnesse for testing..."
5
+
6
+ @features_dir = File.join(Dir.home, ".gitnesse_features")
7
+ @features_dir_no_features = File.join(Dir.home, ".gitnesse_features_no_features")
8
+ @repo_dir = File.join(Dir.home, ".gitnesse_repo")
9
+ @repo_dir_no_features = File.join(Dir.home, ".gitnesse_repo_no_features")
10
+
11
+ Dir.mkdir @features_dir
12
+ Dir.mkdir @repo_dir
13
+ Dir.mkdir @features_dir_no_features
14
+ Dir.mkdir @repo_dir_no_features
15
+
16
+ Dir.chdir(@features_dir) do
17
+ system('git clone --bare https://github.com/hybridgroup/gitnesse-demo.wiki.git . &> /dev/null')
18
+ if $? == 0
19
+ puts " Cloned demo features to #{@features_dir}."
20
+ else
21
+ abort " Failed to clone demo features to #{@features_dir}."
22
+ end
23
+ end
24
+
25
+ Dir.chdir(@features_dir_no_features) do
26
+ system('git init --bare &> /dev/null')
27
+ if $? == 0
28
+ puts " Created demo wiki without features in #{@features_dir_no_features}."
29
+ else
30
+ abort " Failed to create demo wiki without features in #{@features_dir_no_features}."
31
+ end
32
+ end
33
+
34
+ Dir.chdir(@repo_dir) do
35
+ system('git clone https://github.com/hybridgroup/gitnesse-example-sinatra.git . &> /dev/null')
36
+ if $? == 0
37
+ puts " Cloned demo repo to #{@repo_dir}."
38
+ else
39
+ abort " Failed to clone demo repo to #{@repo_dir}."
40
+ end
41
+
42
+ system('bundle install --path vendor/bundle &> /dev/null')
43
+ if $? == 0
44
+ puts " Installed gems for demo wiki."
45
+ else
46
+ abort " Failed to install gems for demo wiki."
47
+ end
48
+ end
49
+
50
+ Dir.chdir(@repo_dir_no_features) do
51
+ FileUtils.cp_r("#{@repo_dir}/.", @repo_dir_no_features)
52
+ Dir.glob("#{@repo_dir_no_features}/**/*.feature") do |file|
53
+ File.unlink(file)
54
+ end
55
+ puts " Created demo repo without features."
56
+ end
57
+
58
+ puts " Finished setting up Gitnesse for testing. Running features.", ""
59
+
60
+ at_exit do
61
+ FileUtils.rm_rf(@features_dir)
62
+ FileUtils.rm_rf(@repo_dir)
63
+ FileUtils.rm_rf(@features_dir_no_features)
64
+ FileUtils.rm_rf(@repo_dir_no_features)
65
+ end
@@ -0,0 +1,29 @@
1
+ Feature:
2
+ In order to build software that provides the best fitting solution to a user problem
3
+ As a developer
4
+ I want to be able to test feature stories in my code
5
+ And also store the feature stories in a wiki so users can easily view or edit them
6
+
7
+ Scenario: Features already exist in wiki but not in code
8
+ Given there is a code repo without any cucumber features defined
9
+ And there is a git wiki with cucumber features defined
10
+ When developer pulls feature stories from the wiki
11
+ Then the feature stories within the code should match the wiki
12
+
13
+ Scenario: Features already exist in code but not in wiki
14
+ Given there is a code repo with cucumber features defined
15
+ And there is a git wiki without any cucumber features defined
16
+ When developer pushes feature stories to the wiki
17
+ Then the feature stories within the code should match the wiki
18
+
19
+ Scenario: Features pushes features from code to existing wiki
20
+ Given there is a code repo with cucumber features defined
21
+ And there is a git wiki with cucumber features defined
22
+ When developer pushes feature stories to the wiki
23
+ Then the feature stories within the code should match the wiki
24
+
25
+ Scenario: Features pulls features from wiki to existing code
26
+ Given there is a code repo with cucumber features defined
27
+ And there is a git wiki with cucumber features defined
28
+ When developer pulls feature stories from the wiki
29
+ Then the feature stories within the code should match the wiki
data/lib/gitnesse.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require 'bundler/setup'
2
2
  require 'gollum'
3
3
  require 'fileutils'
4
+ require 'pathname'
4
5
  require 'tmpdir'
5
6
  require 'gitnesse/configuration'
6
7
  require 'gitnesse/git_config'
@@ -31,7 +32,7 @@ module Gitnesse
31
32
  def run
32
33
  if pull
33
34
  Hooks.create
34
- puts "Now going to run cucumber..."
35
+ puts "\n Now going to run Cucumber."
35
36
  exec("cucumber #{Gitnesse.configuration.target_directory}/*.feature")
36
37
  end
37
38
  end
@@ -39,7 +40,7 @@ module Gitnesse
39
40
  def push_results
40
41
  if push
41
42
  Hooks.create
42
- puts "Now going to run cucumber..."
43
+ puts "\n Now going to run Cucumber."
43
44
  exec("cucumber #{Gitnesse.configuration.target_directory}/*.feature")
44
45
  end
45
46
  end
@@ -48,7 +49,9 @@ module Gitnesse
48
49
  def pull
49
50
  Dependencies.check
50
51
 
51
- puts "Pulling features into #{Gitnesse.configuration.target_directory} from #{Gitnesse.configuration.repository_url}..."
52
+ relative_path = Pathname.new(Gitnesse.configuration.target_directory).relative_path_from(Pathname.new(Dir.pwd))
53
+
54
+ puts " Pulling features into ./#{relative_path} from #{Gitnesse.configuration.repository_url}."
52
55
  Dir.mktmpdir do |tmp_dir|
53
56
  if clone_feature_repo(tmp_dir)
54
57
  FileUtils.mkdir(Gitnesse.configuration.target_directory) unless File.exists?(Gitnesse.configuration.target_directory)
@@ -62,7 +65,7 @@ module Gitnesse
62
65
  end
63
66
  end
64
67
  end
65
- puts " Done pulling features."
68
+ puts " \e[32mDone pulling features.\e[0m"
66
69
  true
67
70
  end
68
71
 
@@ -71,7 +74,9 @@ module Gitnesse
71
74
  Dependencies.check
72
75
  generate_commit_info
73
76
 
74
- puts "Pushing features from #{Gitnesse.configuration.target_directory} to #{Gitnesse.configuration.repository_url}..."
77
+ relative_path = Pathname.new(Gitnesse.configuration.target_directory).relative_path_from(Pathname.new(Dir.pwd))
78
+
79
+ puts " Pushing features from ./#{relative_path} to #{Gitnesse.configuration.repository_url}."
75
80
  Dir.mktmpdir do |tmp_dir|
76
81
  if clone_feature_repo(tmp_dir)
77
82
  feature_files = Dir.glob("#{Gitnesse.configuration.target_directory}/*.feature")
@@ -79,17 +84,16 @@ module Gitnesse
79
84
 
80
85
  # push the changes to the remote git
81
86
  Dir.chdir(tmp_dir) do
82
- puts `git push origin master`
87
+ `git push origin master &> /dev/null`
83
88
  end
84
89
  end
85
90
  end
86
- puts " Done pushing features."
91
+ puts " \e[32mDone pushing features.\e[0m"
87
92
  true
88
93
  end
89
94
 
90
95
  def clone_feature_repo(dir)
91
- output = `git clone #{Gitnesse.configuration.repository_url} #{dir} 2>&1`
92
- puts output
96
+ output = `git clone #{Gitnesse.configuration.repository_url} #{dir} &> /dev/null`
93
97
  $?.success?
94
98
  end
95
99
 
@@ -11,16 +11,17 @@ module Gitnesse
11
11
  check_git
12
12
  check_cucumber
13
13
  check_repository_url
14
+ check_annotation_info
14
15
  end
15
16
 
16
17
  protected
17
18
 
18
19
  def self.check_git
19
- raise NoGitError, "git not found or not working." unless Kernel.system("git --version")
20
+ raise NoGitError, "git not found or not working." unless Kernel.system("git --version &> /dev/null")
20
21
  end
21
22
 
22
23
  def self.check_cucumber
23
- raise NoCucumberError, "cucumber not found or not working." unless Kernel.system("cucumber --version")
24
+ raise NoCucumberError, "cucumber not found or not working." unless Kernel.system("cucumber --version &> /dev/null")
24
25
  end
25
26
 
26
27
  def self.check_repository_url
@@ -25,11 +25,11 @@ module Gitnesse
25
25
  features = ''
26
26
 
27
27
  name, content = page_features.shift
28
- puts " # Pulling Feature: #{name}"
28
+ puts " \e[32m\e[1mPulling Feature: \e[0m#{name}"
29
29
  features += content
30
30
 
31
31
  page_features.each do |name, feature|
32
- puts " # WARNING! Discarding Feature: #{name}"
32
+ puts " \e[33m\e[1mDiscarding Feature: \e[0m#{name}"
33
33
  end
34
34
 
35
35
  features
@@ -9,7 +9,7 @@ module Gitnesse
9
9
  Gitnesse::Configuration.load_using_search
10
10
  FileUtils.rm_rf(@dir) if File.directory?(@dir)
11
11
  Dir.mkdir(@dir)
12
- `git clone #{Gitnesse.configuration.repository_url} #{@dir}`
12
+ `git clone #{Gitnesse.configuration.repository_url} #{@dir} &> /dev/null`
13
13
  Wiki.new(@dir).remove_past_results
14
14
  end
15
15
 
@@ -17,12 +17,14 @@ module Gitnesse
17
17
  #
18
18
  # Returns nothing
19
19
  def self.teardown
20
+ puts " Pushing Cucumber results to wiki."
20
21
  Dir.chdir(@dir) do
21
- `git push origin master`
22
+ `git push origin master &> /dev/null`
22
23
  end
23
24
 
24
25
  FileUtils.rm_rf(@dir)
25
26
  FileUtils.rm(File.absolute_path("#{Gitnesse.configuration.target_directory}/support/gitnesse_hooks.rb"))
27
+ puts " Done."
26
28
  end
27
29
 
28
30
  # Public: Adds hooks into Cucumber
@@ -21,7 +21,7 @@ namespace :gitnesse do
21
21
  end
22
22
 
23
23
  desc "Push features to remote git wiki repository, run cucumber, and push results to wiki"
24
- task :push => :environment do
24
+ task :push_results => :environment do
25
25
  Gitnesse::Configuration.load_using_search
26
26
  Gitnesse.push_results
27
27
  end
@@ -1,3 +1,3 @@
1
1
  module Gitnesse
2
- VERSION = "0.12.5"
2
+ VERSION = "0.12.6"
3
3
  end
data/lib/gitnesse/wiki.rb CHANGED
@@ -108,7 +108,7 @@ module Gitnesse
108
108
  def strip_results(content)
109
109
  if content.match(/\u0060{3}gherkin.*\u0060{3}(.*)/m)[1]
110
110
  [ "FAILED", "PASSED", "PENDING", "UNDEFINED" ].each do |type|
111
- content.gsub!(/\n*\`Last result was #{type}: .*\n*/, '')
111
+ content.gsub!(/\n*\!\[\]\(.*\) \`Last result was #{type}: .*\n*/, '')
112
112
  end
113
113
  end
114
114
  content
@@ -118,20 +118,29 @@ module Gitnesse
118
118
  #
119
119
  # scenario - Cucumber scenario from After hook
120
120
  #
121
- # Returns nothing
121
+ # Returns a string containing the scenario result
122
122
  def append_results(scenario)
123
- pages = @wiki.pages
124
123
  filename = File.basename(scenario.feature.file, ".feature")
125
124
  @commit_info[:message] = Gitnesse.configuration.info
126
125
 
127
- pages.each do |page|
126
+ self.pages.each do |page|
128
127
  if page.name == filename || page.name == "#{filename}.feature"
129
128
  if page.text_data.include? scenario.name
130
129
  content = page.raw_data
131
- string = "\n\`Last result was #{scenario.status.to_s.upcase}: #{scenario.name} (#{Time.now.to_s} - #{Gitnesse.configuration.info})\`\n"
130
+
131
+ case scenario.status
132
+ when :undefined then image = "![](https://s3.amazonaws.com/gitnesse/github/undefined.png)"
133
+ when :passed then image = "![](https://s3.amazonaws.com/gitnesse/github/passing.png)"
134
+ when :failed then image = "![](https://s3.amazonaws.com/gitnesse/github/failing.png)"
135
+ when :pending then image = "![](https://s3.amazonaws.com/gitnesse/github/pending.png)"
136
+ else image = "![](https://s3.amazonaws.com/gitnesse/github/undefined.png)"
137
+ end
138
+
139
+ string = "\n#{image} \`Last result was #{scenario.status.to_s.upcase}: #{scenario.name} (#{Time.now.to_s} - #{Gitnesse.configuration.info})\`\n"
132
140
  content.gsub(string, '')
133
141
  content << string
134
142
  @wiki.update_page(page, page.name, :markdown, content, @commit_info)
143
+ return string
135
144
  end
136
145
  end
137
146
  end
@@ -148,7 +157,7 @@ module Gitnesse
148
157
  def create_wiki_page(name, content)
149
158
  new_page_content = build_page_content(content)
150
159
  @wiki.write_page(name, :markdown, new_page_content, @commit_info)
151
- puts " # Created Page: #{name}"
160
+ puts " \e[32mCreated page \e[0m#{name}."
152
161
  end
153
162
 
154
163
  # Private: Updates a wiki page with the provided name and content
@@ -163,10 +172,10 @@ module Gitnesse
163
172
  new_page_content = build_page_content(feature_content, wiki_page_content)
164
173
 
165
174
  if new_page_content == wiki_page_content
166
- puts " # Page #{page_name} didn't change"
175
+ puts " \e[32mPage \e[0m#{page_name} \e[32mdidn't change\e[0m."
167
176
  else
168
177
  @wiki.update_page(wiki_page, page_name, :markdown, new_page_content, @commit_info)
169
- puts " # Updated Page: #{page_name}"
178
+ puts " \e[33mUpdated page \e[0m#{page_name}."
170
179
  end
171
180
  end
172
181
  end
@@ -0,0 +1,11 @@
1
+ require_relative '../../test_helper'
2
+
3
+ describe Gitnesse::Configuration do
4
+ describe "defaults" do
5
+ subject { Gitnesse::Configuration.new }
6
+ it { subject.branch.must_equal "master" }
7
+ it { subject.annotate_results.must_equal false }
8
+ it { subject.info.must_be_nil }
9
+ it { subject.target_directory.must_equal File.join(Dir.pwd, "features") }
10
+ end
11
+ end
@@ -1,6 +1,19 @@
1
1
  require_relative '../../test_helper'
2
2
 
3
3
  describe Gitnesse::Dependencies do
4
+ describe "#check" do
5
+ before do
6
+ Gitnesse::Dependencies.expects(:check_git)
7
+ Gitnesse::Dependencies.expects(:check_cucumber)
8
+ Gitnesse::Dependencies.expects(:check_repository_url)
9
+ Gitnesse::Dependencies.expects(:check_annotation_info)
10
+ end
11
+
12
+ it "calls the other check functions" do
13
+ Gitnesse::Dependencies.check
14
+ end
15
+ end
16
+
4
17
  describe "#check_repository_url" do
5
18
  let(:method) { lambda { Gitnesse::Dependencies.check_repository_url } }
6
19
 
@@ -19,12 +32,12 @@ describe Gitnesse::Dependencies do
19
32
  let(:method) { lambda { Gitnesse::Dependencies.check_git } }
20
33
 
21
34
  describe "when git is not installed" do
22
- before { Kernel.expects(:system).with("git --version").returns(false) }
35
+ before { Kernel.expects(:system).with("git --version &> /dev/null").returns(false) }
23
36
  it { method.must_raise(Gitnesse::Dependencies::NoGitError) }
24
37
  end
25
38
 
26
39
  describe "when git is installed" do
27
- before { Kernel.expects(:system).with("git --version").returns(true) }
40
+ before { Kernel.expects(:system).with("git --version &> /dev/null").returns(true) }
28
41
  it { method.call.must_be_nil }
29
42
  end
30
43
  end
@@ -33,12 +46,12 @@ describe Gitnesse::Dependencies do
33
46
  let(:method) { lambda { Gitnesse::Dependencies.check_cucumber } }
34
47
 
35
48
  describe "when cucumber is not installed" do
36
- before { Kernel.expects(:system).with("cucumber --version").returns(false) }
49
+ before { Kernel.expects(:system).with("cucumber --version &> /dev/null").returns(false) }
37
50
  it { method.must_raise(Gitnesse::Dependencies::NoCucumberError) }
38
51
  end
39
52
 
40
53
  describe "when cucumber is installed" do
41
- before { Kernel.expects(:system).with("cucumber --version").returns(true) }
54
+ before { Kernel.expects(:system).with("cucumber --version &> /dev/null").returns(true) }
42
55
  it { method.call.must_be_nil }
43
56
  end
44
57
  end
@@ -16,13 +16,13 @@ Feature: Division
16
16
  When I divide
17
17
  Then the result should be 3
18
18
  ```
19
- `Last result was UNDEFINED: Divide two numbers`
19
+ ![](http://path-to-image) `Last result was UNDEFINED: Divide two numbers`
20
20
 
21
- `Last result was PENDING: Divide two numbers`
21
+ ![](http://path-to-image) `Last result was PENDING: Divide two numbers`
22
22
 
23
- `Last result was FAILED: Divide two numbers`
23
+ ![](http://path-to-image) `Last result was FAILED: Divide two numbers`
24
24
 
25
- `Last result was PASSED: Divide two numbers`
25
+ ![](http://path-to-image) `Last result was PASSED: Divide two numbers`
26
26
  EOS
27
27
  end
28
28
 
@@ -0,0 +1,50 @@
1
+ require_relative '../../test_helper'
2
+
3
+ describe Gitnesse::Wiki do
4
+ describe "#append_results" do
5
+ let(:dir) { Dir.mktmpdir }
6
+ let(:wiki) { mock }
7
+ let(:feature_file) do
8
+ <<-EOS
9
+ ```gherkin
10
+ Feature: Addition
11
+ In order to avoid silly mistakes
12
+ I want to be told the sum of two numbers
13
+
14
+ Scenario: Add two single digit numbers
15
+ Given I have entered 7 into the calculator
16
+ And I have entered 5 into the calculator
17
+ When I add
18
+ Then the result should be 12 on the screen
19
+ ```
20
+ EOS
21
+ end
22
+ let(:pages) do
23
+ [
24
+ stub(
25
+ :name => "addition",
26
+ :text_data => feature_file,
27
+ :raw_data => feature_file
28
+ )
29
+ ]
30
+ end
31
+ let(:cucumber_scenario) do
32
+ stub(
33
+ :name => "Add two single digit numbers",
34
+ :status => :passed,
35
+ :feature => stub(:file => "addition.feature")
36
+ )
37
+ end
38
+
39
+ let(:method) { lambda { Gitnesse::Wiki.new(dir).append_results(cucumber_scenario) } }
40
+
41
+ before do
42
+ Gollum::Wiki.expects(:new).returns(wiki)
43
+ wiki.expects(:pages).returns(pages)
44
+ wiki.expects(:update_page).returns(true)
45
+ File.expects(:basename).returns("addition")
46
+ end
47
+
48
+ it { puts method.call.must_include "Last result was PASSED: Add two single digit numbers" }
49
+ end
50
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitnesse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.5
4
+ version: 0.12.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-05 00:00:00.000000000 Z
12
+ date: 2012-12-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -121,6 +121,10 @@ files:
121
121
  - README.md
122
122
  - Rakefile
123
123
  - bin/gitnesse
124
+ - config/gitnesse.rb.example
125
+ - features/step_definitions/gitnesse_steps.rb
126
+ - features/support/env.rb
127
+ - features/sync_wiki_features_to_code.feature
124
128
  - gitnesse.gemspec
125
129
  - lib/gitnesse.rb
126
130
  - lib/gitnesse/configuration.rb
@@ -136,6 +140,7 @@ files:
136
140
  - lib/gitnesse/wiki.rb
137
141
  - test/lib/gitnesse/build_page_content_test.rb
138
142
  - test/lib/gitnesse/commit_info_test.rb
143
+ - test/lib/gitnesse/configuration_defaults_test.rb
139
144
  - test/lib/gitnesse/configuration_to_hash_test.rb
140
145
  - test/lib/gitnesse/custom_branch_test.rb
141
146
  - test/lib/gitnesse/dependencies_check_test.rb
@@ -145,6 +150,7 @@ files:
145
150
  - test/lib/gitnesse/read_git_config_test.rb
146
151
  - test/lib/gitnesse/strip_results_test.rb
147
152
  - test/lib/gitnesse/version_test.rb
153
+ - test/lib/gitnesse/wiki_append_results_test.rb
148
154
  - test/lib/gitnesse/write_file_test.rb
149
155
  - test/test_helper.rb
150
156
  - test/wiki_test_helper.rb
@@ -162,7 +168,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
162
168
  version: '0'
163
169
  segments:
164
170
  - 0
165
- hash: 3810986427098166554
171
+ hash: 3165279517982023743
166
172
  required_rubygems_version: !ruby/object:Gem::Requirement
167
173
  none: false
168
174
  requirements:
@@ -171,7 +177,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
177
  version: '0'
172
178
  segments:
173
179
  - 0
174
- hash: 3810986427098166554
180
+ hash: 3165279517982023743
175
181
  requirements: []
176
182
  rubyforge_project:
177
183
  rubygems_version: 1.8.24
@@ -179,8 +185,12 @@ signing_key:
179
185
  specification_version: 3
180
186
  summary: Features on git-based Wiki!
181
187
  test_files:
188
+ - features/step_definitions/gitnesse_steps.rb
189
+ - features/support/env.rb
190
+ - features/sync_wiki_features_to_code.feature
182
191
  - test/lib/gitnesse/build_page_content_test.rb
183
192
  - test/lib/gitnesse/commit_info_test.rb
193
+ - test/lib/gitnesse/configuration_defaults_test.rb
184
194
  - test/lib/gitnesse/configuration_to_hash_test.rb
185
195
  - test/lib/gitnesse/custom_branch_test.rb
186
196
  - test/lib/gitnesse/dependencies_check_test.rb
@@ -190,6 +200,7 @@ test_files:
190
200
  - test/lib/gitnesse/read_git_config_test.rb
191
201
  - test/lib/gitnesse/strip_results_test.rb
192
202
  - test/lib/gitnesse/version_test.rb
203
+ - test/lib/gitnesse/wiki_append_results_test.rb
193
204
  - test/lib/gitnesse/write_file_test.rb
194
205
  - test/test_helper.rb
195
206
  - test/wiki_test_helper.rb