summaryrefslogtreecommitdiff
path: root/spec/tasks/gitlab/update_templates_rake_spec.rb
blob: 7b17549b8c763509ca6bc811f5e9fbc6db861ade (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 'rake_helper'

describe 'gitlab:update_project_templates rake task' do
  let!(:tmpdir) { Dir.mktmpdir }

  before do
    Rake.application.rake_require 'tasks/gitlab/update_templates'
    create(:admin)
    allow(Gitlab::ProjectTemplate)
      .to receive(:archive_directory)
        .and_return(Pathname.new(tmpdir))
  end

  after do
    FileUtils.rm_rf(tmpdir)
  end

  it 'updates valid project templates' do
    expect { run_rake_task('gitlab:update_project_templates', ['rails']) }
      .to change { Dir.entries(tmpdir) }
        .by(['rails.tar.gz'])
  end
end