iso-codes 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG CHANGED
@@ -1 +1,5 @@
1
+ v0.4.0. support for 'special situation' codes
2
+ v0.3.0. Ruby 1.9 updates
3
+ v0.2.1. updated language tables to 20110525
4
+ v0.2.0. updated language tables to 20100707
1
5
  v0.1.0. initial release
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.0
1
+ 0.4.0
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "iso-codes"
8
- s.version = "0.3.0"
8
+ s.version = "0.4.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Marius L. J\303\270hndal"]
12
- s.date = "2011-12-11"
11
+ s.authors = ["Marius L. J\u{f8}hndal"]
12
+ s.date = "2012-01-26"
13
13
  s.description = "A database of ISO language and script codes."
14
14
  s.email = "mariuslj (at) ifi [dot] uio (dot) no"
15
15
  s.extra_rdoc_files = [
@@ -48,11 +48,21 @@ module ISOCodes
48
48
  end
49
49
  end
50
50
 
51
+ class SpecialSituationLanguage < Language
52
+ def initialize(individual_languages, macrolanguage, *rest)
53
+ super(*rest)
54
+
55
+ raise ArgumentError, "macrolanguage given for special situation language" if macrolanguage
56
+ raise ArgumentError, "individual languages given for special situation language" if individual_languages
57
+ end
58
+ end
59
+
51
60
  class IndividualLanguage < Language
52
61
  def initialize(individual_languages, macrolanguage, *rest)
53
62
  super(*rest)
54
63
 
55
- raise "Individual languages given for individual language" if individual_languages # FIXME
64
+ raise ArgumentError, "individual languages given for individual language" if individual_languages
65
+
56
66
  @macrolanguage = macrolanguage
57
67
  end
58
68
 
@@ -67,7 +77,8 @@ module ISOCodes
67
77
  def initialize(individual_languages, macrolanguage, *rest)
68
78
  super(*rest)
69
79
 
70
- raise "Macrolanguage given for macrolanguage" if macrolanguage # FIXME
80
+ raise ArgumentError, "macrolanguage given for macrolanguage" if macrolanguage
81
+
71
82
  @individual_languages = individual_languages
72
83
  end
73
84
 
@@ -139,7 +150,7 @@ module ISOCodes
139
150
  when 'M'
140
151
  Macrolanguage
141
152
  when 'S'
142
- nil
153
+ SpecialSituationLanguage
143
154
  else
144
155
  raise ArgumentError, "invalid scope"
145
156
  end
@@ -32,4 +32,14 @@ class ISO6393CodesTestCase < Test::Unit::TestCase
32
32
  assert_equal ISOCodes::IndividualLanguage, language.class
33
33
  assert_equal "lav", language.macrolanguage.identifier
34
34
  end
35
+
36
+ def test_all_language_instantiation
37
+ ISOCodes.all_iso_639_3_codes.each do |l|
38
+ assert_not_nil l
39
+
40
+ k = ISOCodes::find_language(l)
41
+ assert_not_nil k
42
+ assert_kind_of ISOCodes::Language, k
43
+ end
44
+ end
35
45
  end
metadata CHANGED
@@ -1,32 +1,23 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: iso-codes
3
- version: !ruby/object:Gem::Version
4
- hash: 19
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.0
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 3
9
- - 0
10
- version: 0.3.0
11
6
  platform: ruby
12
- authors:
13
- - "Marius L. J\xC3\xB8hndal"
7
+ authors:
8
+ - Marius L. Jøhndal
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-12-11 00:00:00 Z
12
+ date: 2012-01-26 00:00:00.000000000 Z
19
13
  dependencies: []
20
-
21
14
  description: A database of ISO language and script codes.
22
15
  email: mariuslj (at) ifi [dot] uio (dot) no
23
16
  executables: []
24
-
25
17
  extensions: []
26
-
27
- extra_rdoc_files:
18
+ extra_rdoc_files:
28
19
  - README.rdoc
29
- files:
20
+ files:
30
21
  - CHANGELOG
31
22
  - README.rdoc
32
23
  - Rakefile
@@ -38,36 +29,26 @@ files:
38
29
  - test/test_iso_codes.rb
39
30
  homepage: http://github.com/mlj/iso-codes
40
31
  licenses: []
41
-
42
32
  post_install_message:
43
33
  rdoc_options: []
44
-
45
- require_paths:
34
+ require_paths:
46
35
  - lib
47
- required_ruby_version: !ruby/object:Gem::Requirement
36
+ required_ruby_version: !ruby/object:Gem::Requirement
48
37
  none: false
49
- requirements:
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- hash: 3
53
- segments:
54
- - 0
55
- version: "0"
56
- required_rubygems_version: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ! '>='
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
42
+ required_rubygems_version: !ruby/object:Gem::Requirement
57
43
  none: false
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- hash: 3
62
- segments:
63
- - 0
64
- version: "0"
44
+ requirements:
45
+ - - ! '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
65
48
  requirements: []
66
-
67
49
  rubyforge_project: iso-codes
68
50
  rubygems_version: 1.8.11
69
51
  signing_key:
70
52
  specification_version: 3
71
53
  summary: ISO language and script code support
72
54
  test_files: []
73
-