timecop-rspec 1.0.1 → 1.0.3
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
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +36 -2
- data/CONTRIBUTING.md +1 -3
- data/README.md +39 -13
- data/checksums/timecop-rspec-1.0.2.gem.sha256 +1 -0
- data/checksums/timecop-rspec-1.0.2.gem.sha512 +1 -0
- data/checksums/timecop-rspec-1.0.3.gem.sha256 +1 -0
- data/checksums/timecop-rspec-1.0.3.gem.sha512 +1 -0
- data/lib/timecop/rspec/version.rb +1 -1
- data.tar.gz.sig +2 -1
- metadata +53 -140
- metadata.gz.sig +0 -0
- data/.devcontainer/devcontainer.json +0 -26
- data/.env.local.example +0 -3
- data/.envrc +0 -41
- data/.github/FUNDING.yml +0 -13
- data/.github/dependabot.yml +0 -12
- data/.github/workflows/ancient.yml +0 -77
- data/.github/workflows/auto-assign.yml +0 -21
- data/.github/workflows/codeql-analysis.yml +0 -70
- data/.github/workflows/coverage.yml +0 -126
- data/.github/workflows/current.yml +0 -85
- data/.github/workflows/dependency-review.yml +0 -20
- data/.github/workflows/deps_locked.yml +0 -75
- data/.github/workflows/deps_unlocked.yml +0 -84
- data/.github/workflows/discord-notifier.yml +0 -38
- data/.github/workflows/heads.yml +0 -84
- data/.github/workflows/jruby.yml +0 -75
- data/.github/workflows/legacy.yml +0 -67
- data/.github/workflows/style.yml +0 -64
- data/.github/workflows/supported.yml +0 -82
- data/.github/workflows/truffle.yml +0 -75
- data/.github/workflows/unsupported.yml +0 -75
- data/.gitignore +0 -45
- data/.gitlab-ci.yml +0 -44
- data/.idea/.gitignore +0 -8
- data/.idea/GitLink.xml +0 -6
- data/.idea/misc.xml +0 -4
- data/.idea/modules.xml +0 -8
- data/.idea/timecop-rspec.iml +0 -122
- data/.idea/vcs.xml +0 -6
- data/.junie/TASK_NOTE.md +0 -1
- data/.junie/guidelines.md +0 -139
- data/.qlty/qlty.toml +0 -79
- data/.rspec +0 -8
- data/.rubocop.yml +0 -15
- data/.rubocop_gradual.lock +0 -76
- data/.simplecov +0 -11
- data/.tool-versions +0 -1
- data/.yard_gfm_support.rb +0 -22
- data/.yardopts +0 -11
- data/Appraisal.root.gemfile +0 -12
- data/Appraisals +0 -104
- data/CNAME +0 -1
- data/Gemfile +0 -38
- data/Gemfile.lock +0 -293
- data/Rakefile +0 -287
- data/bin/appraisal +0 -16
- data/bin/bundle-audit +0 -16
- data/bin/bundler-audit +0 -16
- data/bin/code_climate_reek +0 -16
- data/bin/coderay +0 -16
- data/bin/console +0 -12
- data/bin/erb +0 -16
- data/bin/gem_checksums +0 -16
- data/bin/htmldiff +0 -16
- data/bin/irb +0 -16
- data/bin/kramdown +0 -16
- data/bin/ldiff +0 -16
- data/bin/nokogiri +0 -16
- data/bin/pry +0 -16
- data/bin/racc +0 -16
- data/bin/rake +0 -16
- data/bin/rdbg +0 -16
- data/bin/rdoc +0 -16
- data/bin/reek +0 -16
- data/bin/ri +0 -16
- data/bin/rspec +0 -16
- data/bin/rubocop +0 -16
- data/bin/rubocop-gradual +0 -16
- data/bin/ruby-parse +0 -16
- data/bin/ruby-rewrite +0 -16
- data/bin/setup +0 -7
- data/bin/standardrb +0 -16
- data/bin/thor +0 -16
- data/bin/yard +0 -16
- data/bin/yard-junk +0 -16
- data/bin/yardoc +0 -16
- data/bin/yri +0 -16
- data/certs/pboling.pem +0 -27
- data/docs/Timecop/Rspec/ExampleDecorator.html +0 -626
- data/docs/Timecop/Rspec/SequentialTimeMachine.html +0 -338
- data/docs/Timecop/Rspec/TimeMachine.html +0 -357
- data/docs/Timecop/Rspec/TravelLog.html +0 -440
- data/docs/Timecop/Rspec/Traveler.html +0 -353
- data/docs/Timecop/Rspec/Version.html +0 -154
- data/docs/Timecop/Rspec.html +0 -476
- data/docs/Timecop.html +0 -143
- data/docs/_index.html +0 -224
- data/docs/class_list.html +0 -54
- data/docs/css/common.css +0 -1
- data/docs/css/full_list.css +0 -58
- data/docs/css/style.css +0 -503
- data/docs/file.CHANGELOG.html +0 -110
- data/docs/file.CITATION.html +0 -92
- data/docs/file.CODE_OF_CONDUCT.html +0 -201
- data/docs/file.CONTRIBUTING.html +0 -220
- data/docs/file.LICENSE.html +0 -70
- data/docs/file.README.html +0 -531
- data/docs/file.REEK.html +0 -71
- data/docs/file.RUBOCOP.html +0 -171
- data/docs/file.SECURITY.html +0 -101
- data/docs/file.rspec.html +0 -109
- data/docs/file.timecop-rspec-1.0.0.gem.html +0 -71
- data/docs/file.timecop.html +0 -72
- data/docs/file_list.html +0 -119
- data/docs/frames.html +0 -22
- data/docs/index.html +0 -531
- data/docs/js/app.js +0 -344
- data/docs/js/full_list.js +0 -242
- data/docs/js/jquery.js +0 -4
- data/docs/method_list.html +0 -198
- data/docs/top-level-namespace.html +0 -110
- data/gemfiles/audit.gemfile +0 -10
- data/gemfiles/coverage.gemfile +0 -10
- data/gemfiles/current.gemfile +0 -8
- data/gemfiles/deps_unlocked.gemfile +0 -13
- data/gemfiles/head.gemfile +0 -9
- data/gemfiles/modular/audit.gemfile +0 -5
- data/gemfiles/modular/coverage.gemfile +0 -6
- data/gemfiles/modular/documentation.gemfile +0 -11
- data/gemfiles/modular/style.gemfile +0 -14
- data/gemfiles/ruby_2_3.gemfile +0 -5
- data/gemfiles/ruby_2_4.gemfile +0 -5
- data/gemfiles/ruby_2_5.gemfile +0 -5
- data/gemfiles/ruby_2_6.gemfile +0 -8
- data/gemfiles/ruby_2_7.gemfile +0 -8
- data/gemfiles/ruby_3_0.gemfile +0 -8
- data/gemfiles/ruby_3_1.gemfile +0 -8
- data/gemfiles/ruby_3_2.gemfile +0 -8
- data/gemfiles/ruby_3_3.gemfile +0 -8
- data/gemfiles/style.gemfile +0 -10
- data/timecop-rspec.gemspec +0 -146
data/.idea/timecop-rspec.iml
DELETED
@@ -1,122 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<module type="RUBY_MODULE" version="4">
|
3
|
-
<component name="ModuleRunConfigurationManager">
|
4
|
-
<shared />
|
5
|
-
</component>
|
6
|
-
<component name="NewModuleRootManager">
|
7
|
-
<content url="file://$MODULE_DIR$">
|
8
|
-
<sourceFolder url="file://$MODULE_DIR$/features" isTestSource="true" />
|
9
|
-
<sourceFolder url="file://$MODULE_DIR$/spec" isTestSource="true" />
|
10
|
-
<sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
|
11
|
-
<excludeFolder url="file://$MODULE_DIR$/.qlty" />
|
12
|
-
<excludeFolder url="file://$MODULE_DIR$/.yardoc" />
|
13
|
-
<excludeFolder url="file://$MODULE_DIR$/bin" />
|
14
|
-
<excludeFolder url="file://$MODULE_DIR$/certs" />
|
15
|
-
<excludeFolder url="file://$MODULE_DIR$/checksums" />
|
16
|
-
<excludeFolder url="file://$MODULE_DIR$/coverage" />
|
17
|
-
<excludeFolder url="file://$MODULE_DIR$/docs" />
|
18
|
-
<excludeFolder url="file://$MODULE_DIR$/gemfiles" />
|
19
|
-
<excludeFolder url="file://$MODULE_DIR$/pkg" />
|
20
|
-
<excludeFolder url="file://$MODULE_DIR$/results" />
|
21
|
-
</content>
|
22
|
-
<orderEntry type="jdk" jdkName="mise: 3.4.5" jdkType="RUBY_SDK" />
|
23
|
-
<orderEntry type="sourceFolder" forTests="false" />
|
24
|
-
<orderEntry type="library" scope="PROVIDED" name="ansi (v1.5.0, mise: 3.4.5) [gem]" level="application" />
|
25
|
-
<orderEntry type="library" scope="PROVIDED" name="appraisal2 (v3.0.0, mise: 3.4.5) [gem]" level="application" />
|
26
|
-
<orderEntry type="library" scope="PROVIDED" name="ast (v2.4.3, mise: 3.4.5) [gem]" level="application" />
|
27
|
-
<orderEntry type="library" scope="PROVIDED" name="backports (v3.25.1, mise: 3.4.5) [gem]" level="application" />
|
28
|
-
<orderEntry type="library" scope="PROVIDED" name="benchmark (v0.4.1, mise: 3.4.5) [gem]" level="application" />
|
29
|
-
<orderEntry type="library" scope="PROVIDED" name="bigdecimal (v3.2.2, mise: 3.4.5) [gem]" level="application" />
|
30
|
-
<orderEntry type="library" scope="PROVIDED" name="bundler (v2.7.1, mise: 3.4.5) [gem]" level="application" />
|
31
|
-
<orderEntry type="library" scope="PROVIDED" name="bundler-audit (v0.9.2, mise: 3.4.5) [gem]" level="application" />
|
32
|
-
<orderEntry type="library" scope="PROVIDED" name="coderay (v1.1.3, mise: 3.4.5) [gem]" level="application" />
|
33
|
-
<orderEntry type="library" scope="PROVIDED" name="concurrent-ruby (v1.3.5, mise: 3.4.5) [gem]" level="application" />
|
34
|
-
<orderEntry type="library" scope="PROVIDED" name="date (v3.4.1, mise: 3.4.5) [gem]" level="application" />
|
35
|
-
<orderEntry type="library" scope="PROVIDED" name="debug (v1.11.0, mise: 3.4.5) [gem]" level="application" />
|
36
|
-
<orderEntry type="library" scope="PROVIDED" name="delegate (v0.4.0, mise: 3.4.5) [gem]" level="application" />
|
37
|
-
<orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.6.2, mise: 3.4.5) [gem]" level="application" />
|
38
|
-
<orderEntry type="library" scope="PROVIDED" name="diffy (v3.4.4, mise: 3.4.5) [gem]" level="application" />
|
39
|
-
<orderEntry type="library" scope="PROVIDED" name="docile (v1.4.1, mise: 3.4.5) [gem]" level="application" />
|
40
|
-
<orderEntry type="library" scope="PROVIDED" name="dry-configurable (v1.3.0, mise: 3.4.5) [gem]" level="application" />
|
41
|
-
<orderEntry type="library" scope="PROVIDED" name="dry-core (v1.1.0, mise: 3.4.5) [gem]" level="application" />
|
42
|
-
<orderEntry type="library" scope="PROVIDED" name="dry-inflector (v1.2.0, mise: 3.4.5) [gem]" level="application" />
|
43
|
-
<orderEntry type="library" scope="PROVIDED" name="dry-initializer (v3.2.0, mise: 3.4.5) [gem]" level="application" />
|
44
|
-
<orderEntry type="library" scope="PROVIDED" name="dry-logic (v1.6.0, mise: 3.4.5) [gem]" level="application" />
|
45
|
-
<orderEntry type="library" scope="PROVIDED" name="dry-schema (v1.14.1, mise: 3.4.5) [gem]" level="application" />
|
46
|
-
<orderEntry type="library" scope="PROVIDED" name="dry-types (v1.8.3, mise: 3.4.5) [gem]" level="application" />
|
47
|
-
<orderEntry type="library" scope="PROVIDED" name="erb (v5.0.2, mise: 3.4.5) [gem]" level="application" />
|
48
|
-
<orderEntry type="library" scope="PROVIDED" name="gem_bench (v2.0.5, mise: 3.4.5) [gem]" level="application" />
|
49
|
-
<orderEntry type="library" scope="PROVIDED" name="io-console (v0.8.1, mise: 3.4.5) [gem]" level="application" />
|
50
|
-
<orderEntry type="library" scope="PROVIDED" name="irb (v1.15.2, mise: 3.4.5) [gem]" level="application" />
|
51
|
-
<orderEntry type="library" scope="PROVIDED" name="json (v2.13.2, mise: 3.4.5) [gem]" level="application" />
|
52
|
-
<orderEntry type="library" scope="PROVIDED" name="kettle-soup-cover (v1.0.10, mise: 3.4.5) [gem]" level="application" />
|
53
|
-
<orderEntry type="library" scope="PROVIDED" name="kramdown (v2.5.1, mise: 3.4.5) [gem]" level="application" />
|
54
|
-
<orderEntry type="library" scope="PROVIDED" name="kramdown-parser-gfm (v1.1.0, mise: 3.4.5) [gem]" level="application" />
|
55
|
-
<orderEntry type="library" scope="PROVIDED" name="language_server-protocol (v3.17.0.5, mise: 3.4.5) [gem]" level="application" />
|
56
|
-
<orderEntry type="library" scope="PROVIDED" name="lint_roller (v1.1.0, mise: 3.4.5) [gem]" level="application" />
|
57
|
-
<orderEntry type="library" scope="PROVIDED" name="logger (v1.7.0, mise: 3.4.5) [gem]" level="application" />
|
58
|
-
<orderEntry type="library" scope="PROVIDED" name="method_source (v1.1.0, mise: 3.4.5) [gem]" level="application" />
|
59
|
-
<orderEntry type="library" scope="PROVIDED" name="nokogiri (v1.18.9, mise: 3.4.5) [gem]" level="application" />
|
60
|
-
<orderEntry type="library" scope="PROVIDED" name="ostruct (v0.6.3, mise: 3.4.5) [gem]" level="application" />
|
61
|
-
<orderEntry type="library" scope="PROVIDED" name="parallel (v1.27.0, mise: 3.4.5) [gem]" level="application" />
|
62
|
-
<orderEntry type="library" scope="PROVIDED" name="parser (v3.3.9.0, mise: 3.4.5) [gem]" level="application" />
|
63
|
-
<orderEntry type="library" scope="PROVIDED" name="pp (v0.6.2, mise: 3.4.5) [gem]" level="application" />
|
64
|
-
<orderEntry type="library" scope="PROVIDED" name="prettyprint (v0.2.0, mise: 3.4.5) [gem]" level="application" />
|
65
|
-
<orderEntry type="library" scope="PROVIDED" name="prism (v1.4.0, mise: 3.4.5) [gem]" level="application" />
|
66
|
-
<orderEntry type="library" scope="PROVIDED" name="pry (v0.15.2, mise: 3.4.5) [gem]" level="application" />
|
67
|
-
<orderEntry type="library" scope="PROVIDED" name="psych (v5.2.6, mise: 3.4.5) [gem]" level="application" />
|
68
|
-
<orderEntry type="library" scope="PROVIDED" name="racc (v1.8.1, mise: 3.4.5) [gem]" level="application" />
|
69
|
-
<orderEntry type="library" scope="PROVIDED" name="rainbow (v3.1.1, mise: 3.4.5) [gem]" level="application" />
|
70
|
-
<orderEntry type="library" scope="PROVIDED" name="rake (v13.3.0, mise: 3.4.5) [gem]" level="application" />
|
71
|
-
<orderEntry type="library" scope="PROVIDED" name="rdoc (v6.14.2, mise: 3.4.5) [gem]" level="application" />
|
72
|
-
<orderEntry type="library" scope="PROVIDED" name="reek (v6.5.0, mise: 3.4.5) [gem]" level="application" />
|
73
|
-
<orderEntry type="library" scope="PROVIDED" name="regexp_parser (v2.11.2, mise: 3.4.5) [gem]" level="application" />
|
74
|
-
<orderEntry type="library" scope="PROVIDED" name="reline (v0.6.2, mise: 3.4.5) [gem]" level="application" />
|
75
|
-
<orderEntry type="library" scope="PROVIDED" name="rexml (v3.4.1, mise: 3.4.5) [gem]" level="application" />
|
76
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec (v3.13.1, mise: 3.4.5) [gem]" level="application" />
|
77
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-block_is_expected (v1.0.6, mise: 3.4.5) [gem]" level="application" />
|
78
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-core (v3.13.5, mise: 3.4.5) [gem]" level="application" />
|
79
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-expectations (v3.13.5, mise: 3.4.5) [gem]" level="application" />
|
80
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-mocks (v3.13.5, mise: 3.4.5) [gem]" level="application" />
|
81
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-stubbed_env (v1.0.4, mise: 3.4.5) [gem]" level="application" />
|
82
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-support (v3.13.4, mise: 3.4.5) [gem]" level="application" />
|
83
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec_junit_formatter (v0.6.0, mise: 3.4.5) [gem]" level="application" />
|
84
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop (v1.75.8, mise: 3.4.5) [gem]" level="application" />
|
85
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-ast (v1.46.0, mise: 3.4.5) [gem]" level="application" />
|
86
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-gradual (v0.3.6, mise: 3.4.5) [gem]" level="application" />
|
87
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-lts (v0.1.1, mise: 3.4.5) [gem]" level="application" />
|
88
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-md (v1.2.4, mise: 3.4.5) [gem]" level="application" />
|
89
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-packaging (v0.6.0, mise: 3.4.5) [gem]" level="application" />
|
90
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-performance (v1.25.0, mise: 3.4.5) [gem]" level="application" />
|
91
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-rake (v0.7.1, mise: 3.4.5) [gem]" level="application" />
|
92
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-rspec (v3.6.0, mise: 3.4.5) [gem]" level="application" />
|
93
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-ruby1_8 (v1.0.7, mise: 3.4.5) [gem]" level="application" />
|
94
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-shopify (v2.17.1, mise: 3.4.5) [gem]" level="application" />
|
95
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-thread_safety (v0.7.3, mise: 3.4.5) [gem]" level="application" />
|
96
|
-
<orderEntry type="library" scope="PROVIDED" name="ruby-progressbar (v1.13.0, mise: 3.4.5) [gem]" level="application" />
|
97
|
-
<orderEntry type="library" scope="PROVIDED" name="silent_stream (v1.0.11, mise: 3.4.5) [gem]" level="application" />
|
98
|
-
<orderEntry type="library" scope="PROVIDED" name="simplecov (v0.22.0, mise: 3.4.5) [gem]" level="application" />
|
99
|
-
<orderEntry type="library" scope="PROVIDED" name="simplecov-cobertura (v3.0.0, mise: 3.4.5) [gem]" level="application" />
|
100
|
-
<orderEntry type="library" scope="PROVIDED" name="simplecov-console (v0.9.4, mise: 3.4.5) [gem]" level="application" />
|
101
|
-
<orderEntry type="library" scope="PROVIDED" name="simplecov-html (v0.13.2, mise: 3.4.5) [gem]" level="application" />
|
102
|
-
<orderEntry type="library" scope="PROVIDED" name="simplecov-lcov (v0.8.0, mise: 3.4.5) [gem]" level="application" />
|
103
|
-
<orderEntry type="library" scope="PROVIDED" name="simplecov-rcov (v0.3.7, mise: 3.4.5) [gem]" level="application" />
|
104
|
-
<orderEntry type="library" scope="PROVIDED" name="simplecov_json_formatter (v0.1.4, mise: 3.4.5) [gem]" level="application" />
|
105
|
-
<orderEntry type="library" scope="PROVIDED" name="standard (v1.50.0, mise: 3.4.5) [gem]" level="application" />
|
106
|
-
<orderEntry type="library" scope="PROVIDED" name="standard-custom (v1.0.2, mise: 3.4.5) [gem]" level="application" />
|
107
|
-
<orderEntry type="library" scope="PROVIDED" name="standard-performance (v1.8.0, mise: 3.4.5) [gem]" level="application" />
|
108
|
-
<orderEntry type="library" scope="PROVIDED" name="standard-rubocop-lts (v1.0.10, mise: 3.4.5) [gem]" level="application" />
|
109
|
-
<orderEntry type="library" scope="PROVIDED" name="stone_checksums (v1.0.0, mise: 3.4.5) [gem]" level="application" />
|
110
|
-
<orderEntry type="library" scope="PROVIDED" name="stringio (v3.1.7, mise: 3.4.5) [gem]" level="application" />
|
111
|
-
<orderEntry type="library" scope="PROVIDED" name="terminal-table (v4.0.0, mise: 3.4.5) [gem]" level="application" />
|
112
|
-
<orderEntry type="library" scope="PROVIDED" name="thor (v1.4.0, mise: 3.4.5) [gem]" level="application" />
|
113
|
-
<orderEntry type="library" scope="PROVIDED" name="timecop (v0.9.10, mise: 3.4.5) [gem]" level="application" />
|
114
|
-
<orderEntry type="library" scope="PROVIDED" name="unicode-display_width (v3.1.5, mise: 3.4.5) [gem]" level="application" />
|
115
|
-
<orderEntry type="library" scope="PROVIDED" name="unicode-emoji (v4.0.4, mise: 3.4.5) [gem]" level="application" />
|
116
|
-
<orderEntry type="library" scope="PROVIDED" name="version_gem (v1.1.8, mise: 3.4.5) [gem]" level="application" />
|
117
|
-
<orderEntry type="library" scope="PROVIDED" name="yard (v0.9.37, mise: 3.4.5) [gem]" level="application" />
|
118
|
-
<orderEntry type="library" scope="PROVIDED" name="yard-junk (v0.0.10@54cceb, mise: 3.4.5) [gem]" level="application" />
|
119
|
-
<orderEntry type="library" scope="PROVIDED" name="yard-relative_markdown_links (v0.5.0, mise: 3.4.5) [gem]" level="application" />
|
120
|
-
<orderEntry type="library" scope="PROVIDED" name="zeitwerk (v2.7.3, mise: 3.4.5) [gem]" level="application" />
|
121
|
-
</component>
|
122
|
-
</module>
|
data/.idea/vcs.xml
DELETED
data/.junie/TASK_NOTE.md
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
Temporary note: Added progress bar option to GemMine and ruby-progressbar dev dependency. Updated docs.
|
data/.junie/guidelines.md
DELETED
@@ -1,139 +0,0 @@
|
|
1
|
-
Project: timecop-rspec — Development Guidelines (for advanced contributors)
|
2
|
-
|
3
|
-
This document captures project-specific knowledge to streamline setup, testing, and ongoing development.
|
4
|
-
|
5
|
-
1. Build and configuration
|
6
|
-
- ENV is controlled by `direnv`.
|
7
|
-
- Two files are loaded:
|
8
|
-
- .envrc — environment variables for local development, committed to source control
|
9
|
-
- .env.local — environment variables that are not committed to source control. These setting override .envrc.
|
10
|
-
- Run `direnv allow` after making changes to .envrc or .env.local.
|
11
|
-
- See .envrc for details.
|
12
|
-
- See .env.local.example for an example of what to put in .env.local.
|
13
|
-
- See CONTRIBUTING.md for details on how to set up your local environment.
|
14
|
-
- Ruby and Bundler
|
15
|
-
- Runtime supports very old Rubies (>= 1.9.2) but development tooling targets >= 2.3 because of CI/setup-ruby and dev dependencies.
|
16
|
-
- Use a recent Ruby (>= 3.1 recommended) for fastest setup and to exercise modern coverage behavior.
|
17
|
-
- Install dependencies via Bundler in project root:
|
18
|
-
- bundle install
|
19
|
-
- Rake tasks (preferred entry points)
|
20
|
-
- The Rakefile wires common workflows. Useful targets:
|
21
|
-
- rake spec — run RSpec suite (also aliased via rake test)
|
22
|
-
- rake coverage — run specs with coverage locally and open a report (requires kettle-soup-cover)
|
23
|
-
- rake rubocop_gradual:autocorrect — RuboCop-LTS Gradual, with autocorrect as default task
|
24
|
-
- rake reek and rake reek:update — code smell checks and persisted snapshots in REEK
|
25
|
-
- rake yard — generate YARD docs for lib and selected extra files
|
26
|
-
- rake bundle:audit and rake bundle:audit:update — dependency vulnerability checks
|
27
|
-
- rake build / rake release — gem build/release helper tasks (Bundler + stone_checksums)
|
28
|
-
- The default rake target runs a curated set of tasks; this varies for CI vs local (see CI env var logic in Rakefile).
|
29
|
-
- Always run the default rake task prior commits, and after making changes to lib/ code, or *.md files, to allow the linter to autocorrect, and to generate updated documentation..
|
30
|
-
- Coverage orchestration
|
31
|
-
- Coverage is controlled by kettle-soup-cover and .simplecov. Thresholds (line and branch) are enforced and can fail the process.
|
32
|
-
- Thresholds are primarily controlled by environment variables (see .simplecov and comments therein) typically loaded via direnv (.envrc) and CI workflow (.github/workflows/coverage.yml). When running only a test subset, thresholds may fail; see Testing below.
|
33
|
-
- Gem signing (for releases)
|
34
|
-
- Signing is enabled unless SKIP_GEM_SIGNING is set. If enabled and certificates are present (certs/<USER>.pem), gem build will attempt to sign using ~/.ssh/gem-private_key.pem.
|
35
|
-
- See CONTRIBUTING.md for releasing details; use SKIP_GEM_SIGNING when building in environments without the private key.
|
36
|
-
|
37
|
-
2. Testing
|
38
|
-
- Framework and helpers
|
39
|
-
- RSpec 3.13 with custom spec/spec_helper.rb configuration:
|
40
|
-
- silent_stream: STDOUT is silenced by default for examples to keep logs clean.
|
41
|
-
- To explicitly test console output, tag the example or group with :check_output.
|
42
|
-
- Global state hygiene: Around each example, FlossFunding.namespaces and FlossFunding.silenced are snapshotted and restored to prevent cross-test pollution.
|
43
|
-
- DEBUG toggle: Set DEBUG=true to require 'debug' and avoid silencing output during your run.
|
44
|
-
- ENV seeding: The suite sets ENV["FLOSS_FUNDING_FLOSS_FUNDING"] = "Free-as-in-beer" so that the library’s own namespace is considered activated (avoids noisy warnings).
|
45
|
-
- Coverage: kettle-soup-cover integrates SimpleCov; .simplecov is invoked from spec_helper when enabled by Kettle::Soup::Cover::DO_COV, which is controlled by K_SOUP_COV_DO being set to true / false.
|
46
|
-
- RSpec.describe usage:
|
47
|
-
- Use `describe "#<method_name>"` to contain a block of specs that test instance method behavior.
|
48
|
-
- Use `describe "::<method_name>"` to contain a block of specs that test class method behavior.
|
49
|
-
- Do not use `describe ".<method_name>"` because the dot is ambiguous w.r.t instance vs. class methods.
|
50
|
-
- When adding new code or modifying existing code always add tests to cover the updated behavior, including branches, and different types of expected and unexpected inputs.
|
51
|
-
- Additional test utilities:
|
52
|
-
- rspec-stubbed_env: Use stub_env to control ENV safely within examples.
|
53
|
-
- timecop: Time manipulation available via spec/config/timecop.
|
54
|
-
- support/bench_gems_generator: Utilities for benchmarking fixtures.
|
55
|
-
- Running tests (verified)
|
56
|
-
- Full suite (recommended to satisfy coverage thresholds):
|
57
|
-
- bin/rspec
|
58
|
-
- or: bundle exec rspec
|
59
|
-
- or: bundle exec rake spec
|
60
|
-
- Progress format (less verbose):
|
61
|
-
- bundle exec rspec --format progress
|
62
|
-
- Focused runs
|
63
|
-
- You can run a single file or example, but note: coverage thresholds need to be disabled with K_SOUP_COV_MIN_HARD=false
|
64
|
-
- Example: K_SOUP_COV_MIN_HARD=false bin/rspec spec/timecop-rspec/class_spec.rb:42
|
65
|
-
- Output visibility
|
66
|
-
- To see STDOUT from the code under test, use the :check_output tag on the example or group.
|
67
|
-
Example:
|
68
|
-
RSpec.describe "output", :check_output do
|
69
|
-
it "prints" do
|
70
|
-
puts "This output should be visible"
|
71
|
-
expect(true).to be true
|
72
|
-
end
|
73
|
-
end
|
74
|
-
- Alternatively, run with DEBUG=true to disable silencing for the entire run.
|
75
|
-
- During a spec run, the presence of output about missing activation keys is often expected, since it is literally what this library is for. It only indicates a failure if the spec expected all activation keys to be present, and not all specs do.
|
76
|
-
- Adding new tests (guidelines)
|
77
|
-
- Organize specs by class/module. Do not create per-task umbrella spec files; add examples to the existing spec for the class/module under test, or create a new spec file for that class/module if one does not exist. Only create a standalone scenario spec when it intentionally spans multiple classes for an integration/benchmark scenario (e.g., bench_integration_spec), and name it accordingly.
|
78
|
-
- Add tests for all public methods and add contexts for variations of their arguments, and arity.
|
79
|
-
- Place new specs under spec/ mirroring lib/ structure where possible. Do not require "spec_helper" at the top of spec files, as it is automatically loaded by .rspec.
|
80
|
-
- If your code relies on environment variables that drive activation (see "Activation env vars" below), prefer using rspec-stubbed_env:
|
81
|
-
- it does not support stubbing with blocks, but it does automatically clean up after itself.
|
82
|
-
- outside the example:
|
83
|
-
include_context 'with stubbed env'
|
84
|
-
- in a before hook, or in an example:
|
85
|
-
stub_env("FLOSS_FUNDING_MY_NS" => "Free-as-in-beer")
|
86
|
-
# example code continues
|
87
|
-
- If your spec needs to assert on console output, tag it with :check_output. By default, STDOUT is silenced.
|
88
|
-
- Use Timecop for deterministic time-sensitive behavior as needed (require config/timecop is already done by spec_helper).
|
89
|
-
- Demonstrated example (executed and verified during this session)
|
90
|
-
- Example spec content used:
|
91
|
-
- File: spec/timecop-rspec/demo_spec.rb
|
92
|
-
RSpec.describe "Demo test for guidelines" do
|
93
|
-
it "has a non-empty version string" do
|
94
|
-
expect(FlossFunding::Version::VERSION).to be_a(String)
|
95
|
-
expect(FlossFunding::Version::VERSION).not_to be_empty
|
96
|
-
end
|
97
|
-
end
|
98
|
-
- Commands run:
|
99
|
-
- bundle exec rspec spec/timecop-rspec/demo_spec.rb — this ran but failed coverage thresholds (expected when running subsets with coverage on).
|
100
|
-
- bundle exec rspec — running the full suite including the demo spec passed; overall coverage: ~93.67% lines, ~74.07% branches.
|
101
|
-
- Cleanup: The demo spec file was removed after verification per instructions.
|
102
|
-
|
103
|
-
3. Additional development information
|
104
|
-
- Activation env vars and namespacing (important for tests and local runs)
|
105
|
-
- The library behavior is driven by namespace-based activation keys: ENV["FLOSS_FUNDING_<NAMESPACE>"].
|
106
|
-
- The FlossFunding::Namespace class derives env var names via FlossFunding::UnderBar.env_variable_name(name). Recognized activation forms include:
|
107
|
-
- Free-as-in-beer, Business-is-not-good-yet, or NOT-FINANCIALLY-SUPPORTING-<namespace> — treated as unpaid/opted-out and considered "activated" for silent success (no console warnings).
|
108
|
-
- A paid activation key is a 64-char hex string; it is decrypted with AES-256-CBC using a key derived from Digest::MD5.hexdigest(namespace).
|
109
|
-
- In tests, avoid noisy output and unrelated failures by either using the provided default (ENV seeded for this gem) or stubbing the relevant ENV vars for the namespaces you trigger.
|
110
|
-
- Code style and static analysis
|
111
|
-
- RuboCop-LTS (Gradual) is integrated. Use:
|
112
|
-
- bundle exec rake rubocop_gradual:autocorrect
|
113
|
-
- bundle exec rake rubocop_gradual:force_update # only run if there are still linting violations the default rake task, which includes autocorrect locally, or a standalone autocorrect task, has run, and failed, and the violations won't be fixed
|
114
|
-
- Reek is configured to scan {lib,spec,tests}/**/*.rb. Use:
|
115
|
-
- bundle exec rake reek
|
116
|
-
- bundle exec rake reek:update # writes current output to REEK, fails on smells
|
117
|
-
- Keep REEK file updated with intentional smells snapshot when appropriate (e.g., after refactors).
|
118
|
-
- Locally, the default rake task includes reek:update.
|
119
|
-
- Documentation
|
120
|
-
- Generate YARD docs with: bundle exec rake yard. It includes lib/**/*.rb and extra docs like README.md, CHANGELOG.md, RUBOCOP.md, REEK, etc.
|
121
|
-
- Appraisal and multi-gemfile testing
|
122
|
-
- appraisal2 is present to manage multiple dependency sets; see Appraisals and gemfiles/modular/*.gemfile. If you need to verify against alternate dependency versions, use Appraisal to install and run rspec under those Gemfiles.
|
123
|
-
- You can run a single github workflow by running `act -W /github/workflows/<workflow name>.yml`
|
124
|
-
- CI/local differences and defaults
|
125
|
-
- The Rakefile adjusts default tasks based on CI env var. Locally, rake default may include coverage, reek:update, yard, etc. On CI, it tends to just run spec.
|
126
|
-
|
127
|
-
Quick start
|
128
|
-
1) bundle install
|
129
|
-
2) K_SOUP_COV_FORMATTERS="xml,rcov,lcov,json" bin/rspec (generates coverage reports in coverage/ in the specified formats, only choose the formats you need)
|
130
|
-
3) Optional local HTML coverage report: K_SOUP_COV_FORMATTERS="html" bin/rspec (generates HTML coverage report in coverage/ - but this is too verbose for AI, so Junie should use one of the more terse formats, like rcov, lcov, or json)
|
131
|
-
4) Static analysis: bundle exec rake rubocop_gradual:check && bundle exec rake reek
|
132
|
-
|
133
|
-
Notes
|
134
|
-
- ALWAYS Run bundle exec rake rubocop_gradual:autocorrect as the final step before completing a task, to lint and autocorrect any remaining issues. Then if there are new lint failures, attempt to correct them manually.
|
135
|
-
- NEVER run vanilla rubocop, as it won't handle the linting config properly. Always run rubocop_gradual:autocorrect or rubocop_gradual.
|
136
|
-
- NEVER consider backwards compatibility when adding new features or refactoring existing code, as this library is in the design phase, and is still an alpha release.
|
137
|
-
- Running only a subset of specs is supported but in order to bypass the hard failure due to coverage thresholds, you need to run with K_SOUP_COV_MIN_HARD=false.
|
138
|
-
- When adding code that writes to STDOUT, remember most specs silence output unless tagged with :check_output or DEBUG=true.
|
139
|
-
- For all the kettle-soup-cover options, see .envrc and find the K_SOUP_COV_* env vars.
|
data/.qlty/qlty.toml
DELETED
@@ -1,79 +0,0 @@
|
|
1
|
-
# For a guide to configuration, visit https://qlty.sh/d/config
|
2
|
-
# Or for a full reference, visit https://qlty.sh/d/qlty-toml
|
3
|
-
config_version = "0"
|
4
|
-
|
5
|
-
exclude_patterns = [
|
6
|
-
"*_min.*",
|
7
|
-
"*-min.*",
|
8
|
-
"*.min.*",
|
9
|
-
"**/.yarn/**",
|
10
|
-
"**/*.d.ts",
|
11
|
-
"**/assets/**",
|
12
|
-
"**/bin/**",
|
13
|
-
"**/bower_components/**",
|
14
|
-
"**/build/**",
|
15
|
-
"**/cache/**",
|
16
|
-
"**/config/**",
|
17
|
-
"**/.devcontainer",
|
18
|
-
"**/db/**",
|
19
|
-
"**/deps/**",
|
20
|
-
"**/dist/**",
|
21
|
-
"**/doc/**",
|
22
|
-
"**/docs/**",
|
23
|
-
"**/extern/**",
|
24
|
-
"**/external/**",
|
25
|
-
"**/generated/**",
|
26
|
-
"**/Godeps/**",
|
27
|
-
"**/gradlew/**",
|
28
|
-
"**/mvnw/**",
|
29
|
-
"**/node_modules/**",
|
30
|
-
"**/protos/**",
|
31
|
-
"**/seed/**",
|
32
|
-
"**/target/**",
|
33
|
-
"**/templates/**",
|
34
|
-
"**/testdata/**",
|
35
|
-
"**/vendor/**",
|
36
|
-
".github/workflows/codeql-analysis.yml"
|
37
|
-
]
|
38
|
-
|
39
|
-
test_patterns = [
|
40
|
-
"**/test/**",
|
41
|
-
"**/spec/**",
|
42
|
-
"**/*.test.*",
|
43
|
-
"**/*.spec.*",
|
44
|
-
"**/*_test.*",
|
45
|
-
"**/*_spec.*",
|
46
|
-
"**/test_*.*",
|
47
|
-
"**/spec_*.*",
|
48
|
-
]
|
49
|
-
|
50
|
-
[smells]
|
51
|
-
mode = "comment"
|
52
|
-
|
53
|
-
[smells.boolean_logic]
|
54
|
-
threshold = 4
|
55
|
-
enabled = true
|
56
|
-
|
57
|
-
[smells.file_complexity]
|
58
|
-
threshold = 55
|
59
|
-
enabled = false
|
60
|
-
|
61
|
-
[smells.return_statements]
|
62
|
-
threshold = 4
|
63
|
-
enabled = true
|
64
|
-
|
65
|
-
[smells.nested_control_flow]
|
66
|
-
threshold = 4
|
67
|
-
enabled = true
|
68
|
-
|
69
|
-
[smells.function_parameters]
|
70
|
-
threshold = 4
|
71
|
-
enabled = true
|
72
|
-
|
73
|
-
[smells.function_complexity]
|
74
|
-
threshold = 5
|
75
|
-
enabled = true
|
76
|
-
|
77
|
-
[smells.duplication]
|
78
|
-
enabled = true
|
79
|
-
threshold = 20
|
data/.rspec
DELETED
data/.rubocop.yml
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
inherit_gem:
|
2
|
-
rubocop-lts: config/rubygem_rspec.yml
|
3
|
-
|
4
|
-
AllCops:
|
5
|
-
Exclude:
|
6
|
-
- 'spec/fixtures/gem_mine/**/*'
|
7
|
-
- 'spec/fixtures/gemspecs/**/*'
|
8
|
-
- 'spec/fixtures/non_gems/**/*'
|
9
|
-
- 'spec/fixtures/scenario_gems/**/*'
|
10
|
-
|
11
|
-
RSpec/ExampleLength:
|
12
|
-
Enabled: false
|
13
|
-
|
14
|
-
Layout/IndentationConsistency:
|
15
|
-
Exclude: ['*.md']
|
data/.rubocop_gradual.lock
DELETED
@@ -1,76 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"Rakefile:1123364514": [
|
3
|
-
[67, 5, 15, "Rake/Desc: Describe the task with `desc` method.", 842824456]
|
4
|
-
],
|
5
|
-
"lib/timecop/rspec.rb:1066485176": [
|
6
|
-
[42, 9, 12, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 990613604]
|
7
|
-
],
|
8
|
-
"lib/timecop/rspec/sequential_time_machine.rb:3576394007": [
|
9
|
-
[15, 7, 53, "Style/ClassMethodsDefinitions: Use `class << self` to define a class method.", 496991953],
|
10
|
-
[16, 9, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 356709996]
|
11
|
-
],
|
12
|
-
"lib/timecop/rspec/time_machine.rb:1233248191": [
|
13
|
-
[11, 7, 53, "Style/ClassMethodsDefinitions: Use `class << self` to define a class method.", 496991953],
|
14
|
-
[12, 9, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 356709996]
|
15
|
-
],
|
16
|
-
"spec/timecop/rspec/a_time_machine.rb:3434657420": [
|
17
|
-
[25, 13, 29, "RSpec/ContextWording: Context description should match /^when\\b/, /^with\\b/, or /^without\\b/.", 2090924979],
|
18
|
-
[28, 7, 64, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 1461883873],
|
19
|
-
[31, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
20
|
-
[38, 7, 56, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 643029529],
|
21
|
-
[42, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
22
|
-
[49, 7, 53, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 3086872678],
|
23
|
-
[53, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
24
|
-
[60, 7, 124, "RSpec/MultipleExpectations: Example has too many expectations [6/1].", 676965629],
|
25
|
-
[64, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
26
|
-
[69, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
27
|
-
[74, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
28
|
-
[80, 7, 36, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 1669892008],
|
29
|
-
[84, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
30
|
-
[90, 7, 42, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 2672670916],
|
31
|
-
[91, 23, 33, "Style/DateTime: Prefer `Time` over `DateTime`.", 2306291980],
|
32
|
-
[94, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
33
|
-
[103, 7, 62, "RSpec/MultipleExpectations: Example has too many expectations [5/1].", 1809499334],
|
34
|
-
[104, 23, 25, "Style/DateTime: Prefer `Time` over `DateTime`.", 2011980225],
|
35
|
-
[111, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
36
|
-
[120, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
37
|
-
[126, 7, 131, "RSpec/MultipleExpectations: Example has too many expectations [6/1].", 2099780707],
|
38
|
-
[130, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
39
|
-
[135, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
40
|
-
[140, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
41
|
-
[146, 15, 35, "RSpec/ContextWording: Context description should match /^when\\b/, /^with\\b/, or /^without\\b/.", 710711823],
|
42
|
-
[147, 9, 81, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 262796784],
|
43
|
-
[149, 30, 8, "RSpec/InstanceVariable: Avoid instance variables - use let, a method call, or a local variable (if possible).", 2321415930],
|
44
|
-
[152, 37, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
45
|
-
[159, 9, 78, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 2987422127],
|
46
|
-
[161, 30, 8, "RSpec/InstanceVariable: Avoid instance variables - use let, a method call, or a local variable (if possible).", 2321981723],
|
47
|
-
[164, 37, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
48
|
-
[173, 13, 28, "RSpec/ContextWording: Context description should match /^when\\b/, /^with\\b/, or /^without\\b/.", 830037094],
|
49
|
-
[176, 7, 48, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 1915717479],
|
50
|
-
[177, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
51
|
-
[187, 7, 70, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 3183424212],
|
52
|
-
[191, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
53
|
-
[198, 7, 70, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 1685240264],
|
54
|
-
[202, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
55
|
-
[209, 7, 67, "RSpec/MultipleExpectations: Example has too many expectations [2/1].", 4130782052],
|
56
|
-
[213, 35, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950]
|
57
|
-
],
|
58
|
-
"spec/timecop/rspec/sequential_time_machine_spec.rb:2709164453": [
|
59
|
-
[19, 3, 124, "RSpec/MultipleExpectations: Example has too many expectations [6/1].", 676965629],
|
60
|
-
[24, 31, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
61
|
-
[29, 31, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
62
|
-
[34, 31, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
63
|
-
[44, 11, 28, "RSpec/ContextWording: Context description should match /^when\\b/, /^with\\b/, or /^without\\b/.", 830037094],
|
64
|
-
[52, 5, 72, "RSpec/MultipleExpectations: Example has too many expectations [6/1].", 2221852238],
|
65
|
-
[54, 33, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
66
|
-
[59, 33, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950],
|
67
|
-
[64, 33, 7, "RSpec/MessageSpies: Prefer `have_received` for setting message expectations. Setup `example_procsy` as a spy using `allow` or `instance_spy`.", 1384559950]
|
68
|
-
],
|
69
|
-
"timecop-rspec.gemspec:2553891750": [
|
70
|
-
[108, 3, 3, "Gemspec/DuplicatedAssignment: `files=` method calls already given on line 62 of the gemspec.", 193433027],
|
71
|
-
[108, 16, 19, "Packaging/GemspecGit: Avoid using git to produce lists of files. Downstreams often need to build your package in an environment that does not have git (on purpose). Use some pure Ruby alternative, like `Dir` or `Dir.glob`.", 3879951891],
|
72
|
-
[111, 3, 19, "Gemspec/DuplicatedAssignment: `bindir=` method calls already given on line 104 of the gemspec.", 554494033],
|
73
|
-
[112, 3, 70, "Gemspec/DuplicatedAssignment: `executables=` method calls already given on line 106 of the gemspec.", 18210340],
|
74
|
-
[113, 3, 28, "Gemspec/DuplicatedAssignment: `require_paths=` method calls already given on line 103 of the gemspec.", 1947597918]
|
75
|
-
]
|
76
|
-
}
|
data/.simplecov
DELETED
@@ -1,11 +0,0 @@
|
|
1
|
-
require "kettle/soup/cover/config"
|
2
|
-
|
3
|
-
# Minimum coverage thresholds are set by kettle-soup-cover.
|
4
|
-
# It is controlled by ENV variables, which are set in .envrc and loaded via `direnv allow`
|
5
|
-
# If the values for minimum coverage need to change, they should be changed both there,
|
6
|
-
# and in 2 places in .github/workflows/coverage.yml.
|
7
|
-
SimpleCov.start do
|
8
|
-
# GemMine is only used in the test framework.
|
9
|
-
# It isn't the focus of this library anyway.
|
10
|
-
add_filter "lib/gem_mine"
|
11
|
-
end
|
data/.tool-versions
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
ruby 3.4.5
|
data/.yard_gfm_support.rb
DELETED
@@ -1,22 +0,0 @@
|
|
1
|
-
# Gratefully and liberally taken from the MIT-licensed https://github.com/bensheldon/good_job/pull/113/files
|
2
|
-
require "kramdown"
|
3
|
-
require "kramdown-parser-gfm"
|
4
|
-
|
5
|
-
# Custom markup provider class that always renders Kramdown using GFM (Github Flavored Markdown).
|
6
|
-
# GFM is needed to render markdown tables and fenced code blocks in the README.
|
7
|
-
class KramdownGfmDocument < Kramdown::Document
|
8
|
-
def initialize(source, options = {})
|
9
|
-
options[:input] = "GFM" unless options.key?(:input)
|
10
|
-
super(source, options)
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
# Insert the new provider as the highest priority option for Markdown.
|
15
|
-
# See:
|
16
|
-
# - https://github.com/lsegal/yard/issues/1157
|
17
|
-
# - https://github.com/lsegal/yard/issues/1017
|
18
|
-
# - https://github.com/lsegal/yard/blob/main/lib/yard/templates/helpers/markup_helper.rb
|
19
|
-
YARD::Templates::Helpers::MarkupHelper::MARKUP_PROVIDERS[:markdown].insert(
|
20
|
-
0,
|
21
|
-
{:const => "KramdownGfmDocument"},
|
22
|
-
)
|
data/.yardopts
DELETED
data/Appraisal.root.gemfile
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
|
4
|
-
|
5
|
-
source "https://rubygems.org"
|
6
|
-
|
7
|
-
# Appraisal Root Gemfile is for running appraisal to generate the Appraisal Gemfiles
|
8
|
-
# in gemfiles/*gemfile.
|
9
|
-
# On CI, we use it for the Appraisal-based builds.
|
10
|
-
# We do not load the standard Gemfile, as it is tailored for local development.
|
11
|
-
|
12
|
-
gemspec
|