Sha256: f63623a5194852639401f88184d06a3f66e13f32c0fc5c527d01283003445a83

Contents?: true

Size: 1.62 KB

Versions: 1

Compression:

Stored size: 1.62 KB

Contents

require 'spec_helper'

describe API do
  VALID_NAMES = [
    'abc',
    'abc_cd',
    '_abc_cd',
    '_abc_',
    'ab0_',
    'ab0',
  ]

  INVALID_NAMES = {
    'a' => 'a__',
    'a' * 256 => 'a' * 253 + '__',
    'abcD' => 'abcd',
    'a-b*' => 'a_b_',
  }

  it 'normalize_database_name should return normalized data' do
    INVALID_NAMES.each_pair {|ng,ok|
      API.normalize_database_name(ng).should == ok
    }
    lambda {
      API.normalize_database_name('')
    }.should raise_error(RuntimeError)
  end

  it 'normalize_table_name should return normalized data' do
    INVALID_NAMES.each_pair {|ng,ok|
      API.normalize_table_name(ng).should == ok
    }
    lambda {
      API.normalize_table_name('')
    }.should raise_error(RuntimeError)
  end

  it 'validate_database_name should raise errors' do
    INVALID_NAMES.each_pair {|ng,ok|
      lambda {
        API.validate_database_name(ng)
      }.should raise_error(ParameterValidationError)
    }
    lambda {
      API.validate_database_name('')
    }.should raise_error(ParameterValidationError)
  end

  it 'validate_table_name should raise errors' do
    INVALID_NAMES.each_pair {|ng,ok|
      lambda {
        API.validate_table_name(ng)
      }.should raise_error(ParameterValidationError)
    }
    lambda {
      API.validate_table_name('')
    }.should raise_error(ParameterValidationError)
  end

  it 'normalize_database_name should return valid data' do
    VALID_NAMES.each {|ok|
      API.normalize_database_name(ok).should == ok
    }
  end

  it 'validate_database_name should return valid data' do
    VALID_NAMES.each {|ok|
      API.validate_database_name(ok)
    }
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
td-client-0.8.62 spec/api_spec.rb