Sha256: 700b3f181d23043e682505bce190466b8837c91abbe7cae5c240c13f49292fa2

Contents?: true

Size: 1.1 KB

Versions: 4

Compression:

Stored size: 1.1 KB

Contents

describe Elasticity::ScaldingStep do

  subject do
    Elasticity::ScaldingStep.new('jar', 'class', { 'key' => 'value' })
  end

  it { should be_a Elasticity::JobFlowStep }

  describe '.initialize' do
    it 'should set the fields appropriately' do
      expect(subject.name).to eql('Elasticity Scalding Step')
      expect(subject.action_on_failure).to eql('TERMINATE_JOB_FLOW')
      expect(subject.jar).to eql('jar')
      expect(subject.arguments).to eql(['class', '--hdfs', '--key', 'value'])
    end
  end

  describe '#to_aws_step' do

    it { should respond_to(:to_aws_step).with(1).argument }

    it 'should convert to aws step format' do
      subject.to_aws_step(Elasticity::JobFlow.new).should == {
        :name => 'Elasticity Scalding Step',
        :action_on_failure => 'TERMINATE_JOB_FLOW',
        :hadoop_jar_step => {
          :jar => 'jar',
          :args => %w(class --hdfs --key value)
        }
      }
    end
  end

  describe '.requires_installation?' do
    it 'should not require installation' do
      expect(Elasticity::ScaldingStep.requires_installation?).to be false
    end
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
elasticity-6.0.14 spec/lib/elasticity/scalding_step_spec.rb
elasticity-6.0.13 spec/lib/elasticity/scalding_step_spec.rb
elasticity-6.0.12 spec/lib/elasticity/scalding_step_spec.rb
elasticity-6.0.11 spec/lib/elasticity/scalding_step_spec.rb