Sha256: 49b8134a99a222dab474b5c028791dab3ad7634df732e8945b679d490db50970

Contents?: true

Size: 1.07 KB

Versions: 23

Compression:

Stored size: 1.07 KB

Contents

# frozen_string_literal: true

require 'eac_config/old_configs'
require 'eac_templates/variables/file'

RSpec.describe ::EacTemplates::Variables::Content do
  let(:files_dir) { ::File.join(__dir__, 'content_spec_files').to_pathname }
  let(:source_path) { files_dir.join('source.template') }
  let(:instance) { described_class.from_file(source_path) }
  let(:expected_content) { ::File.read(::File.join(files_dir, 'expected_content')) }

  describe '#apply' do
    context 'when config is a hash' do
      let(:config) { { name: 'Fulano de Tal', age: 33 } }

      it { expect(instance.apply(config)).to eq(expected_content) }
    end

    context 'when config responds to read_entry' do
      let(:config) { ::EacConfig::OldConfigs.new('rspec_describe_eac_ruby_utils_templates_file') }

      before do
        config.clear
        config['name'] = 'Fulano de Tal'
        config['age'] = '33'
      end

      it { expect(instance.apply(config)).to eq(expected_content) }
    end
  end

  describe '#variables' do
    it { expect(instance.variables).to eq(::Set.new(%w[name age])) }
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
eac_tools-0.76.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.75.2 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.75.1 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.75.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.74.1 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.74.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.73.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.72.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.70.1 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.70.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.69.1 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.69.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.68.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.67.1 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.67.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.66.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.65.1 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.65.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.64.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb
eac_tools-0.63.0 sub/eac_templates/spec/lib/eac_templates/variables/content_spec.rb