summaryrefslogtreecommitdiff
path: root/spec/migrations/cap_designs_filename_length_to_new_limit_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/migrations/cap_designs_filename_length_to_new_limit_spec.rb')
-rw-r--r--spec/migrations/cap_designs_filename_length_to_new_limit_spec.rb62
1 files changed, 0 insertions, 62 deletions
diff --git a/spec/migrations/cap_designs_filename_length_to_new_limit_spec.rb b/spec/migrations/cap_designs_filename_length_to_new_limit_spec.rb
deleted file mode 100644
index 702f2e6d9bd..00000000000
--- a/spec/migrations/cap_designs_filename_length_to_new_limit_spec.rb
+++ /dev/null
@@ -1,62 +0,0 @@
-# frozen_string_literal: true
-
-require 'spec_helper'
-require_migration!
-
-RSpec.describe CapDesignsFilenameLengthToNewLimit, :migration, schema: 20200528125905 do
- let(:namespaces) { table(:namespaces) }
- let(:projects) { table(:projects) }
- let(:issues) { table(:issues) }
- let(:designs) { table(:design_management_designs) }
-
- let(:filename_below_limit) { generate_filename(254) }
- let(:filename_at_limit) { generate_filename(255) }
- let(:filename_above_limit) { generate_filename(256) }
-
- let!(:namespace) { namespaces.create!(name: 'foo', path: 'foo') }
- let!(:project) { projects.create!(name: 'gitlab', path: 'gitlab-org/gitlab', namespace_id: namespace.id) }
- let!(:issue) { issues.create!(description: 'issue', project_id: project.id) }
-
- def generate_filename(length, extension: '.png')
- name = 'a' * (length - extension.length)
-
- "#{name}#{extension}"
- end
-
- def create_design(filename)
- designs.create!(
- issue_id: issue.id,
- project_id: project.id,
- filename: filename
- )
- end
-
- it 'correctly sets filenames that are above the limit' do
- designs = [
- filename_below_limit,
- filename_at_limit,
- filename_above_limit
- ].map(&method(:create_design))
-
- migrate!
-
- designs.each(&:reload)
-
- expect(designs[0].filename).to eq(filename_below_limit)
- expect(designs[1].filename).to eq(filename_at_limit)
- expect(designs[2].filename).to eq([described_class::MODIFIED_NAME, designs[2].id, described_class::MODIFIED_EXTENSION].join)
- end
-
- it 'runs after filename limit has been set' do
- # This spec file uses the `schema:` keyword to run these tests
- # against a schema version before the one that sets the limit,
- # as otherwise we can't create the design data with filenames greater
- # than the limit.
- #
- # For this test, we migrate any skipped versions up to this migration.
- migration_context.migrate(20200602013901)
-
- create_design(filename_at_limit)
- expect { create_design(filename_above_limit) }.to raise_error(ActiveRecord::StatementInvalid)
- end
-end