danger-changelog 0.2.1 → 0.3.0
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.
- checksums.yaml +4 -4
- data/.rubocop.yml +6 -0
- data/.rubocop_todo.yml +54 -17
- data/CHANGELOG.md +7 -0
- data/README.md +20 -4
- data/Rakefile +1 -1
- data/danger-changelog.gemspec +4 -5
- data/lib/changelog/changelog_file.rb +1 -1
- data/lib/changelog/changelog_line/changelog_placeholder_line.rb +1 -1
- data/lib/changelog/config.rb +40 -0
- data/lib/changelog/gem_version.rb +1 -1
- data/lib/changelog/plugin.rb +3 -2
- data/lib/danger_plugin.rb +1 -0
- data/spec/changelog_placeholder_line_spec.rb +41 -30
- data/spec/changelog_spec.rb +72 -6
- data/spec/config_spec.rb +43 -0
- data/spec/fixtures/changelogs/customized.md +3 -0
- data/spec/spec_helper.rb +3 -0
- metadata +40 -35
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2c5eeec21291e0eb25ee5e280fe7393a66252c67
|
4
|
+
data.tar.gz: 8510e7675961b8f22d4f699f10265e5be96f5fa8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f60db0f98dd9fc1d2f1162e5887c155cc29fb46cc34feaa6ee9e271f899524cd5948645d909d415fa3d75a7a700269085eaf84c670a2aba43aa6a5cf20ef1284
|
7
|
+
data.tar.gz: ee1d7eb7daec2871f844c4620c0f04c5b35a4a34053aef19946d147826599de335397d35b47ddaa19557600bac259a34b32b3dc52a48d0cb2822697b5de1282b
|
data/.rubocop.yml
CHANGED
data/.rubocop_todo.yml
CHANGED
@@ -1,31 +1,65 @@
|
|
1
1
|
# This configuration was generated by
|
2
2
|
# `rubocop --auto-gen-config`
|
3
|
-
# on
|
3
|
+
# on 2018-02-06 12:42:54 -0500 using RuboCop version 0.52.1.
|
4
4
|
# The point is for the user to remove these configuration records
|
5
5
|
# one by one as the offenses are removed from the code base.
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
8
8
|
|
9
|
+
# Offense count: 2
|
10
|
+
# Cop supports --auto-correct.
|
11
|
+
# Configuration parameters: EnforcedStyle.
|
12
|
+
# SupportedStyles: auto_detection, squiggly, active_support, powerpack, unindent
|
13
|
+
Layout/IndentHeredoc:
|
14
|
+
Exclude:
|
15
|
+
- 'lib/changelog/plugin.rb'
|
16
|
+
|
9
17
|
# Offense count: 1
|
10
|
-
|
11
|
-
|
18
|
+
Lint/DuplicateMethods:
|
19
|
+
Exclude:
|
20
|
+
- 'lib/changelog/config.rb'
|
12
21
|
|
13
|
-
# Offense count:
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
22
|
+
# Offense count: 1
|
23
|
+
Lint/InterpolationCheck:
|
24
|
+
Exclude:
|
25
|
+
- 'lib/changelog/changelog_line/changelog_header_line.rb'
|
26
|
+
|
27
|
+
# Offense count: 1
|
28
|
+
Metrics/AbcSize:
|
29
|
+
Max: 25
|
18
30
|
|
19
31
|
# Offense count: 3
|
20
32
|
# Configuration parameters: CountComments.
|
21
33
|
Metrics/MethodLength:
|
22
34
|
Max: 14
|
23
35
|
|
24
|
-
# Offense count:
|
36
|
+
# Offense count: 4
|
37
|
+
# Configuration parameters: ExpectMatchingDefinition, Regex, IgnoreExecutableScripts, AllowedAcronyms.
|
38
|
+
# AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
|
39
|
+
Naming/FileName:
|
40
|
+
Exclude:
|
41
|
+
- 'Dangerfile'
|
42
|
+
- 'Gemfile'
|
43
|
+
- 'Guardfile'
|
44
|
+
- 'danger-changelog.gemspec'
|
45
|
+
|
46
|
+
# Offense count: 2
|
47
|
+
# Configuration parameters: NamePrefix, NamePrefixBlacklist, NameWhitelist, MethodDefinitionMacros.
|
48
|
+
# NamePrefix: is_, has_, have_
|
49
|
+
# NamePrefixBlacklist: is_, has_, have_
|
50
|
+
# NameWhitelist: is_a?
|
51
|
+
# MethodDefinitionMacros: define_method, define_singleton_method
|
52
|
+
Naming/PredicateName:
|
53
|
+
Exclude:
|
54
|
+
- 'spec/**/*'
|
55
|
+
- 'lib/changelog/plugin.rb'
|
56
|
+
|
57
|
+
# Offense count: 3
|
25
58
|
Style/Documentation:
|
26
59
|
Exclude:
|
27
60
|
- 'spec/**/*'
|
28
61
|
- 'test/**/*'
|
62
|
+
- 'lib/changelog/config.rb'
|
29
63
|
- 'lib/changelog/plugin.rb'
|
30
64
|
|
31
65
|
# Offense count: 3
|
@@ -33,12 +67,15 @@ Style/DoubleNegation:
|
|
33
67
|
Exclude:
|
34
68
|
- 'lib/changelog/changelog_file.rb'
|
35
69
|
|
36
|
-
# Offense count:
|
37
|
-
# Configuration parameters:
|
38
|
-
#
|
39
|
-
|
40
|
-
# NameWhitelist: is_a?
|
41
|
-
Style/PredicateName:
|
70
|
+
# Offense count: 1
|
71
|
+
# Configuration parameters: EnforcedStyle.
|
72
|
+
# SupportedStyles: module_function, extend_self
|
73
|
+
Style/ModuleFunction:
|
42
74
|
Exclude:
|
43
|
-
- '
|
44
|
-
|
75
|
+
- 'lib/changelog/config.rb'
|
76
|
+
|
77
|
+
# Offense count: 112
|
78
|
+
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
|
79
|
+
# URISchemes: http, https
|
80
|
+
Metrics/LineLength:
|
81
|
+
Max: 254
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
## Changelog
|
2
2
|
|
3
|
+
### 0.3.0 (5/17/2018)
|
4
|
+
|
5
|
+
* [#25](https://github.com/dblock/danger-changelog/pull/25): Add information how to configure the plugin in README.md - [@antondomashnev](https://github.com/antondomashnev).
|
6
|
+
* [#24](https://github.com/dblock/danger-changelog/pull/24): Added support for custom '* Your contribution here.' line - [@antondomashnev](https://github.com/antondomashnev).
|
7
|
+
* [#31](https://github.com/dblock/danger-changelog/pull/31): Stop checking for placeholder line when `Danger::Changelog.config.placeholder_line` is set to `nil` - [@dblock](https://github.com/dblock).
|
8
|
+
* [#28](https://github.com/dblock/danger-changelog/issues/28): Improve wording suggesting that CHANGELOG should be updated unless one is improving documentation - [@dblock](https://github.com/dblock).
|
9
|
+
|
3
10
|
### 0.2.1 (12/04/2016)
|
4
11
|
|
5
12
|
* [#17](https://github.com/dblock/danger-changelog/pull/17): Fix: handle CHANGELOG lines that mistakenly start with a symbol other than * - [@antondomashnev](https://github.com/antondomashnev).
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# danger-changelog
|
2
2
|
|
3
|
-
A
|
4
|
-
|
3
|
+
A plugin for [danger.systems](http://danger.systems) that obsessive-compulsively lints your project’s `CHANGELOG.md`.
|
4
|
+
It can make sure, for example, that changes are attributed properly, and that they’re always terminated with a period.
|
5
5
|
|
6
6
|
[](https://badge.fury.io/rb/danger-changelog)
|
7
7
|
[](https://travis-ci.org/dblock/danger-changelog)
|
@@ -11,15 +11,31 @@ This plugin can, for example, make sure the changes are attributes properly and
|
|
11
11
|
Add `danger-changelog` to your Gemfile.
|
12
12
|
|
13
13
|
```
|
14
|
-
gem 'danger-changelog', '~> 0.
|
14
|
+
gem 'danger-changelog', '~> 0.3.0'
|
15
15
|
```
|
16
16
|
|
17
|
-
Add `changelog.check` to your Dangerfile
|
17
|
+
Add `changelog.check` to your `Dangerfile`. Make a pull request and see this plugin in action.
|
18
18
|
|
19
19
|
## Usage
|
20
20
|
|
21
21
|
Methods and attributes from this plugin are available in your `Dangerfile` under the `changelog` namespace.
|
22
22
|
|
23
|
+
### Configuration
|
24
|
+
|
25
|
+
You can configure the plugin in `Dangerfile`.
|
26
|
+
|
27
|
+
```ruby
|
28
|
+
Danger::Changelog.configure do |config|
|
29
|
+
config.placeholder_line = "Nothing yet."
|
30
|
+
end
|
31
|
+
```
|
32
|
+
|
33
|
+
The following options are supported.
|
34
|
+
|
35
|
+
#### placeholder_line
|
36
|
+
|
37
|
+
Customize the `* Your contribution here.` line. Set the value to `nil` to stop checking for one.
|
38
|
+
|
23
39
|
### changelog.filename
|
24
40
|
|
25
41
|
Set the CHANGELOG file name, defaults to `CHANGELOG.md`.
|
data/Rakefile
CHANGED
data/danger-changelog.gemspec
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
# coding: utf-8
|
2
1
|
lib = File.expand_path('../lib', __FILE__)
|
3
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
3
|
require 'changelog/gem_version.rb'
|
@@ -21,12 +20,12 @@ Gem::Specification.new do |spec|
|
|
21
20
|
spec.add_runtime_dependency 'danger-plugin-api', '~> 1.0'
|
22
21
|
|
23
22
|
spec.add_development_dependency 'bundler', '~> 1.3'
|
24
|
-
spec.add_development_dependency 'rake', '~> 10.0'
|
25
|
-
spec.add_development_dependency 'rspec', '~> 3.4'
|
26
|
-
spec.add_development_dependency 'rubocop', '~> 0.41'
|
27
|
-
spec.add_development_dependency 'yard', '~> 0.8'
|
28
23
|
spec.add_development_dependency 'guard', '~> 2.14'
|
29
24
|
spec.add_development_dependency 'guard-rspec', '~> 4.7'
|
30
25
|
spec.add_development_dependency 'listen', '3.0.7'
|
31
26
|
spec.add_development_dependency 'pry'
|
27
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
28
|
+
spec.add_development_dependency 'rspec', '~> 3.4'
|
29
|
+
spec.add_development_dependency 'rubocop', '~> 0.52.1'
|
30
|
+
spec.add_development_dependency 'yard', '~> 0.9.11'
|
32
31
|
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
module Danger
|
2
|
+
module Changelog
|
3
|
+
module Config
|
4
|
+
extend self
|
5
|
+
|
6
|
+
attr_accessor :placeholder_line
|
7
|
+
|
8
|
+
def placeholder_line=(value)
|
9
|
+
if value
|
10
|
+
new_value = value
|
11
|
+
new_value = "* #{new_value}" unless new_value.start_with?('* ')
|
12
|
+
new_value = "#{new_value}\n" unless new_value.end_with?("\n")
|
13
|
+
@placeholder_line = new_value
|
14
|
+
else
|
15
|
+
@placeholder_line = nil
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
def placeholder_line?
|
20
|
+
!@placeholder_line.nil?
|
21
|
+
end
|
22
|
+
|
23
|
+
def reset
|
24
|
+
self.placeholder_line = "* Your contribution here.\n"
|
25
|
+
end
|
26
|
+
|
27
|
+
reset
|
28
|
+
end
|
29
|
+
|
30
|
+
class << self
|
31
|
+
def configure
|
32
|
+
block_given? ? yield(Config) : Config
|
33
|
+
end
|
34
|
+
|
35
|
+
def config
|
36
|
+
Config
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
data/lib/changelog/plugin.rb
CHANGED
@@ -51,12 +51,13 @@ Here's an example of a #{filename} entry:
|
|
51
51
|
#{Danger::Changelog::ChangelogEntryLine.example(github)}
|
52
52
|
```
|
53
53
|
MARKDOWN
|
54
|
-
warn "Unless you're refactoring existing code, please update #{filename}.", sticky: false
|
54
|
+
warn "Unless you're refactoring existing code or improving documentation, please update #{filename}.", sticky: false
|
55
55
|
false
|
56
56
|
end
|
57
57
|
end
|
58
58
|
|
59
59
|
# Is the CHANGELOG.md format correct?
|
60
|
+
# @return [boolean]
|
60
61
|
def is_changelog_format_correct?
|
61
62
|
changelog_file = Danger::Changelog::ChangelogFile.new(filename)
|
62
63
|
if changelog_file.exists?
|
@@ -67,7 +68,7 @@ MARKDOWN
|
|
67
68
|
MARKDOWN
|
68
69
|
end
|
69
70
|
messaging.fail("One of the lines below found in #{filename} doesn't match the expected format. Please make it look like the other lines, pay attention to periods and spaces.", sticky: false) if changelog_file.bad_lines?
|
70
|
-
messaging.fail("Please put back the
|
71
|
+
messaging.fail("Please put back the `#{Danger::Changelog.config.placeholder_line.chomp}` line into #{filename}.", sticky: false) unless changelog_file.your_contribution_here? || !Danger::Changelog.config.placeholder_line?
|
71
72
|
changelog_file.good?
|
72
73
|
else
|
73
74
|
messaging.fail("The #{filename} file does not exist.", sticky: false)
|
data/lib/danger_plugin.rb
CHANGED
@@ -1,56 +1,67 @@
|
|
1
1
|
require File.expand_path('../spec_helper', __FILE__)
|
2
2
|
|
3
3
|
describe Danger::Changelog::ChangelogPlaceholderLine do
|
4
|
-
context '
|
5
|
-
|
6
|
-
|
4
|
+
context 'with a custom placeholder line' do
|
5
|
+
before do
|
6
|
+
Danger::Changelog.configure do |config|
|
7
|
+
config.placeholder_line = "* Nothing yet here.\n"
|
8
|
+
end
|
7
9
|
end
|
8
10
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
11
|
+
describe 'validates_as_changelog_line?' do
|
12
|
+
context 'when line is equal to placeholder_line from config' do
|
13
|
+
it 'validates as changelog line' do
|
14
|
+
expect(described_class.validates_as_changelog_line?("* Nothing yet here.\n")).to be true
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
context 'when line is not equal to placeholder_line from config' do
|
19
|
+
it 'validates as changelog line' do
|
20
|
+
expect(described_class.validates_as_changelog_line?("* Put your contribution here.\n")).to be false
|
21
|
+
end
|
22
|
+
end
|
14
23
|
end
|
15
24
|
|
16
|
-
|
17
|
-
context 'when
|
18
|
-
subject { Danger::Changelog::ChangelogPlaceholderLine.new("*
|
25
|
+
describe 'valid?' do
|
26
|
+
context 'when is equal to config placeholder line' do
|
27
|
+
subject { Danger::Changelog::ChangelogPlaceholderLine.new("* Nothing yet here.\n") }
|
19
28
|
|
20
29
|
it 'is valid' do
|
21
30
|
expect(subject.valid?).to be true
|
22
31
|
end
|
23
32
|
end
|
24
33
|
|
25
|
-
context 'when
|
26
|
-
subject { Danger::Changelog::ChangelogPlaceholderLine.new(
|
34
|
+
context 'when is not equal to config placeholder line' do
|
35
|
+
subject { Danger::Changelog::ChangelogPlaceholderLine.new("* Your change here.\n") }
|
27
36
|
|
28
|
-
it 'is
|
29
|
-
expect(subject.
|
37
|
+
it 'is not valid' do
|
38
|
+
expect(subject.valid?).to be false
|
30
39
|
end
|
31
40
|
end
|
41
|
+
end
|
42
|
+
end
|
32
43
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
expect(subject.invalid?).to be true
|
38
|
-
end
|
44
|
+
context 'with a blank placeholder line' do
|
45
|
+
before do
|
46
|
+
Danger::Changelog.configure do |config|
|
47
|
+
config.placeholder_line = nil
|
39
48
|
end
|
49
|
+
end
|
40
50
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
expect(subject.invalid?).to be true
|
51
|
+
describe 'validates_as_changelog_line?' do
|
52
|
+
context 'when line is not blank' do
|
53
|
+
it 'validates as changelog line' do
|
54
|
+
expect(described_class.validates_as_changelog_line?("* Whatever.\n")).to be false
|
46
55
|
end
|
47
56
|
end
|
57
|
+
end
|
48
58
|
|
49
|
-
|
50
|
-
|
59
|
+
describe 'valid?' do
|
60
|
+
context 'when is not blank' do
|
61
|
+
subject { Danger::Changelog::ChangelogPlaceholderLine.new("* Your change here.\n") }
|
51
62
|
|
52
|
-
it 'is
|
53
|
-
expect(subject.
|
63
|
+
it 'is not valid' do
|
64
|
+
expect(subject.valid?).to be false
|
54
65
|
end
|
55
66
|
end
|
56
67
|
end
|
data/spec/changelog_spec.rb
CHANGED
@@ -41,7 +41,7 @@ describe Danger::Changelog do
|
|
41
41
|
it 'complains when no CHANGELOG can be found' do
|
42
42
|
expect(subject).to be false
|
43
43
|
expect(status_report[:errors]).to eq []
|
44
|
-
expect(status_report[:warnings]).to eq ["Unless you're refactoring existing code, please update #{filename}."]
|
44
|
+
expect(status_report[:warnings]).to eq ["Unless you're refactoring existing code or improving documentation, please update #{filename}."]
|
45
45
|
expect(status_report[:markdowns].map(&:message)).to eq ["Here's an example of a #{filename} entry:\n\n```markdown\n* [#123](https://github.com/dblock/danger-changelog/pull/123): Being dangerous - [@dblock](https://github.com/dblock).\n```\n"]
|
46
46
|
end
|
47
47
|
end
|
@@ -101,16 +101,65 @@ describe Danger::Changelog do
|
|
101
101
|
expect(status_report[:markdowns]).to eq []
|
102
102
|
end
|
103
103
|
|
104
|
-
context '
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
104
|
+
context 'customized' do
|
105
|
+
before do
|
106
|
+
Danger::Changelog.configure do |config|
|
107
|
+
config.placeholder_line = "* Nothing yet.\n"
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
let(:filename) { File.expand_path('../fixtures/changelogs/customized.md', __FILE__) }
|
112
|
+
it 'is ok' do
|
113
|
+
expect(subject).to be true
|
114
|
+
expect(status_report[:errors]).to eq []
|
109
115
|
expect(status_report[:warnings]).to eq []
|
110
116
|
expect(status_report[:markdowns]).to eq []
|
111
117
|
end
|
112
118
|
end
|
113
119
|
|
120
|
+
context 'missing your contribution here' do
|
121
|
+
let(:filename) { File.expand_path('../fixtures/changelogs/missing_your_contribution_here.md', __FILE__) }
|
122
|
+
|
123
|
+
context 'when placeholder line is customized' do
|
124
|
+
before do
|
125
|
+
Danger::Changelog.configure do |config|
|
126
|
+
config.placeholder_line = "* Nothing yet.\n"
|
127
|
+
end
|
128
|
+
end
|
129
|
+
|
130
|
+
it 'complains' do
|
131
|
+
expect(subject).to be false
|
132
|
+
expect(status_report[:errors]).to eq ["Please put back the `* Nothing yet.` line into #{filename}."]
|
133
|
+
expect(status_report[:warnings]).to eq []
|
134
|
+
expect(status_report[:markdowns]).to eq []
|
135
|
+
end
|
136
|
+
end
|
137
|
+
|
138
|
+
context 'when placeholder line is default' do
|
139
|
+
it 'complains' do
|
140
|
+
expect(subject).to be false
|
141
|
+
expect(status_report[:errors]).to eq ["Please put back the `* Your contribution here.` line into #{filename}."]
|
142
|
+
expect(status_report[:warnings]).to eq []
|
143
|
+
expect(status_report[:markdowns]).to eq []
|
144
|
+
end
|
145
|
+
end
|
146
|
+
|
147
|
+
context 'when placeholder line is nil' do
|
148
|
+
before do
|
149
|
+
Danger::Changelog.configure do |config|
|
150
|
+
config.placeholder_line = nil
|
151
|
+
end
|
152
|
+
end
|
153
|
+
|
154
|
+
it 'is ok' do
|
155
|
+
expect(subject).to be true
|
156
|
+
expect(status_report[:errors]).to eq []
|
157
|
+
expect(status_report[:warnings]).to eq []
|
158
|
+
expect(status_report[:markdowns]).to eq []
|
159
|
+
end
|
160
|
+
end
|
161
|
+
end
|
162
|
+
|
114
163
|
context 'minimal example' do
|
115
164
|
let(:filename) { File.expand_path('../fixtures/changelogs/minimal.md', __FILE__) }
|
116
165
|
it 'is ok' do
|
@@ -119,6 +168,23 @@ describe Danger::Changelog do
|
|
119
168
|
expect(status_report[:warnings]).to eq []
|
120
169
|
expect(status_report[:markdowns]).to eq []
|
121
170
|
end
|
171
|
+
|
172
|
+
context 'when placeholder line is nil' do
|
173
|
+
before do
|
174
|
+
Danger::Changelog.configure do |config|
|
175
|
+
config.placeholder_line = nil
|
176
|
+
end
|
177
|
+
end
|
178
|
+
|
179
|
+
it 'complains' do
|
180
|
+
expect(subject).to be false
|
181
|
+
expect(status_report[:errors]).to eq ["One of the lines below found in #{filename} doesn't match the expected format. Please make it look like the other lines, pay attention to periods and spaces."]
|
182
|
+
expect(status_report[:warnings]).to eq []
|
183
|
+
expect(status_report[:markdowns].map(&:message)).to eq [
|
184
|
+
"```markdown\n* Your contribution here.\n```\n"
|
185
|
+
]
|
186
|
+
end
|
187
|
+
end
|
122
188
|
end
|
123
189
|
|
124
190
|
context 'with bad lines' do
|
data/spec/config_spec.rb
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
require File.expand_path('../spec_helper', __FILE__)
|
2
|
+
|
3
|
+
describe Danger::Changelog::Config do
|
4
|
+
describe 'configure' do
|
5
|
+
describe 'placeholder_line' do
|
6
|
+
context 'when without markdown star' do
|
7
|
+
before do
|
8
|
+
Danger::Changelog.configure do |config|
|
9
|
+
config.placeholder_line = "Nothing yet.\n"
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'ads missing star and saves configuration' do
|
14
|
+
expect(Danger::Changelog.config.placeholder_line).to eq "* Nothing yet.\n"
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
context 'when without trailing newline' do
|
19
|
+
before do
|
20
|
+
Danger::Changelog.configure do |config|
|
21
|
+
config.placeholder_line = '* Nothing yet.'
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
it 'ads missing trailing newline and saves configuration' do
|
26
|
+
expect(Danger::Changelog.config.placeholder_line).to eq "* Nothing yet.\n"
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
context 'when valid' do
|
31
|
+
before do
|
32
|
+
Danger::Changelog.configure do |config|
|
33
|
+
config.placeholder_line = "* Nothing yet.\n"
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
it 'saves configuration' do
|
38
|
+
expect(Danger::Changelog.config.placeholder_line).to eq "* Nothing yet.\n"
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: danger-changelog
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- dblock
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-05-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: danger-plugin-api
|
@@ -39,117 +39,117 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.3'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: guard
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '2.14'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '2.14'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name: rspec
|
56
|
+
name: guard-rspec
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '4.7'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '4.7'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: listen
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - '='
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: 3.0.7
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - '='
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
82
|
+
version: 3.0.7
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: pry
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - "
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '0
|
89
|
+
version: '0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - "
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '0
|
96
|
+
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
98
|
+
name: rake
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
103
|
+
version: '10.0'
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
110
|
+
version: '10.0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: rspec
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: '4
|
117
|
+
version: '3.4'
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: '4
|
124
|
+
version: '3.4'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
126
|
+
name: rubocop
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- -
|
129
|
+
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
131
|
+
version: 0.52.1
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
|
-
- -
|
136
|
+
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version:
|
138
|
+
version: 0.52.1
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
|
-
name:
|
140
|
+
name: yard
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
|
-
- - "
|
143
|
+
- - "~>"
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version:
|
145
|
+
version: 0.9.11
|
146
146
|
type: :development
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
|
-
- - "
|
150
|
+
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
|
-
version:
|
152
|
+
version: 0.9.11
|
153
153
|
description: A danger.systems plugin that is OCD about your CHANGELOG.
|
154
154
|
email:
|
155
155
|
- dblock@dblock.org
|
@@ -180,6 +180,7 @@ files:
|
|
180
180
|
- lib/changelog/changelog_line/changelog_line.rb
|
181
181
|
- lib/changelog/changelog_line/changelog_line_parser.rb
|
182
182
|
- lib/changelog/changelog_line/changelog_placeholder_line.rb
|
183
|
+
- lib/changelog/config.rb
|
183
184
|
- lib/changelog/gem_version.rb
|
184
185
|
- lib/changelog/plugin.rb
|
185
186
|
- lib/danger_changelog.rb
|
@@ -190,6 +191,8 @@ files:
|
|
190
191
|
- spec/changelog_line_parser_spec.rb
|
191
192
|
- spec/changelog_placeholder_line_spec.rb
|
192
193
|
- spec/changelog_spec.rb
|
194
|
+
- spec/config_spec.rb
|
195
|
+
- spec/fixtures/changelogs/customized.md
|
193
196
|
- spec/fixtures/changelogs/minimal.md
|
194
197
|
- spec/fixtures/changelogs/missing_your_contribution_here.md
|
195
198
|
- spec/fixtures/changelogs/with_bad_lines.md
|
@@ -214,7 +217,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
214
217
|
version: '0'
|
215
218
|
requirements: []
|
216
219
|
rubyforge_project:
|
217
|
-
rubygems_version: 2.
|
220
|
+
rubygems_version: 2.6.13
|
218
221
|
signing_key:
|
219
222
|
specification_version: 4
|
220
223
|
summary: A danger.systems plugin that is OCD about your CHANGELOG.
|
@@ -225,6 +228,8 @@ test_files:
|
|
225
228
|
- spec/changelog_line_parser_spec.rb
|
226
229
|
- spec/changelog_placeholder_line_spec.rb
|
227
230
|
- spec/changelog_spec.rb
|
231
|
+
- spec/config_spec.rb
|
232
|
+
- spec/fixtures/changelogs/customized.md
|
228
233
|
- spec/fixtures/changelogs/minimal.md
|
229
234
|
- spec/fixtures/changelogs/missing_your_contribution_here.md
|
230
235
|
- spec/fixtures/changelogs/with_bad_lines.md
|