Sha256: cea5325ccaac6d47e35d13f646c6def76499ad0522fb0ca7d013215c00d9c8ab

Contents?: true

Size: 1.07 KB

Versions: 3

Compression:

Stored size: 1.07 KB

Contents

require File.join(File.dirname(__FILE__) , 'spec_helper')

require 'mapred_factory'
require 'log_analysis'

describe 'MapRed Factory' do

  before(:all) do
    @script = create_tmp_script("use 'LogAnalysis'")
  end

  it 'can create mapper' do
    mapper = MapperFactory.create(@script, nil, nil)
    mapper.class.should == LogAnalysisMapper
  end

  it 'can create reducer' do
    reducer = ReducerFactory.create(@script, nil, nil)
    reducer.class.should == LogAnalysisReducer
  end

  it 'can create setup' do
    s = SetupFactory.create(@script, nil)
    s.class.should == LogAnalysisSetup
  end

  it 'can create base if not exists in specific DSL' do
    s = SetupFactory.create(create_tmp_script("use 'WordCount'"), nil)
    s.class.should == BaseSetup
  end

  it 'specify dsl name from script' do
    dsl_name = MapRedFactory.dsl_name(@script)
    dsl_name.should == 'LogAnalysis'
  end

  it 'can convert dsl name to dsl lib file and require' do
    dsl_name = MapRedFactory.dsl_name(@script)
    MapRedFactory.require_dsl_lib(dsl_name).should_not be_nil
    LogAnalysisMapper
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
hadoop-rubydsl-0.0.3 spec/mapred_factory_spec.rb
hadoop-rubydsl-0.0.2 spec/mapred_factory_spec.rb
hadoop-rubydsl-0.0.1 spec/mapred_factory_spec.rb