Sha256: cf5be6f731471dcb7dd5e97d5e9eacaa765098dab46d7186b91acf49f1bfe22f

Contents?: true

Size: 1.02 KB

Versions: 2

Compression:

Stored size: 1.02 KB

Contents

require './spec/spec_helper'
require "./lib/mass_insert"

describe MassInsert::Adapters::Helpers::Sanitizer do

  before :each do
    @adapter = MassInsert::Adapters::Adapter.new([], {})
  end

  subject{ @adapter }

  describe "#sanitized_columns" do
    before :each do
      options = {
        :primary_key      => :id,
        :primary_key_mode => :auto,
      }
      subject.options.merge!(options)
      subject.stub(:table_columns).and_return([:id, :name])
    end

    it "should respond to sanitized_columns" do
      subject.respond_to?(:sanitized_columns).should be_true
    end

    context "when primary_key_mode is automatic" do
      it "should returns the column without primary_key" do
        subject.sanitized_columns.should eq([:name])
      end
    end

    context "when primary_key_mode is not automatic" do
      it "should returns the columns including primary_key" do
        subject.options.merge!(:primary_key_mode => :manual)
        subject.sanitized_columns.should eq([:id, :name])
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mass_insert-0.0.2 spec/mass_insert/adapters/helpers/sanitizer_spec.rb
mass_insert-0.0.1 spec/mass_insert/adapters/helpers/sanitizer_spec.rb