Sha256: a18759cc9acaaa219d48b4cb71a492d4824c29ff4f5c909b34b605a51451e445

Contents?: true

Size: 1.94 KB

Versions: 2

Compression:

Stored size: 1.94 KB

Contents

require 'test/unit'
require File.join(File.dirname(__FILE__), '../lib/carmen')

class TestCarmen < Test::Unit::TestCase
  
  def test_country_name
    assert_equal 'United States', Carmen.country_name('US')
  end
  
  def test_country_code
    assert_equal 'CA', Carmen.country_code('Canada')
  end
  
  def test_country_codes
    assert_equal 'AF', Carmen.country_codes.first
    assert_equal 243, Carmen.country_codes.length
  end
  
  def test_country_names
    assert_equal 'Afghanistan', Carmen.country_names.first
    assert_equal 243, Carmen.country_names.length
  end
  
  def test_state_name
    assert_equal 'IL', Carmen.state_code('Illinois')
    assert_equal 'MB', Carmen.state_code('Manitoba', 'CA')
  end
  
  def test_state_code
    assert_equal 'Arizona', Carmen.state_name('AZ')
    assert_equal 'Prince Edward Island', Carmen.state_name('PE', 'CA')
  end
  
  def test_states
    assert_equal 61, Carmen.states.length
    assert_equal ['Alabama', 'AL'], Carmen.states.first
    assert_equal 13, Carmen.states('CA').length
    assert_equal ['Alberta', 'AB'], Carmen.states('CA').first
  end
  
  def test_state_names
    assert_equal 61, Carmen::state_names.length
    assert_equal 'Alabama', Carmen::state_names.first
    assert_equal 13, Carmen.state_names('CA').length
    assert_equal 'Alberta', Carmen.state_names('CA').first
  end
  
  def test_state_codes
    assert_equal 61, Carmen::state_codes.length
    assert_equal 'AL', Carmen::state_codes.first
    assert_equal 13, Carmen.state_codes('CA').length
    assert_equal 'AB', Carmen.state_codes('CA').first
  end
  
  def test_supported_states
    assert Carmen::states?('US')
    assert_equal Carmen::states?('ZZ'), false
  end
  
  def test_invalid_country_exception
    assert_raises Carmen::NonexistentCountry do
      Carmen::state_codes('ZZ')
    end
  end
  
  def test_unsupported_states_exception
    assert_raises Carmen::StatesNotSupported do
      Carmen::state_codes('ID')
    end
  end
  
  
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
carmen-0.1.1 test/carmen_test.rb
carmen-0.1.0 test/carmen_test.rb