Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShinya Maeda <shinya@gitlab.com>2018-06-25 13:46:38 +0300
committerShinya Maeda <shinya@gitlab.com>2018-06-25 13:46:38 +0300
commit44cc58765242afc2e035c2972447be2afae8d153 (patch)
tree4e5c65d014457d3ed61b3b39a7f7a7688518e06d /spec/factories
parent82d98426854eb375bbe8ce0c830562e7c65a790a (diff)
Add specs for each data store
Diffstat (limited to 'spec/factories')
-rw-r--r--spec/factories/ci/build_trace_chunks.rb58
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