Verified Commit 883206ab authored by Hercules Merscher's avatar Hercules Merscher 🌴
Browse files

fix: No need to cp schema in tests anymore

parent ba74adef
Loading
Loading
Loading
Loading
+6 −12
Original line number Diff line number Diff line
@@ -9,8 +9,6 @@ require 'labkit/covered_experience/experience'
RSpec.describe Labkit::CoveredExperience::Registry do
  let(:temp_dir) { Dir.mktmpdir }
  let(:covered_experiences_dir) { File.join(temp_dir, 'covered_experiences') }
  let(:schema_source) { File.expand_path('../../../config/covered_experiences/schema.json', __dir__) }
  let(:schema_dest) { File.join(covered_experiences_dir, 'schema.json') }
  let(:covered_experience_id) { 'merge_request_creation' }
  let(:base_content) do
    {
@@ -20,17 +18,14 @@ RSpec.describe Labkit::CoveredExperience::Registry do
    }
  end

  before do
  around do |example|
    FileUtils.mkdir_p(covered_experiences_dir)
    FileUtils.cp(schema_source, covered_experiences_dir)
  end

  after do
    example.run
    FileUtils.rm_rf(covered_experiences_dir)
  end

  describe '.new' do
    context 'with valid YAML files' do
    context 'with valid definition files' do
      before do
        create_yaml_file("#{covered_experience_id}.yml", base_content)

@@ -41,7 +36,7 @@ RSpec.describe Labkit::CoveredExperience::Registry do
        })
      end

      it 'loads all YAML files and returns registry' do
      it 'load definitions' do
        registry = described_class.new(dir: covered_experiences_dir)

        expect(registry[:merge_request_creation]).to be_a(Labkit::CoveredExperience::Experience)
@@ -147,8 +142,7 @@ RSpec.describe Labkit::CoveredExperience::Registry do

  private

  def create_yaml_file(filename, content, directory = covered_experiences_dir)
    header = "# yaml-language-server: $schema=#{schema_dest}\n---\n"
    File.write(File.join(directory, filename), content.to_yaml.gsub("---\n", header))
  def create_yaml_file(filename, content)
    File.write(File.join(covered_experiences_dir, filename), content.to_yaml)
  end
end