File tree Expand file tree Collapse file tree 2 files changed +24
-14
lines changed
lib/ldclient-rb/impl/datasystem Expand file tree Collapse file tree 2 files changed +24
-14
lines changed Original file line number Diff line number Diff line change @@ -163,17 +163,13 @@ def flag_tracker
163163 # @return [Symbol] One of DataAvailability constants
164164 #
165165 def data_availability
166- if @config . offline?
167- return DataAvailability ::DEFAULTS
168- end
166+ return DataAvailability ::DEFAULTS if @config . offline?
169167
170- if @update_processor && @update_processor . initialized ?
171- return DataAvailability ::REFRESHED
168+ unless @config . use_ldd ?
169+ return DataAvailability ::REFRESHED if @update_processor && @update_processor . initialized?
172170 end
173171
174- if @store_wrapper . initialized?
175- return DataAvailability ::CACHED
176- end
172+ return DataAvailability ::CACHED if @store_wrapper . initialized?
177173
178174 DataAvailability ::DEFAULTS
179175 end
@@ -184,10 +180,9 @@ def data_availability
184180 # @return [Symbol] One of DataAvailability constants
185181 #
186182 def target_availability
187- if @config . offline?
188- return DataAvailability ::DEFAULTS
189- end
190- # In LDD mode or normal connected modes, the ideal is to be refreshed
183+ return DataAvailability ::DEFAULTS if @config . offline?
184+ return DataAvailability ::CACHED if @config . use_ldd?
185+
191186 DataAvailability ::REFRESHED
192187 end
193188
Original file line number Diff line number Diff line change @@ -212,6 +212,21 @@ module DataSystem
212212 expect ( subject . data_availability ) . to eq ( DataAvailability ::DEFAULTS )
213213 end
214214 end
215+
216+ context "in LDD mode" do
217+ let ( :config ) { LaunchDarkly ::Config . new ( use_ldd : true ) }
218+
219+ it "returns DEFAULTS when store is empty" do
220+ subject . start
221+ expect ( subject . data_availability ) . to eq ( DataAvailability ::DEFAULTS )
222+ end
223+
224+ it "returns CACHED when store is initialized" do
225+ subject . start
226+ subject . store . init ( { } )
227+ expect ( subject . data_availability ) . to eq ( DataAvailability ::CACHED )
228+ end
229+ end
215230 end
216231
217232 describe "#target_availability" do
@@ -232,8 +247,8 @@ module DataSystem
232247 context "with LDD mode" do
233248 let ( :config ) { LaunchDarkly ::Config . new ( use_ldd : true ) }
234249
235- it "returns REFRESHED " do
236- expect ( subject . target_availability ) . to eq ( DataAvailability ::REFRESHED )
250+ it "returns CACHED " do
251+ expect ( subject . target_availability ) . to eq ( DataAvailability ::CACHED )
237252 end
238253 end
239254 end
You can’t perform that action at this time.
0 commit comments