test-prof 1.4.0 → 1.4.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -0
- data/lib/test_prof/before_all.rb +30 -7
- data/lib/test_prof/cops/rspec/aggregate_examples/its.rb +1 -1
- data/lib/test_prof/cops/rspec/aggregate_examples.rb +2 -2
- data/lib/test_prof/core.rb +4 -0
- data/lib/test_prof/ext/active_record_refind.rb +1 -1
- data/lib/test_prof/ext/string_truncate.rb +1 -1
- data/lib/test_prof/factory_bot.rb +1 -1
- data/lib/test_prof/rspec_stamp/parser.rb +1 -1
- data/lib/test_prof/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db12b48471cc8814d90d2388415798a742a5b5d69f61862bc88c12ac118e80c2
|
4
|
+
data.tar.gz: 9c930443a46e765d13b4528725d795aef8e4a2ab9b9c2c7a3939e2cb458ebd03
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6fe1ff6102261d0b8c3c9e88e982255996b01ec6a34a9bc0d812a5021e8dd193aba57feca87d467c99f93973e98ed4cc4e94c94e8e1ab2e7b61dce806eeebedc
|
7
|
+
data.tar.gz: db01e089936817767666c9d8d8fc11c0e2765bbb254be6e1baa5fac3ab26de7ad6d2b937dca7c6f0bef72fb60045caef2e909bf196978ebe94aef0c7f54da1c4
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,14 @@
|
|
2
2
|
|
3
3
|
## master (unreleased)
|
4
4
|
|
5
|
+
## 1.4.2 (2024-09-03) 🗓️
|
6
|
+
|
7
|
+
- Ignore default scopes in `ActiveRecord::Base#refind`. ([@palkan][])
|
8
|
+
|
9
|
+
## 1.4.1 (2024-08-23)
|
10
|
+
|
11
|
+
- Skips loading the ActiveRecord adapter for runs where RSpec --dry-run mode is enabled. ([@devinburnette][])
|
12
|
+
|
5
13
|
## 1.4.0 (2024-08-12)
|
6
14
|
|
7
15
|
- AnyFixture: Disable fixtures cache within _clean fixture_ context. Automatically _refind_ records when using `#fixture`. ([@palkan][])
|
@@ -434,3 +442,4 @@ See [changelog](https://github.com/test-prof/test-prof/blob/v0.8.0/CHANGELOG.md)
|
|
434
442
|
[@lioneldebauge]: https://github.com/lioneldebauge
|
435
443
|
[@lHydra]: https://github.com/lHydra
|
436
444
|
[@john-h-k]: https://github.com/john-h-k
|
445
|
+
[@devinburnette]: https://github.com/devinburnette
|
data/lib/test_prof/before_all.rb
CHANGED
@@ -14,8 +14,26 @@ module TestProf
|
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
|
+
# Used in dry-run mode
|
18
|
+
class NoopAdapter
|
19
|
+
class << self
|
20
|
+
def begin_transaction(...)
|
21
|
+
end
|
22
|
+
|
23
|
+
def rollback_transaction(...)
|
24
|
+
end
|
25
|
+
|
26
|
+
def setup_fixtures(...)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
17
31
|
class << self
|
18
|
-
|
32
|
+
attr_writer :adapter
|
33
|
+
|
34
|
+
def adapter
|
35
|
+
@adapter ||= default_adapter
|
36
|
+
end
|
19
37
|
|
20
38
|
def begin_transaction(scope = nil, metadata = [])
|
21
39
|
raise AdapterMissing if adapter.nil?
|
@@ -47,6 +65,17 @@ module TestProf
|
|
47
65
|
def configure
|
48
66
|
yield config
|
49
67
|
end
|
68
|
+
|
69
|
+
private
|
70
|
+
|
71
|
+
def default_adapter
|
72
|
+
return NoopAdapter if TestProf.dry_run?
|
73
|
+
|
74
|
+
if defined?(::ActiveRecord::Base)
|
75
|
+
require "test_prof/before_all/adapters/active_record"
|
76
|
+
Adapters::ActiveRecord
|
77
|
+
end
|
78
|
+
end
|
50
79
|
end
|
51
80
|
|
52
81
|
class HookEntry # :nodoc:
|
@@ -138,12 +167,6 @@ module TestProf
|
|
138
167
|
end
|
139
168
|
end
|
140
169
|
|
141
|
-
if defined?(::ActiveRecord::Base)
|
142
|
-
require "test_prof/before_all/adapters/active_record"
|
143
|
-
|
144
|
-
TestProf::BeforeAll.adapter = TestProf::BeforeAll::Adapters::ActiveRecord
|
145
|
-
end
|
146
|
-
|
147
170
|
if defined?(::Isolator)
|
148
171
|
require "test_prof/before_all/isolator"
|
149
172
|
end
|
@@ -123,7 +123,7 @@ module RuboCop
|
|
123
123
|
def on_block(node)
|
124
124
|
example_group_with_several_examples(node) do |all_examples|
|
125
125
|
example_clusters(all_examples).each do |_, examples|
|
126
|
-
examples[1
|
126
|
+
examples[1..].each do |example|
|
127
127
|
add_offense(example,
|
128
128
|
location: :expression,
|
129
129
|
message: message_for(example, examples[0]))
|
@@ -141,7 +141,7 @@ module RuboCop
|
|
141
141
|
range = range_for_replace(examples)
|
142
142
|
replacement = aggregated_example(examples, metadata)
|
143
143
|
corrector.replace(range, replacement)
|
144
|
-
examples[1
|
144
|
+
examples[1..].map { |example| drop_example(corrector, example) }
|
145
145
|
end
|
146
146
|
end
|
147
147
|
end
|
data/lib/test_prof/core.rb
CHANGED
@@ -75,6 +75,10 @@ module TestProf
|
|
75
75
|
defined?(::Spring::Application) && (disabled.nil? || disabled.empty? || disabled == "0")
|
76
76
|
end
|
77
77
|
|
78
|
+
def dry_run?
|
79
|
+
rspec? && ::RSpec.configuration.dry_run?
|
80
|
+
end
|
81
|
+
|
78
82
|
# Returns the current process time
|
79
83
|
def now
|
80
84
|
Process.clock_gettime_for_test_prof(Process::CLOCK_MONOTONIC)
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module TestProf # :nodoc: all
|
4
4
|
FACTORY_GIRL_NAMES = {"factory_bot" => "::FactoryBot", "factory_girl" => "::FactoryGirl"}.freeze
|
5
5
|
|
6
|
-
TestProf.require("active_support
|
6
|
+
TestProf.require("active_support")
|
7
7
|
|
8
8
|
FACTORY_GIRL_NAMES.find do |name, cname|
|
9
9
|
TestProf.require(name) do
|
data/lib/test_prof/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: test-prof
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vladimir Dementyev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-09-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|