summaryrefslogtreecommitdiff
path: root/spec/migrations/reset_job_token_scope_enabled_spec.rb
blob: 4ce9078246afe2a63f3c60248bcb95237a0a6ae2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# frozen_string_literal: true

require 'spec_helper'

require_migration!

RSpec.describe ResetJobTokenScopeEnabled, feature_category: :continuous_integration do
  let(:settings) { table(:project_ci_cd_settings) }
  let(:projects) { table(:projects) }
  let(:namespaces) { table(:namespaces) }
  let(:namespace) { namespaces.create!(name: 'gitlab', path: 'gitlab-org') }
  let(:project_1) { projects.create!(name: 'proj-1', path: 'gitlab-org', namespace_id: namespace.id) }
  let(:project_2) { projects.create!(name: 'proj-2', path: 'gitlab-org', namespace_id: namespace.id) }

  before do
    settings.create!(id: 1, project_id: project_1.id, job_token_scope_enabled: true)
    settings.create!(id: 2, project_id: project_2.id, job_token_scope_enabled: false)
  end

  it 'migrates job_token_scope_enabled to be always false' do
    expect { migrate! }
      .to change { settings.where(job_token_scope_enabled: false).count }
      .from(1).to(2)
  end
end