Sha256: 0bbb91fe5b76b12f32a47d5cf1b7cf7d1fc5565c47c84641b3a78ada9089f5c0

Contents?: true

Size: 876 Bytes

Versions: 28

Compression:

Stored size: 876 Bytes

Contents

class TestTrack::Remote::SplitRegistry
  include TestTrack::RemoteModel

  CACHE_KEY = 'test_track_split_registry'.freeze

  collection_path '/api/v1/split_registry'

  def self.fake_instance_attributes(_)
    ::TestTrack::Fake::SplitRegistry.instance.to_h
  end

  def self.instance
    # TODO: FakeableHer needs to make this faking a feature of `get`
    if faked?
      new(fake_instance_attributes(nil))
    else
      get('/api/v1/split_registry')
    end
  end

  def self.reset
    Rails.cache.delete(CACHE_KEY)
  end

  def self.to_hash
    if faked?
      instance.attributes.freeze
    else
      Rails.cache.fetch(CACHE_KEY, expires_in: 5.seconds) {
        instance.attributes
      }.freeze
    end
  rescue *TestTrack::SERVER_ERRORS => e
    Rails.logger.error "TestTrack failed to load split registry. #{e}"
    nil # if we can't get a split registry
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
test_track_rails_client-4.0.0.alpha26 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha25 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha24 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha23 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha22 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha21 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha20 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha19 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha18 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha17 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha16 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha15 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha14 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha13 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha12 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha11 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha10 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha9 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha8 app/models/test_track/remote/split_registry.rb
test_track_rails_client-4.0.0.alpha7 app/models/test_track/remote/split_registry.rb