NATO 0.0.3 → 0.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2df6f079b6a4a5766249d54349d8964acc403d7d
4
- data.tar.gz: 7f5dda1cf7eb20b96eda2eb2cd3818ed1e23ab8f
3
+ metadata.gz: b310e34835ff646dc1aeb4f4309d0e681dd61ac1
4
+ data.tar.gz: c70b42e9f848c99ba1ba4bd932c1f1315623793b
5
5
  SHA512:
6
- metadata.gz: f3a61617a905376b0aec46f68b0eefecd4ba2b6097048eba0cd65c86ab82fb81567e9dcf23cdc8eff61a3482cd7ba3a94aa4dc6ec74f0a63b48df884aa81b7db
7
- data.tar.gz: 4bb5478c0205363422a20d8a1d73a97677ab7d189c123ab1ceb5e43ca89f93a4de6887b37dd022f2250fe74a951c21a094b3e4b24d4f8811e8b454ae504ea953
6
+ metadata.gz: e61c292e098d215d870d821f7b62493de5405bf563ef84212e5b1a278b3abee3a0ecde60a0dfd5f20d08a736cb845c0a11adc77b803e52b122ee57adfb44517f
7
+ data.tar.gz: 3e9eef9f9a1849918c3609c7adc1170040fc43407312c523ea326d9f477e4d8f1839f8b13d4db94c660f401a6e2fccccb69850bfc5d8b182ee55b307ca189be3
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --require spec_helper
@@ -0,0 +1 @@
1
+ nato
@@ -0,0 +1 @@
1
+ ruby-2.3.0
@@ -7,19 +7,22 @@ Gem::Specification.new do |spec|
7
7
  spec.name = "NATO"
8
8
  spec.version = NATO::VERSION
9
9
  spec.authors = ["Lukas Alexandre"]
10
- spec.email = ["lukasalexandre@me.com"]
10
+ spec.email = ["lukas@codelogic.me"]
11
11
  spec.description = %q{NATO Phonetic Alphabet conversion tool}
12
12
  spec.summary = %q{NATO Phonetic Alphabet conversion tool}
13
13
  spec.homepage = "https://github.com/lukelex/NATO"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files`.split($/)
17
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
+ spec.executables = ["nato"]
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_development_dependency "bundler", "~> 1.3"
22
- spec.add_development_dependency "rake"
23
- spec.add_development_dependency "rspec"
24
- spec.add_development_dependency "rspec-given"
21
+ spec.add_dependency "os", "~> 0.9"
22
+ spec.add_dependency "slop", "~> 4.2"
23
+
24
+ spec.add_development_dependency "bundler", "~> 1.11"
25
+ spec.add_development_dependency "rake", "~> 10.4"
26
+ spec.add_development_dependency "rspec", "~> 3"
27
+ spec.add_development_dependency "rspec-given", "~> 3.7"
25
28
  end
data/README.md CHANGED
@@ -54,7 +54,7 @@ The 26 code words and 10 numbers in the NATO phonetic alphabet are assigned to t
54
54
  Add this line to your application's Gemfile:
55
55
 
56
56
  ```ruby
57
- gem 'NATO'
57
+ gem "NATO"
58
58
  ```
59
59
 
60
60
  And then execute:
@@ -72,11 +72,41 @@ $ gem install NATO
72
72
  ## Usage
73
73
 
74
74
  ```ruby
75
- text = Text.new 'a8h43lnr0'
75
+ require "NATO"
76
+
77
+ text = NATO::Text.new "a8h43lnr0"
76
78
  text.to_nato # "Alfa Eight Hotel Four Three Lima November Romeo Zero"
77
79
  text.pronunciation #'AL-FAH AIT HOH-TEL FOW-ER TREE LEE-MAH NO-VEM-BER ROW-ME-OH ZEE-RO'
78
80
  ```
79
81
 
82
+ Or, if you rather use refinements:
83
+ ```ruby
84
+ require "NATO/refined"
85
+
86
+ module YourApp
87
+ using NATO::Refined
88
+
89
+ "a8h43lnr0".to_nato # "Alfa Eight Hotel Four Three Lima November Romeo Zero"
90
+ end
91
+ ```
92
+
93
+ ### Text-to-speach
94
+
95
+ You can also use the text-to-speech system tool:
96
+ ```ruby
97
+ require "NATO"
98
+
99
+ NATO::Text.new("bzt").say # pipes out to "say" on mac or "espeak" on linux
100
+ ```
101
+
102
+ ### CLI
103
+
104
+ ```bash
105
+ $ gem install nato
106
+ $ nato --convert "bctz" # Bravo Charlie Tango Zulu
107
+ $ nato --say "bctz" # uses system text-to-speech tool
108
+ ```
109
+
80
110
  ## Contributing
81
111
 
82
112
  1. Fork it
data/Rakefile CHANGED
@@ -1 +1,11 @@
1
1
  require "bundler/gem_tasks"
2
+
3
+ begin
4
+ require 'rspec/core/rake_task'
5
+
6
+ RSpec::Core::RakeTask.new(:spec)
7
+
8
+ task default: :spec
9
+ rescue LoadError
10
+ # no rspec available
11
+ end
@@ -0,0 +1,22 @@
1
+ #! /usr/bin/env ruby
2
+
3
+ require "NATO"
4
+ require "slop"
5
+
6
+ Slop.parse do |o|
7
+ o.on "-c", "--convert", "converts to its NATO representation" do
8
+ print NATO::Text.new(ARGV[1]).to_s
9
+ end
10
+
11
+ o.on "-s", "--say", "converts and uses the system text-to-speach API" do
12
+ NATO::Text.new(ARGV[1]).say
13
+ end
14
+
15
+ o.on "-h", "--help" do
16
+ puts o
17
+ end
18
+
19
+ o.on "-v", "--version", "print the version" do
20
+ puts "NATO #{NATO::VERSION}"
21
+ end
22
+ end
@@ -1,8 +1,6 @@
1
1
  require "NATO/version"
2
2
 
3
- require 'NATO/text'
4
- require 'NATO/parser'
5
- require 'NATO/dictionary'
3
+ require "NATO/text"
6
4
 
7
5
  module NATO
8
6
  # Your code goes here...
@@ -1,40 +1,40 @@
1
1
  module NATO
2
2
  DICTIONARY = {
3
- :'a' => [:Alfa, :'AL-FAH'],
4
- :'b' => [:Bravo, :'BRAH-VOH'],
5
- :'c' => [:Charlie, :'CHAR-LEE'],
6
- :'d' => [:Delta, :'DELL-TAH'],
7
- :'e' => [:Echo, :'ECK-OH'],
8
- :'f' => [:Foxtrot, :'FOKS-TROT'],
9
- :'g' => [:Golf, :'GOLF'],
10
- :'h' => [:Hotel, :'HOH-TEL'],
11
- :'i' => [:India, :'IN-DEE-AH'],
12
- :'j' => [:Juliett, :'JEW-LEE-ETT'],
13
- :'k' => [:Kilo, :'KEY-LOH'],
14
- :'l' => [:Lima, :'LEE-MAH'],
15
- :'m' => [:Mike, :'MIKE'],
16
- :'n' => [:November, :'NO-VEM-BER'],
17
- :'o' => [:Oscar, :'OSS-CAH'],
18
- :'p' => [:Papa, :'PAH-PAH'],
19
- :'q' => [:Quebec, :'KEH-BECK'],
20
- :'r' => [:Romeo, :'ROW-ME-OH'],
21
- :'s' => [:Sierra, :'SEE-AIR-RAH'],
22
- :'t' => [:Tango, :'TANG-GO'],
23
- :'u' => [:Uniform, :'YOU-NEE-FORM'],
24
- :'v' => [:Victor, :'VIK-TAH'],
25
- :'w' => [:Whiskey, :'WISS-KEY'],
26
- :'x' => [:'X-ray', :'ECKS-RAY'],
27
- :'y' => [:Yankee, :'YANG-KEY'],
28
- :'z' => [:Zulu, :'ZOO-LOO'],
29
- :'1' => [:One, :'WUN'],
30
- :'2' => [:Two, :'TOO'],
31
- :'3' => [:Three, :'TREE'],
32
- :'4' => [:Four, :'FOW-ER'],
33
- :'5' => [:Five, :'FIFE'],
34
- :'6' => [:Six, :'SIX'],
35
- :'7' => [:Seven, :'SEV-EN'],
36
- :'8' => [:Eight, :'AIT'],
37
- :'9' => [:Nine, :'NIN-ER'],
38
- :'0' => [:Zero, :'ZEE-RO']
3
+ :"a" => [:Alfa, :"AL-FAH"],
4
+ :"b" => [:Bravo, :"BRAH-VOH"],
5
+ :"c" => [:Charlie, :"CHAR-LEE"],
6
+ :"d" => [:Delta, :"DELL-TAH"],
7
+ :"e" => [:Echo, :"ECK-OH"],
8
+ :"f" => [:Foxtrot, :"FOKS-TROT"],
9
+ :"g" => [:Golf, :"GOLF"],
10
+ :"h" => [:Hotel, :"HOH-TEL"],
11
+ :"i" => [:India, :"IN-DEE-AH"],
12
+ :"j" => [:Juliett, :"JEW-LEE-ETT"],
13
+ :"k" => [:Kilo, :"KEY-LOH"],
14
+ :"l" => [:Lima, :"LEE-MAH"],
15
+ :"m" => [:Mike, :"MIKE"],
16
+ :"n" => [:November, :"NO-VEM-BER"],
17
+ :"o" => [:Oscar, :"OSS-CAH"],
18
+ :"p" => [:Papa, :"PAH-PAH"],
19
+ :"q" => [:Quebec, :"KEH-BECK"],
20
+ :"r" => [:Romeo, :"ROW-ME-OH"],
21
+ :"s" => [:Sierra, :"SEE-AIR-RAH"],
22
+ :"t" => [:Tango, :"TANG-GO"],
23
+ :"u" => [:Uniform, :"YOU-NEE-FORM"],
24
+ :"v" => [:Victor, :"VIK-TAH"],
25
+ :"w" => [:Whiskey, :"WISS-KEY"],
26
+ :"x" => [:"X-ray", :"ECKS-RAY"],
27
+ :"y" => [:Yankee, :"YANG-KEY"],
28
+ :"z" => [:Zulu, :"ZOO-LOO"],
29
+ :"1" => [:One, :"WUN"],
30
+ :"2" => [:Two, :"TOO"],
31
+ :"3" => [:Three, :"TREE"],
32
+ :"4" => [:Four, :"FOW-ER"],
33
+ :"5" => [:Five, :"FIFE"],
34
+ :"6" => [:Six, :"SIX"],
35
+ :"7" => [:Seven, :"SEV-EN"],
36
+ :"8" => [:Eight, :"AIT"],
37
+ :"9" => [:Nine, :"NIN-ER"],
38
+ :"0" => [:Zero, :"ZEE-RO"]
39
39
  }
40
- end
40
+ end
@@ -1,11 +1,16 @@
1
- require 'singleton'
1
+ require "singleton"
2
+ require_relative "dictionary"
2
3
 
3
- class NATO::Parser
4
- include Singleton
4
+ module NATO
5
+ class Parser
6
+ include Singleton
5
7
 
6
- def natify(text)
7
- text.split('').map do |piece|
8
- NATO::DICTIONARY[piece.to_sym]
8
+ def natify(text)
9
+ text.split("").map do |piece|
10
+ DICTIONARY.fetch piece.downcase.to_sym
11
+ end
9
12
  end
13
+
14
+ alias_method :to_nato, :natify
10
15
  end
11
- end
16
+ end
@@ -0,0 +1,11 @@
1
+ require_relative "text"
2
+
3
+ module NATO
4
+ module Refined
5
+ refine String do
6
+ def to_nato
7
+ Parser.instance.natify self
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,17 @@
1
+ require "os"
2
+
3
+ module NATO
4
+ module Say
5
+ def self.call(text)
6
+ if OS.linux?
7
+ `echo "#{text}" | espeak`
8
+ elsif OS.mac?
9
+ `say #{text}`
10
+ elsif OS.windows?
11
+ fail NotImplementedError
12
+ end
13
+
14
+ nil
15
+ end
16
+ end
17
+ end
@@ -1,28 +1,30 @@
1
- class NATO::Text
2
- attr_reader :original, :natified, :pronunciation
1
+ require_relative "parser"
2
+ require_relative "say"
3
3
 
4
- def initialize(sentence)
5
- @original = sentence
4
+ module NATO
5
+ class Text
6
+ attr_reader :original, :natified, :pronunciation
6
7
 
7
- sentence_natified = NATO::Parser.instance.natify sentence
8
+ def initialize(sentence)
9
+ @original = sentence
8
10
 
9
- @natified = sentence_natified.map { |item| item.first }.join ' '
10
- @pronunciation = sentence_natified.map { |item| item.last }.join ' '
11
- end
11
+ natify sentence
12
+ end
12
13
 
13
- def natified
14
- @natified ||= ''
15
- end
14
+ alias_method :to_nato, :natified
15
+ alias_method :to_s, :to_nato
16
16
 
17
- def pronunciation
18
- @pronunciation ||= ''
19
- end
17
+ def say
18
+ NATO::Say.(self)
19
+ end
20
20
 
21
- def to_nato
22
- @natified
23
- end
21
+ private
24
22
 
25
- def to_s
26
- [@original, @natified]
23
+ def natify(sentence)
24
+ Parser.instance.natify(sentence).tap do |natified|
25
+ @natified = natified.map(&:first).join(" ")
26
+ @pronunciation = natified.map(&:last).join(" ")
27
+ end
28
+ end
27
29
  end
28
- end
30
+ end
@@ -1,3 +1,3 @@
1
1
  module NATO
2
- VERSION = "0.0.3"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -1,43 +1,75 @@
1
- require 'spec_helper'
1
+ require "spec_helper"
2
2
 
3
3
  module NATO
4
- describe Parser do
4
+ RSpec.describe Parser do
5
5
  Given(:parser) { Parser.instance }
6
6
 
7
7
  describe "#natify" do
8
- Then { parser.should respond_to :natify }
8
+ Then { expect(parser).to respond_to :natify }
9
9
 
10
- describe "short sentence without numbers" do
11
- Given(:result) { [[:Alfa, :"AL-FAH"], [:Bravo, :"BRAH-VOH"], [:Charlie, :"CHAR-LEE"], [:Delta, :"DELL-TAH"], [:Echo, :"ECK-OH"]] }
10
+ context "short sentence without numbers" do
11
+ Given(:result) do
12
+ [
13
+ [:Alfa, :"AL-FAH"], [:Bravo, :"BRAH-VOH"],
14
+ [:Charlie, :"CHAR-LEE"], [:Delta, :"DELL-TAH"],
15
+ [:Echo, :"ECK-OH"]
16
+ ]
17
+ end
12
18
 
13
- When(:nato) { parser.natify 'abcde' }
19
+ When(:nato) { parser.natify "abcde" }
14
20
 
15
- Then { nato.should == result }
21
+ Then { expect(nato).to eq result }
16
22
  end
17
23
 
18
- describe "short sentence" do
19
- Given(:result) { [[:Seven, :"SEV-EN"], [:Tango, :"TANG-GO"], [:Papa, :"PAH-PAH"], [:Three, :TREE], [:November, :"NO-VEM-BER"], [:Yankee, :"YANG-KEY"]] }
24
+ context "short sentence" do
25
+ Given(:result) do
26
+ [
27
+ [:Seven, :"SEV-EN"], [:Tango, :"TANG-GO"],
28
+ [:Papa, :"PAH-PAH"], [:Three, :TREE],
29
+ [:November, :"NO-VEM-BER"], [:Yankee, :"YANG-KEY"]
30
+ ]
31
+ end
20
32
 
21
- When(:nato) { parser.natify '7tp3ny' }
33
+ When(:nato) { parser.natify "7tp3ny" }
22
34
 
23
- Then { nato.should == result }
35
+ Then { expect(nato).to eq result }
24
36
  end
25
37
 
26
- describe "medium sentence" do
27
- Given(:result) { [[:Mike, :MIKE], [:Lima, :"LEE-MAH"], [:Oscar, :"OSS-CAH"], [:Zulu, :"ZOO-LOO"], [:Juliett, :"JEW-LEE-ETT"], [:Uniform, :"YOU-NEE-FORM"], [:Whiskey, :"WISS-KEY"], [:Sierra, :"SEE-AIR-RAH"], [:Whiskey, :"WISS-KEY"], [:Kilo, :"KEY-LOH"], [:Romeo, :"ROW-ME-OH"], [:Hotel, :"HOH-TEL"], [:Foxtrot, :"FOKS-TROT"]] }
38
+ context "medium sentence" do
39
+ Given(:result) do
40
+ [
41
+ [:Mike, :MIKE], [:Lima, :"LEE-MAH"],
42
+ [:Oscar, :"OSS-CAH"], [:Zulu, :"ZOO-LOO"],
43
+ [:Juliett, :"JEW-LEE-ETT"], [:Uniform, :"YOU-NEE-FORM"],
44
+ [:Whiskey, :"WISS-KEY"], [:Sierra, :"SEE-AIR-RAH"],
45
+ [:Whiskey, :"WISS-KEY"], [:Kilo, :"KEY-LOH"],
46
+ [:Romeo, :"ROW-ME-OH"], [:Hotel, :"HOH-TEL"],
47
+ [:Foxtrot, :"FOKS-TROT"]
48
+ ]
49
+ end
28
50
 
29
- When(:nato) { parser.natify 'mlozjuwswkrhf' }
51
+ When(:nato) { parser.natify "mlozjuwswkrhf" }
30
52
 
31
- Then { nato.should == result }
53
+ Then { expect(nato).to eq result }
32
54
  end
33
55
 
34
- describe "medium sentence" do
35
- Given(:result) { [[:Mike, :MIKE], [:Lima, :"LEE-MAH"], [:Zero, :"ZEE-RO"], [:One, :WUN], [:Juliett, :"JEW-LEE-ETT"], [:Uniform, :"YOU-NEE-FORM"], [:Whiskey, :"WISS-KEY"], [:Sierra, :"SEE-AIR-RAH"], [:Eight, :AIT], [:Four, :"FOW-ER"], [:Six, :SIX], [:Hotel, :"HOH-TEL"], [:Foxtrot, :"FOKS-TROT"]] }
56
+ context "medium sentence" do
57
+ Given(:result) do
58
+ [
59
+ [:Mike, :MIKE], [:Lima, :"LEE-MAH"],
60
+ [:Zero, :"ZEE-RO"], [:One, :WUN],
61
+ [:Juliett, :"JEW-LEE-ETT"], [:Uniform, :"YOU-NEE-FORM"],
62
+ [:Whiskey, :"WISS-KEY"], [:Sierra, :"SEE-AIR-RAH"],
63
+ [:Eight, :AIT], [:Four, :"FOW-ER"],
64
+ [:Six, :SIX], [:Hotel, :"HOH-TEL"],
65
+ [:Foxtrot, :"FOKS-TROT"]
66
+ ]
67
+ end
36
68
 
37
69
  When(:nato) { parser.natify 'ml01juws846hf' }
38
70
 
39
- Then { nato.should == result }
71
+ Then { expect(nato).to eq result }
40
72
  end
41
73
  end
42
74
  end
43
- end
75
+ end
@@ -0,0 +1,26 @@
1
+ require "spec_helper"
2
+
3
+ require "NATO/refined"
4
+
5
+ module NATO
6
+ RSpec.describe Refined do
7
+ context "without refining" do
8
+ Then do
9
+ expect { "".to_nato }
10
+ .to raise_error NoMethodError
11
+ end
12
+ end
13
+ end
14
+
15
+ module Test
16
+ using Refined
17
+
18
+ RSpec.describe Refined do
19
+ context "refining" do
20
+ Then do
21
+ expect { "".to_nato }.to_not raise_error
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -1,4 +1,8 @@
1
- require 'rspec'
2
- require 'rspec/given'
1
+ require "rspec"
2
+ require "rspec/given"
3
3
 
4
- require 'NATO'
4
+ require "NATO"
5
+
6
+ RSpec.configure do |config|
7
+ config.raise_errors_for_deprecations!
8
+ end
@@ -1,23 +1,30 @@
1
- require 'spec_helper'
1
+ require "spec_helper"
2
2
 
3
3
  module NATO
4
- describe Text do
5
- Given(:text) { Text.new 'a8h43lnr0' }
4
+ RSpec.describe Text do
5
+ Given(:text) { Text.new "a8h43lnr0" }
6
6
 
7
7
  describe "#to_nato" do
8
- Then { text.should respond_to :to_nato }
9
-
10
- And { text.to_nato.should == 'Alfa Eight Hotel Four Three Lima November Romeo Zero' }
8
+ Then do
9
+ expect(text.to_nato).to eq \
10
+ "Alfa Eight Hotel Four Three Lima November Romeo Zero"
11
+ end
11
12
  end
12
13
 
13
14
  describe "#to_s" do
14
- Then { text.to_s.should == ['a8h43lnr0', 'Alfa Eight Hotel Four Three Lima November Romeo Zero'] }
15
- end
15
+ Given { allow(text).to receive(:to_nato) }
16
16
 
17
- describe '#pronunciation' do
18
- Then { text.should respond_to :pronunciation }
17
+ Then do
18
+ expect(text.to_s).to eq \
19
+ "Alfa Eight Hotel Four Three Lima November Romeo Zero"
20
+ end
21
+ end
19
22
 
20
- And { text.pronunciation.should == 'AL-FAH AIT HOH-TEL FOW-ER TREE LEE-MAH NO-VEM-BER ROW-ME-OH ZEE-RO' }
23
+ describe "#pronunciation" do
24
+ Then do
25
+ expect(text.pronunciation).to eq \
26
+ "AL-FAH AIT HOH-TEL FOW-ER TREE LEE-MAH NO-VEM-BER ROW-ME-OH ZEE-RO"
27
+ end
21
28
  end
22
29
  end
23
- end
30
+ end
metadata CHANGED
@@ -1,90 +1,126 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: NATO
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lukas Alexandre
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-05-03 00:00:00.000000000 Z
11
+ date: 2015-12-31 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: os
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.9'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.9'
27
+ - !ruby/object:Gem::Dependency
28
+ name: slop
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '4.2'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '4.2'
13
41
  - !ruby/object:Gem::Dependency
14
42
  name: bundler
15
43
  requirement: !ruby/object:Gem::Requirement
16
44
  requirements:
17
- - - ~>
45
+ - - "~>"
18
46
  - !ruby/object:Gem::Version
19
- version: '1.3'
47
+ version: '1.11'
20
48
  type: :development
21
49
  prerelease: false
22
50
  version_requirements: !ruby/object:Gem::Requirement
23
51
  requirements:
24
- - - ~>
52
+ - - "~>"
25
53
  - !ruby/object:Gem::Version
26
- version: '1.3'
54
+ version: '1.11'
27
55
  - !ruby/object:Gem::Dependency
28
56
  name: rake
29
57
  requirement: !ruby/object:Gem::Requirement
30
58
  requirements:
31
- - - '>='
59
+ - - "~>"
32
60
  - !ruby/object:Gem::Version
33
- version: '0'
61
+ version: '10.4'
34
62
  type: :development
35
63
  prerelease: false
36
64
  version_requirements: !ruby/object:Gem::Requirement
37
65
  requirements:
38
- - - '>='
66
+ - - "~>"
39
67
  - !ruby/object:Gem::Version
40
- version: '0'
68
+ version: '10.4'
41
69
  - !ruby/object:Gem::Dependency
42
70
  name: rspec
43
71
  requirement: !ruby/object:Gem::Requirement
44
72
  requirements:
45
- - - '>='
73
+ - - "~>"
46
74
  - !ruby/object:Gem::Version
47
- version: '0'
75
+ version: '3'
48
76
  type: :development
49
77
  prerelease: false
50
78
  version_requirements: !ruby/object:Gem::Requirement
51
79
  requirements:
52
- - - '>='
80
+ - - "~>"
53
81
  - !ruby/object:Gem::Version
54
- version: '0'
82
+ version: '3'
55
83
  - !ruby/object:Gem::Dependency
56
84
  name: rspec-given
57
85
  requirement: !ruby/object:Gem::Requirement
58
86
  requirements:
59
- - - '>='
87
+ - - "~>"
60
88
  - !ruby/object:Gem::Version
61
- version: '0'
89
+ version: '3.7'
62
90
  type: :development
63
91
  prerelease: false
64
92
  version_requirements: !ruby/object:Gem::Requirement
65
93
  requirements:
66
- - - '>='
94
+ - - "~>"
67
95
  - !ruby/object:Gem::Version
68
- version: '0'
96
+ version: '3.7'
69
97
  description: NATO Phonetic Alphabet conversion tool
70
98
  email:
71
- - lukasalexandre@me.com
72
- executables: []
99
+ - lukas@codelogic.me
100
+ executables:
101
+ - nato
73
102
  extensions: []
74
103
  extra_rdoc_files: []
75
104
  files:
76
- - .gitignore
105
+ - ".gitignore"
106
+ - ".rspec"
107
+ - ".ruby-gemset"
108
+ - ".ruby-version"
77
109
  - Gemfile
78
110
  - LICENSE.txt
79
111
  - NATO.gemspec
80
112
  - README.md
81
113
  - Rakefile
114
+ - bin/nato
82
115
  - lib/NATO.rb
83
116
  - lib/NATO/dictionary.rb
84
117
  - lib/NATO/parser.rb
118
+ - lib/NATO/refined.rb
119
+ - lib/NATO/say.rb
85
120
  - lib/NATO/text.rb
86
121
  - lib/NATO/version.rb
87
122
  - spec/parser_spec.rb
123
+ - spec/refined_spec.rb
88
124
  - spec/spec_helper.rb
89
125
  - spec/text_spec.rb
90
126
  homepage: https://github.com/lukelex/NATO
@@ -97,21 +133,22 @@ require_paths:
97
133
  - lib
98
134
  required_ruby_version: !ruby/object:Gem::Requirement
99
135
  requirements:
100
- - - '>='
136
+ - - ">="
101
137
  - !ruby/object:Gem::Version
102
138
  version: '0'
103
139
  required_rubygems_version: !ruby/object:Gem::Requirement
104
140
  requirements:
105
- - - '>='
141
+ - - ">="
106
142
  - !ruby/object:Gem::Version
107
143
  version: '0'
108
144
  requirements: []
109
145
  rubyforge_project:
110
- rubygems_version: 2.0.2
146
+ rubygems_version: 2.5.1
111
147
  signing_key:
112
148
  specification_version: 4
113
149
  summary: NATO Phonetic Alphabet conversion tool
114
150
  test_files:
115
151
  - spec/parser_spec.rb
152
+ - spec/refined_spec.rb
116
153
  - spec/spec_helper.rb
117
154
  - spec/text_spec.rb