Sha256: df4fc5d1cf74dfb4e1373ff394549e74492521047c8997f84de0da50cccf9d3d

Contents?: true

Size: 1.52 KB

Versions: 16

Compression:

Stored size: 1.52 KB

Contents

require_relative "../../../spec_helper"
require "kontena/cli/apps/common"

describe Kontena::Cli::Apps::Common do

  let(:subject) do
    Class.new { include Kontena::Cli::Apps::Common}.new
  end

  describe '#normalize_env_vars' do
    it 'converts env hash to array' do
      opts = {
          'environment' => {
              'FOO' => 'bar',
              'BAR' => 'baz'
          }
      }
      subject.normalize_env_vars(opts)
      env = opts['environment']
      expect(env).to include('FOO=bar')
      expect(env).to include('BAR=baz')
    end

    it 'does nothing to env array' do
      opts = {
          'environment' => [
              'FOO=bar', 'BAR=baz'
          ]
      }
      subject.normalize_env_vars(opts)
      env = opts['environment']
      expect(env).to include('FOO=bar')
      expect(env).to include('BAR=baz')
    end
  end

  describe '#extend_env_vars' do
    it 'inherites env vars from upper level' do
      from = {'environment' => ['FOO=bar']}
      to = {}
      env_vars = subject.extend_env_vars(from, to)
      expect(env_vars).to eq(['FOO=bar'])
    end

    it 'overrides values' do
      from = {'environment' => ['FOO=bar']}
      to = {'environment' => ['FOO=baz']}
      env_vars = subject.extend_env_vars(from, to)
      expect(env_vars).to eq(['FOO=baz'])
    end

    it 'combines variables' do
      from = {'environment' => ['FOO=bar']}
      to = {'environment' => ['BAR=baz']}
      env_vars = subject.extend_env_vars(from, to)
      expect(env_vars).to eq(['BAR=baz', 'FOO=bar'])
    end


  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
kontena-cli-0.11.7 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.11.6 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.11.5 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.11.4 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.11.3 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.11.2 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.11.1 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.11.0 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.10.3 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.10.2 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.10.1 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.10.0 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.9.3 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.9.2 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.9.1 spec/kontena/cli/app/common_spec.rb
kontena-cli-0.9.0 spec/kontena/cli/app/common_spec.rb