trollolo 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5adc2629b2f526c70851abc5ba72765860d73e2f
4
- data.tar.gz: d31159f96937237011765b1df87036d90a94fede
3
+ metadata.gz: dc793ce4458762baaa87ab20d73a5027b393a59b
4
+ data.tar.gz: d146b5a8919127354689e1456d92a32abbe3f74f
5
5
  SHA512:
6
- metadata.gz: 7eb4de3cb4a144902d467e40471236ca54c8992228fc5b1b6531148887512609bb5e56f2b43abb646d4eca512008e9c6b7d3c228073c3f1bb2a94cd6a22532e9
7
- data.tar.gz: 7df063a8b64b2e8eea6118115d1e0ab8b7653783c972abcd046b0c25b1a6951ac39147b2d4e01f4e1c1dfc7724f5554347cc85570695b5026310a6f746b9ab6f
6
+ metadata.gz: aabfadb3c1ef41fced864fea53761768df318e99881e4c3b37a46e9e40e272f0b2b835494a7d69ce9e829941a1fa60088aaf825e29308844651c73d23772d595
7
+ data.tar.gz: 6d4972fee9466043300f52b0aa6585118f3d3feb5584ff530c2c34bd02756e8c3b40d02cc23f6761c114e44e8c24ad4a6c90b261df59447c044183136ae641e9
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Trollolo Changelog
2
2
 
3
+ ## Version 0.0.5
4
+
5
+ * Allow done columns which have a name stating with `Done` and do not insist on
6
+ having a sprint number there. If multiple such columns are found, the first
7
+ one is taken for burndown calculations.
8
+
3
9
  ## Version 0.0.4
4
10
 
5
11
  * Allow to story points anywhere in the card name
data/lib/settings.rb CHANGED
@@ -31,7 +31,7 @@ class Settings
31
31
  @member_token = @config["member_token"]
32
32
  @not_done_columns = @config["not_done_columns"].freeze || ["Sprint Backlog", "Doing"]
33
33
  @todo_column = @config["todo_column"].freeze
34
- @done_column_name_regex = @config["done_column_name_regex"].freeze || /\ADone Sprint (\d+)\Z/
34
+ @done_column_name_regex = @config["done_column_name_regex"].freeze || /\ADone/
35
35
  @todo_column_name_regex = @config["todo_column_name_regex"].freeze || /\ATo Do\Z/
36
36
  else
37
37
  raise "Couldn't read config data from '#{config_file_path}'"
data/lib/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Trollolo
2
2
 
3
- VERSION = "0.0.4"
3
+ VERSION = "0.0.5"
4
4
 
5
5
  end
data/man/trollolo.1.md CHANGED
@@ -133,9 +133,11 @@ The burndown functionality expects the board to follow a certain naming scheme,
133
133
  so that Trollolo can process it as a Scrum board.
134
134
 
135
135
  It expects a list `Sprint Backlog` with open items, a list `Doing` with items in
136
- progress, and a list `Done Sprint X` with done items, where `X` is the number
137
- of the sprint. For burndown data calculation the list with the highest number
138
- is taken.
136
+ progress, and a list with a name starting with `Done`. If there are multiple
137
+ lists starting with `Done` the first one is taken.
138
+
139
+ Other names of columns with work in progress can be set in the YAML file in the
140
+ `meta` section as an array of column names under the key `not_done_columns`.
139
141
 
140
142
  On work item cards the tool takes a bracketed number as suffix as size of the
141
143
  item in story points. E.g. a card with the title `(3) Build magic tool` would
@@ -149,4 +151,4 @@ Board](https://trello.com/b/CRdddpdy/trollolo-testing-board).
149
151
 
150
152
  ## COPYRIGHT
151
153
 
152
- Trollolo is Copyright (C) 2013-2014 SUSE LLC
154
+ Trollolo is Copyright (C) 2013-2015 SUSE LLC
@@ -2,17 +2,85 @@ require_relative 'spec_helper'
2
2
 
3
3
  describe ScrumBoard do
4
4
  describe '#done_column' do
5
- before(:each) do
6
- @settings = dummy_settings
5
+ it 'raises error when done column cannot be found' do
6
+ settings = dummy_settings
7
7
 
8
8
  board_data = JSON.parse(load_test_file("full-board.json"))
9
- @scrum_board = ScrumBoard.new(board_data, @settings)
9
+ scrum_board = ScrumBoard.new(board_data, settings)
10
+
11
+ settings.done_column_name_regex = /thiscolumndoesntexist/
12
+
13
+ expect{scrum_board.done_column}.to raise_error ScrumBoard::DoneColumnNotFoundError
10
14
  end
11
15
 
12
- it 'raises error when done column cannot be found' do
13
- @settings.done_column_name_regex = /thiscolumndoesntexist/
16
+ it 'finds done column with name "Done Sprint %s"' do
17
+ scrum_board = ScrumBoard.new(nil, dummy_settings)
18
+
19
+ columns = []
20
+
21
+ column1 = double
22
+ allow(column1).to receive(:name).and_return("Sprint Backlog")
23
+ columns << column1
24
+
25
+ column2 = double
26
+ allow(column2).to receive(:name).and_return("Doing")
27
+ columns << column2
28
+
29
+ column3 = double
30
+ allow(column3).to receive(:name).and_return("Done Sprint 43")
31
+ columns << column3
32
+
33
+ allow(scrum_board).to receive(:columns).and_return(columns)
34
+
35
+ expect(scrum_board.done_column.name).to eq("Done Sprint 43")
36
+ end
37
+
38
+ it 'finds done column with name "Done Sprint %s" if there are multiple done columns' do
39
+ scrum_board = ScrumBoard.new(nil, dummy_settings)
40
+
41
+ columns = []
42
+
43
+ column1 = double
44
+ allow(column1).to receive(:name).and_return("Sprint Backlog")
45
+ columns << column1
46
+
47
+ column2 = double
48
+ allow(column2).to receive(:name).and_return("Doing")
49
+ columns << column2
50
+
51
+ column3 = double
52
+ allow(column3).to receive(:name).and_return("Done Sprint 44")
53
+ columns << column3
54
+
55
+ column4 = double
56
+ allow(column4).to receive(:name).and_return("Done Sprint 43")
57
+ columns << column4
58
+
59
+ allow(scrum_board).to receive(:columns).and_return(columns)
60
+
61
+ expect(scrum_board.done_column.name).to eq("Done Sprint 44")
62
+ end
63
+
64
+ it 'finds done column with name "Done (July 20th - August 3rd)"' do
65
+ scrum_board = ScrumBoard.new(nil, dummy_settings)
66
+
67
+ columns = []
68
+
69
+ column1 = double
70
+ allow(column1).to receive(:name).and_return("Sprint Backlog")
71
+ columns << column1
72
+
73
+ column2 = double
74
+ allow(column2).to receive(:name).and_return("Doing")
75
+ columns << column2
76
+
77
+ column3 = double
78
+ allow(column3).to receive(:name).and_return("Done (July 20th - August 3rd)")
79
+ columns << column3
80
+
81
+ allow(scrum_board).to receive(:columns).and_return(columns)
14
82
 
15
- expect{@scrum_board.done_column}.to raise_error ScrumBoard::DoneColumnNotFoundError
83
+ expect(scrum_board.done_column.name).to eq("Done (July 20th - August 3rd)")
16
84
  end
17
85
  end
18
86
  end
data/yes_ship_it.conf ADDED
@@ -0,0 +1,9 @@
1
+ # Experimental release automation. See https://github.com/cornelius/yes_ship_it.
2
+
3
+ assertions:
4
+ - version
5
+ - change_log
6
+ - built_gem
7
+ - published_gem
8
+ - tag
9
+ - pushed_tag
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trollolo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cornelius Schumacher
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-03 00:00:00.000000000 Z
11
+ date: 2015-07-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -120,6 +120,9 @@ files:
120
120
  - spec/unit/support/webmocks.rb
121
121
  - spec/unit/trello_wrapper_spec.rb
122
122
  - trollolo.gemspec
123
+ - yes_ship_it.conf
124
+ - man/trollolo.1
125
+ - man/trollolo.1.html
123
126
  homepage: https://github.com/openSUSE/trollolo
124
127
  licenses:
125
128
  - GPL-3