Fix spec when parent record is destroyed
This commit is contained in:
parent
23c8e19846
commit
d5344617a8
2 changed files with 9 additions and 18 deletions
|
@ -125,7 +125,7 @@ module Ci
|
||||||
end
|
end
|
||||||
|
|
||||||
def redis_data_key
|
def redis_data_key
|
||||||
"gitlab:ci:trace:#{build_id}:chunks:#{chunk_index}:data"
|
"gitlab:ci:trace:#{build_id}:chunks:#{chunk_index}"
|
||||||
end
|
end
|
||||||
|
|
||||||
def redis_lock_key
|
def redis_lock_key
|
||||||
|
|
|
@ -332,25 +332,20 @@ describe Ci::BuildTraceChunk, :clean_gitlab_redis_shared_state do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe 'deletes data in redis after chunk record destroyed' do
|
describe 'deletes data in redis after a parent record destroyed' do
|
||||||
let(:project) { create(:project) }
|
let(:project) { create(:project) }
|
||||||
|
|
||||||
before do
|
before do
|
||||||
pipeline = create(:ci_pipeline, project: project)
|
pipeline = create(:ci_pipeline, project: project)
|
||||||
@build_ids = []
|
create(:ci_build, :running, :trace_live, pipeline: pipeline, project: project)
|
||||||
@build_ids << create(:ci_build, :running, :trace_live, pipeline: pipeline, project: project).id
|
create(:ci_build, :running, :trace_live, pipeline: pipeline, project: project)
|
||||||
@build_ids << create(:ci_build, :running, :trace_live, pipeline: pipeline, project: project).id
|
create(:ci_build, :running, :trace_live, pipeline: pipeline, project: project)
|
||||||
@build_ids << create(:ci_build, :running, :trace_live, pipeline: pipeline, project: project).id
|
|
||||||
end
|
end
|
||||||
|
|
||||||
shared_examples_for 'deletes all build_trace_chunk and data in redis' do
|
shared_examples_for 'deletes all build_trace_chunk and data in redis' do
|
||||||
it do
|
it do
|
||||||
@build_ids.each do |build_id|
|
Gitlab::Redis::SharedState.with do |redis|
|
||||||
Gitlab::Redis::SharedState.with do |redis|
|
expect(redis.scan_each(match: "gitlab:ci:trace:?:chunks:?").to_a.count).to eq(3)
|
||||||
redis.scan_each(match: "gitlab:ci:trace:#{build_id}:chunks:?") do |key|
|
|
||||||
expect(redis.exists(key)).to be_truthy
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
expect(described_class.count).to eq(3)
|
expect(described_class.count).to eq(3)
|
||||||
|
@ -359,12 +354,8 @@ describe Ci::BuildTraceChunk, :clean_gitlab_redis_shared_state do
|
||||||
|
|
||||||
expect(described_class.count).to eq(0)
|
expect(described_class.count).to eq(0)
|
||||||
|
|
||||||
@build_ids.each do |build_id|
|
Gitlab::Redis::SharedState.with do |redis|
|
||||||
Gitlab::Redis::SharedState.with do |redis|
|
expect(redis.scan_each(match: "gitlab:ci:trace:?:chunks:?").to_a.count).to eq(0)
|
||||||
redis.scan_each(match: "gitlab:ci:trace:#{build_id}:chunks:?") do |key|
|
|
||||||
expect(redis.exists(key)).to be_falsey
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue