active_force 0.20.0 → 0.20.1
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/.gitignore +0 -1
- data/CHANGELOG.md +3 -0
- data/lib/active_force/query.rb +4 -12
- data/lib/active_force/version.rb +1 -1
- data/spec/active_force/query_spec.rb +0 -16
- 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: f1fbcc63ac7ef2ec3ac8efdadd055a61ae8e98fe721473a054d9207d95bc495e
|
4
|
+
data.tar.gz: 838eebde842f1edcc4b2b2a879b1697aec7439852af0f563b9f6687760b57434
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ec076a1ffc49293809ebb2c66445ca70b1e016c82be03f4bf6803a6482b18d014711caca4112f7875f8a76cf85b27d1381cb8ffd2a749f7c49b21f801f298af6
|
7
|
+
data.tar.gz: 24378ad367f6ff96edaa88a902c946d5d2f38f71e69d1745cc7d769b0cb1d70dec4752e5825774506985c47202ed15835268b3ad08b1d5d255f6dbfb34b24e44
|
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,9 @@
|
|
2
2
|
|
3
3
|
## Not released
|
4
4
|
|
5
|
+
## 0.20.1
|
6
|
+
- Revert "ActiveForce .first performance enhancement (#73)" (https://github.com/Beyond-Finance/active_force/pull/76)
|
7
|
+
|
5
8
|
## 0.20.0
|
6
9
|
|
7
10
|
- Change `.first` to not query the API if records have already been retrieved (https://github.com/Beyond-Finance/active_force/pull/73)
|
data/lib/active_force/query.rb
CHANGED
@@ -78,15 +78,7 @@ module ActiveForce
|
|
78
78
|
end
|
79
79
|
|
80
80
|
def first
|
81
|
-
|
82
|
-
clone_and_set_instance_variables(
|
83
|
-
size: 1,
|
84
|
-
records: [@records.first],
|
85
|
-
decorated_records: [@decorated_records&.first]
|
86
|
-
)
|
87
|
-
else
|
88
|
-
limit(1)
|
89
|
-
end
|
81
|
+
limit 1
|
90
82
|
end
|
91
83
|
|
92
84
|
def last(limit = 1)
|
@@ -134,9 +126,9 @@ module ActiveForce
|
|
134
126
|
|
135
127
|
def clone_and_set_instance_variables instance_variable_hash={}
|
136
128
|
clone = self.clone
|
137
|
-
|
138
|
-
|
139
|
-
|
129
|
+
clone.instance_variable_set(:@decorated_records, nil)
|
130
|
+
clone.instance_variable_set(:@records, nil)
|
131
|
+
instance_variable_hash.each { |k,v| clone.instance_variable_set("@#{k.to_s}", v) }
|
140
132
|
clone
|
141
133
|
end
|
142
134
|
end
|
data/lib/active_force/version.rb
CHANGED
@@ -165,22 +165,6 @@ describe ActiveForce::Query do
|
|
165
165
|
expect(query.to_s).to eq "SELECT Id, name, etc FROM table_name"
|
166
166
|
expect(new_query.to_s).to eq 'SELECT Id, name, etc FROM table_name LIMIT 1'
|
167
167
|
end
|
168
|
-
|
169
|
-
it "does not query if records have already been fetched" do
|
170
|
-
query = ActiveForce::Query.new 'table_name'
|
171
|
-
query.instance_variable_set(:@records, %w[foo bar])
|
172
|
-
query.instance_variable_set(:@decorated_records, %w[foo bar])
|
173
|
-
expect(query).not_to receive(:limit)
|
174
|
-
expect(query).to receive(:clone_and_set_instance_variables).with(size: 1, records: ['foo'], decorated_records: ['foo'])
|
175
|
-
query.first
|
176
|
-
end
|
177
|
-
|
178
|
-
it 'queries the api if it has not been queried yet' do
|
179
|
-
query = ActiveForce::Query.new 'table_name'
|
180
|
-
query.instance_variable_set(:@records, nil)
|
181
|
-
expect(query).to receive(:limit)
|
182
|
-
query.first
|
183
|
-
end
|
184
168
|
end
|
185
169
|
|
186
170
|
describe '.last' do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: active_force
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.20.
|
4
|
+
version: 0.20.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eloy Espinaco
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2023-11-
|
14
|
+
date: 2023-11-29 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: activemodel
|