pig-ci-rails 0.2.0 → 1.1.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.
@@ -2,7 +2,7 @@
2
2
  # It aims to save to the project root in /pig-ci.
3
3
  # It is inspired by https://github.com/colszowka/simplecov-html
4
4
 
5
- require 'erb'
5
+ require "erb"
6
6
 
7
7
  class PigCI::Summary::HTML < PigCI::Summary
8
8
  def initialize(reports:)
@@ -11,15 +11,15 @@ class PigCI::Summary::HTML < PigCI::Summary
11
11
 
12
12
  def save!
13
13
  copy_assets!
14
- File.write(index_file_path, template('index').result(binding))
14
+ File.write(index_file_path, template("index").result(binding))
15
15
 
16
- puts I18n.t('pig_ci.summary.saved_successfully', output_directory: PigCI.output_directory)
16
+ puts I18n.t("pig_ci.summary.saved_successfully", output_directory: PigCI.output_directory)
17
17
  end
18
18
 
19
19
  private
20
20
 
21
21
  def render_report(report)
22
- template('report').result(binding)
22
+ template("report").result(binding)
23
23
  end
24
24
 
25
25
  def timestamps
@@ -27,11 +27,11 @@ class PigCI::Summary::HTML < PigCI::Summary
27
27
  end
28
28
 
29
29
  def template(name)
30
- ERB.new(File.read(File.join(File.dirname(__FILE__), '../views', "#{name}.erb")))
30
+ ERB.new(File.read(File.join(File.dirname(__FILE__), "../views", "#{name}.erb")))
31
31
  end
32
32
 
33
33
  def index_file_path
34
- PigCI.output_directory.join('index.html')
34
+ PigCI.output_directory.join("index.html")
35
35
  end
36
36
 
37
37
  def copy_assets!
@@ -40,10 +40,10 @@ class PigCI::Summary::HTML < PigCI::Summary
40
40
  end
41
41
 
42
42
  def output_assets_directory
43
- PigCI.output_directory.join('assets')
43
+ PigCI.output_directory.join("assets")
44
44
  end
45
45
 
46
46
  def assets_directory
47
- File.join(File.dirname(__FILE__), '../../../public/assets')
47
+ File.join(File.dirname(__FILE__), "../../../public/assets")
48
48
  end
49
49
  end
@@ -1,4 +1,4 @@
1
- require 'terminal-table'
1
+ require "terminal-table"
2
2
 
3
3
  class PigCI::Summary::Terminal < PigCI::Summary
4
4
  def initialize(reports:)
@@ -19,8 +19,8 @@ class PigCI::Summary::Terminal < PigCI::Summary
19
19
 
20
20
  table = ::Terminal::Table.new headings: report.headings do |t|
21
21
  report.sorted_and_formatted_data_for(@timestamp)[0..PigCI.terminal_report_row_limit]
22
- .collect { |data| PigCI::Decorator::ReportTerminalDecorator.new(data) }
23
- .each do |data|
22
+ .collect { |data| PigCI::Decorator::ReportTerminalDecorator.new(data) }
23
+ .each do |data|
24
24
  t << report.column_keys.collect { |key| data.send(key) }
25
25
  end
26
26
  end
@@ -0,0 +1,3 @@
1
+ module PigCI::TestFrameworks; end
2
+
3
+ require "pig_ci/test_frameworks/rspec"
@@ -0,0 +1,21 @@
1
+ class PigCI::TestFrameworks::Rspec
2
+ def self.configure!
3
+ if defined?(::RSpec)
4
+ ::RSpec.configure do |config|
5
+ config.around(:each, pig_ci: false) do |example|
6
+ @pig_ci_enabled = PigCI.enabled?
7
+ PigCI.enabled = false
8
+ example.run
9
+ PigCI.enabled = @pig_ci_enabled
10
+ end
11
+
12
+ config.around(:each, pig_ci: true) do |example|
13
+ @pig_ci_enabled = PigCI.enabled?
14
+ PigCI.enabled = true
15
+ example.run
16
+ PigCI.enabled = @pig_ci_enabled
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -1,3 +1,3 @@
1
1
  module PigCI
2
- VERSION = '0.2.0'.freeze
2
+ VERSION = "1.1.0".freeze
3
3
  end
@@ -10,6 +10,8 @@
10
10
  <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
11
11
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
12
12
  <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
13
+ <link rel="shortcut icon" href="https://pigci.mikerogers.io/images/favicon.png"/>
14
+ <link rel="icon" type="image/ico" href="https://pigci.mikerogers.io/images/favicon.ico"/>
13
15
  </head>
14
16
  <body>
15
17
 
@@ -17,8 +19,8 @@
17
19
  <header class="py-3">
18
20
  <div class="row">
19
21
  <div class="col-6">
20
- <a href="https://pigci.com/" target="_blank" rel="noopener">
21
- <img src="https://cdn.pigci.com/logos/pig-ci.svg" class="float-left mr-4" alt="PigCI Logo" />
22
+ <a href="https://pigci.mikerogers.io/" target="_blank" rel="noopener">
23
+ <img src="https://pigci.mikerogers.io/images/logo_pigci.svg" class="float-left mr-4" alt="PigCI Logo" />
22
24
  </a>
23
25
  <h1><%= I18n.t('.pig_ci.summary.title') %></h1>
24
26
  </div>
data/pig_ci.gemspec CHANGED
@@ -1,47 +1,48 @@
1
- lib = File.expand_path('lib', __dir__)
1
+ lib = File.expand_path("lib", __dir__)
2
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
- require 'pig_ci/version'
3
+ require "pig_ci/version"
4
4
 
5
5
  Gem::Specification.new do |spec|
6
- spec.name = 'pig-ci-rails'
7
- spec.version = PigCI::VERSION
8
- spec.authors = ['Mike Rogers']
9
- spec.email = ['me@mikerogers.io']
6
+ spec.name = "pig-ci-rails"
7
+ spec.version = PigCI::VERSION
8
+ spec.authors = ["Mike Rogers"]
9
+ spec.email = ["me@mikerogers.io"]
10
10
 
11
- spec.summary = 'Mintor metrics such a memory usage as part of testing'
12
- spec.description = 'A gem for Ruby on Rails that will report key metrics (memory, request time & SQL Requests) for request & feature tests.'
13
- spec.homepage = 'https://github.com/PigCI/pig-ci-rails'
14
- spec.license = 'MIT'
11
+ spec.summary = "Monitor your Ruby Applications metrics via your test suite."
12
+ spec.description = "A gem for Ruby on Rails that will track key metrics (memory, request time & SQL Requests) for request & feature tests."
13
+ spec.homepage = "https://github.com/PigCI/pig-ci-rails"
14
+ spec.license = "MIT"
15
+
16
+ spec.metadata = {
17
+ "bug_tracker_uri" => "#{spec.homepage}/issues",
18
+ "changelog_uri" => "#{spec.homepage}/blob/master/CHANGELOG.md",
19
+ "documentation_uri" => spec.homepage,
20
+ "homepage_uri" => spec.homepage,
21
+ "source_code_uri" => spec.homepage,
22
+ "funding_uri" => "https://www.buymeacoffee.com/MikeRogers0"
23
+ }
15
24
 
16
25
  # Specify which files should be added to the gem when it is released.
17
26
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
18
27
  spec.files = Dir.chdir(File.expand_path(__dir__)) do
19
28
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
20
29
  end
21
- spec.require_paths = ['lib']
22
- spec.required_ruby_version = '>= 2.3'
23
-
24
- spec.add_dependency 'activesupport', '>= 4.2'
25
- spec.add_dependency 'colorize', '>= 0.8.1'
26
- spec.add_dependency 'get_process_mem', '~> 0.2.3'
27
- spec.add_dependency 'httparty', '>= 0.16'
28
- spec.add_dependency 'i18n', '>= 0.9', '< 2'
29
- spec.add_dependency 'rails', '>= 4.2.0'
30
- spec.add_dependency 'terminal-table', '~> 1.8.0'
30
+ spec.require_paths = ["lib"]
31
+ spec.required_ruby_version = ">= 2.5"
31
32
 
32
- spec.add_development_dependency 'bundler', '~> 2.0'
33
- spec.add_development_dependency 'rake', '~> 13.0'
34
- spec.add_development_dependency 'webmock', '~> 3.8.0'
33
+ spec.add_dependency "activesupport", ">= 4.2"
34
+ spec.add_dependency "colorize", ">= 0.8.1"
35
+ spec.add_dependency "get_process_mem", "~> 0.2.3"
36
+ spec.add_dependency "i18n", ">= 0.9", "< 2"
37
+ spec.add_dependency "rails", ">= 4.2.0"
38
+ spec.add_dependency "terminal-table", ">= 1.8", "< 2.1"
35
39
 
36
- spec.add_development_dependency 'json-schema', '~> 2.8.1'
37
- spec.add_development_dependency 'rspec', '~> 3.9.0'
38
- spec.add_development_dependency 'simplecov', '~> 0.17.0'
39
- spec.add_development_dependency 'yard', '~> 0.9.24'
40
+ spec.add_development_dependency "bundler", "~> 2.0"
41
+ spec.add_development_dependency "rake", "~> 13.0"
42
+ spec.add_development_dependency "webmock", "~> 3.11.0"
40
43
 
41
- spec.post_install_message = [
42
- 'Thank you for install Pig CI!',
43
- 'Upgrade Notes:',
44
- 'The latest version adds a "config.thresholds" option which will replace the pigci.com integration in future.',
45
- 'See https://github.com/PigCI/pig-ci-rails#configuring-thresholds for more information :)'
46
- ].join("\n")
44
+ spec.add_development_dependency "json-schema", "~> 2.8.1"
45
+ spec.add_development_dependency "rspec", "~> 3.10.0"
46
+ spec.add_development_dependency "simplecov", "~> 0.20.0"
47
+ spec.add_development_dependency "yard", "~> 0.9.24"
47
48
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pig-ci-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Rogers
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-18 00:00:00.000000000 Z
11
+ date: 2021-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -52,20 +52,6 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: 0.2.3
55
- - !ruby/object:Gem::Dependency
56
- name: httparty
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0.16'
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0.16'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: i18n
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -104,16 +90,22 @@ dependencies:
104
90
  name: terminal-table
105
91
  requirement: !ruby/object:Gem::Requirement
106
92
  requirements:
107
- - - "~>"
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: '1.8'
96
+ - - "<"
108
97
  - !ruby/object:Gem::Version
109
- version: 1.8.0
98
+ version: '2.1'
110
99
  type: :runtime
111
100
  prerelease: false
112
101
  version_requirements: !ruby/object:Gem::Requirement
113
102
  requirements:
114
- - - "~>"
103
+ - - ">="
104
+ - !ruby/object:Gem::Version
105
+ version: '1.8'
106
+ - - "<"
115
107
  - !ruby/object:Gem::Version
116
- version: 1.8.0
108
+ version: '2.1'
117
109
  - !ruby/object:Gem::Dependency
118
110
  name: bundler
119
111
  requirement: !ruby/object:Gem::Requirement
@@ -148,14 +140,14 @@ dependencies:
148
140
  requirements:
149
141
  - - "~>"
150
142
  - !ruby/object:Gem::Version
151
- version: 3.8.0
143
+ version: 3.11.0
152
144
  type: :development
153
145
  prerelease: false
154
146
  version_requirements: !ruby/object:Gem::Requirement
155
147
  requirements:
156
148
  - - "~>"
157
149
  - !ruby/object:Gem::Version
158
- version: 3.8.0
150
+ version: 3.11.0
159
151
  - !ruby/object:Gem::Dependency
160
152
  name: json-schema
161
153
  requirement: !ruby/object:Gem::Requirement
@@ -176,28 +168,28 @@ dependencies:
176
168
  requirements:
177
169
  - - "~>"
178
170
  - !ruby/object:Gem::Version
179
- version: 3.9.0
171
+ version: 3.10.0
180
172
  type: :development
181
173
  prerelease: false
182
174
  version_requirements: !ruby/object:Gem::Requirement
183
175
  requirements:
184
176
  - - "~>"
185
177
  - !ruby/object:Gem::Version
186
- version: 3.9.0
178
+ version: 3.10.0
187
179
  - !ruby/object:Gem::Dependency
188
180
  name: simplecov
189
181
  requirement: !ruby/object:Gem::Requirement
190
182
  requirements:
191
183
  - - "~>"
192
184
  - !ruby/object:Gem::Version
193
- version: 0.17.0
185
+ version: 0.20.0
194
186
  type: :development
195
187
  prerelease: false
196
188
  version_requirements: !ruby/object:Gem::Requirement
197
189
  requirements:
198
190
  - - "~>"
199
191
  - !ruby/object:Gem::Version
200
- version: 0.17.0
192
+ version: 0.20.0
201
193
  - !ruby/object:Gem::Dependency
202
194
  name: yard
203
195
  requirement: !ruby/object:Gem::Requirement
@@ -212,7 +204,7 @@ dependencies:
212
204
  - - "~>"
213
205
  - !ruby/object:Gem::Version
214
206
  version: 0.9.24
215
- description: A gem for Ruby on Rails that will report key metrics (memory, request
207
+ description: A gem for Ruby on Rails that will track key metrics (memory, request
216
208
  time & SQL Requests) for request & feature tests.
217
209
  email:
218
210
  - me@mikerogers.io
@@ -220,12 +212,11 @@ executables: []
220
212
  extensions: []
221
213
  extra_rdoc_files: []
222
214
  files:
223
- - ".github/FUNDING.yml"
215
+ - ".github/workflows/changelog.yml"
224
216
  - ".github/workflows/gempush.yml"
217
+ - ".github/workflows/rspec.yml"
218
+ - ".github/workflows/standard.yml"
225
219
  - ".gitignore"
226
- - ".rubocop.yml"
227
- - ".ruby-version"
228
- - ".travis.yml"
229
220
  - CHANGELOG.md
230
221
  - CODE_OF_CONDUCT.md
231
222
  - Gemfile
@@ -236,8 +227,6 @@ files:
236
227
  - bin/setup
237
228
  - config/locales/pig_ci/en.yml
238
229
  - lib/pig_ci.rb
239
- - lib/pig_ci/api.rb
240
- - lib/pig_ci/api/reports.rb
241
230
  - lib/pig_ci/configuration.rb
242
231
  - lib/pig_ci/decorator.rb
243
232
  - lib/pig_ci/decorator/report_terminal_decorator.rb
@@ -259,6 +248,8 @@ files:
259
248
  - lib/pig_ci/summary/ci.rb
260
249
  - lib/pig_ci/summary/html.rb
261
250
  - lib/pig_ci/summary/terminal.rb
251
+ - lib/pig_ci/test_frameworks.rb
252
+ - lib/pig_ci/test_frameworks/rspec.rb
262
253
  - lib/pig_ci/version.rb
263
254
  - lib/pig_ci/views/index.erb
264
255
  - lib/pig_ci/views/report.erb
@@ -268,12 +259,14 @@ files:
268
259
  homepage: https://github.com/PigCI/pig-ci-rails
269
260
  licenses:
270
261
  - MIT
271
- metadata: {}
272
- post_install_message: |-
273
- Thank you for install Pig CI!
274
- Upgrade Notes:
275
- The latest version adds a "config.thresholds" option which will replace the pigci.com integration in future.
276
- See https://github.com/PigCI/pig-ci-rails#configuring-thresholds for more information :)
262
+ metadata:
263
+ bug_tracker_uri: https://github.com/PigCI/pig-ci-rails/issues
264
+ changelog_uri: https://github.com/PigCI/pig-ci-rails/blob/master/CHANGELOG.md
265
+ documentation_uri: https://github.com/PigCI/pig-ci-rails
266
+ homepage_uri: https://github.com/PigCI/pig-ci-rails
267
+ source_code_uri: https://github.com/PigCI/pig-ci-rails
268
+ funding_uri: https://www.buymeacoffee.com/MikeRogers0
269
+ post_install_message:
277
270
  rdoc_options: []
278
271
  require_paths:
279
272
  - lib
@@ -281,15 +274,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
281
274
  requirements:
282
275
  - - ">="
283
276
  - !ruby/object:Gem::Version
284
- version: '2.3'
277
+ version: '2.5'
285
278
  required_rubygems_version: !ruby/object:Gem::Requirement
286
279
  requirements:
287
280
  - - ">="
288
281
  - !ruby/object:Gem::Version
289
282
  version: '0'
290
283
  requirements: []
291
- rubygems_version: 3.0.3
292
- signing_key:
284
+ rubygems_version: 3.2.3
285
+ signing_key:
293
286
  specification_version: 4
294
- summary: Mintor metrics such a memory usage as part of testing
287
+ summary: Monitor your Ruby Applications metrics via your test suite.
295
288
  test_files: []
data/.github/FUNDING.yml DELETED
@@ -1,3 +0,0 @@
1
- # These are supported funding model platforms
2
-
3
- custom: ['https://pigci.com/']
data/.rubocop.yml DELETED
@@ -1,24 +0,0 @@
1
- AllCops:
2
- Exclude:
3
- - '.git/**/*'
4
- - 'bin/*'
5
-
6
- Style/FrozenStringLiteralComment:
7
- EnforcedStyle: never
8
-
9
- Style/BracesAroundHashParameters:
10
- EnforcedStyle: context_dependent
11
-
12
- Metrics/LineLength:
13
- Max: 120
14
-
15
- Metrics/BlockLength:
16
- CountComments: true
17
- Max: 25
18
- ExcludedMethods: []
19
- Exclude:
20
- - "spec/**/*"
21
- - '*.gemspec'
22
-
23
- Style/ClassAndModuleChildren:
24
- EnforcedStyle: compact
data/.ruby-version DELETED
@@ -1 +0,0 @@
1
- 2.6.5
data/.travis.yml DELETED
@@ -1,27 +0,0 @@
1
- ---
2
- sudo: false
3
-
4
- language: ruby
5
-
6
- cache: bundler
7
-
8
- rvm:
9
- - 2.3.8
10
- - 2.4.7
11
- - 2.5.7
12
- - 2.6.5
13
- - 2.7.0-preview1
14
-
15
- before_install:
16
- - gem install bundler -v 2.0.1
17
- - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
18
- - chmod +x ./cc-test-reporter
19
- - ./cc-test-reporter before-build
20
-
21
- script: "bundle exec rake spec"
22
-
23
- after_script:
24
- - ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT
25
-
26
- notifications:
27
- email: false