diff options
author | Shinya Maeda <shinya@gitlab.com> | 2018-06-25 13:46:38 +0300 |
---|---|---|
committer | Shinya Maeda <shinya@gitlab.com> | 2018-06-25 13:46:38 +0300 |
commit | 44cc58765242afc2e035c2972447be2afae8d153 (patch) | |
tree | 4e5c65d014457d3ed61b3b39a7f7a7688518e06d /spec/factories | |
parent | 82d98426854eb375bbe8ce0c830562e7c65a790a (diff) |
Add specs for each data store
Diffstat (limited to 'spec/factories')
-rw-r--r-- | spec/factories/ci/build_trace_chunks.rb | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/spec/factories/ci/build_trace_chunks.rb b/spec/factories/ci/build_trace_chunks.rb index c0b9a25bfe8..e39b69b4bbd 100644 --- a/spec/factories/ci/build_trace_chunks.rb +++ b/spec/factories/ci/build_trace_chunks.rb @@ -3,5 +3,63 @@ FactoryBot.define do build factory: :ci_build chunk_index 0 data_store :redis + + trait :redis_with_data do + data_store :redis + + transient do + initial_data 'test data' + end + + after(:create) do |build_trace_chunk, evaluator| + Gitlab::Redis::SharedState.with do |redis| + redis.set( + "gitlab:ci:trace:#{build_trace_chunk.build.id}:chunks:#{build_trace_chunk.chunk_index.to_i}", + evaluator.initial_data, + ex: 1.day) + end + end + end + + trait :redis_without_data do + data_store :redis + end + + trait :database_with_data do + data_store :database + + transient do + initial_data 'test data' + end + + after(:build) do |build_trace_chunk, evaluator| + build_trace_chunk.raw_data = evaluator.initial_data + end + end + + trait :database_without_data do + data_store :database + end + + trait :fog_with_data do + data_store :fog + + transient do + initial_data 'test data' + end + + after(:create) do |build_trace_chunk, evaluator| + ::Fog::Storage.new(JobArtifactUploader.object_store_credentials).tap do |connection| + connection.put_object( + 'artifacts', + "tmp/builds/#{build_trace_chunk.build.id}/chunks/#{build_trace_chunk.chunk_index.to_i}.log", + evaluator.initial_data) + end + end + end + + trait :fog_without_data do + data_store :fog + end end end |