cw 0.3.0 → 0.3.1

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.
@@ -23,6 +23,7 @@ module CWG
23
23
  end
24
24
 
25
25
  def generate wrds
26
+
26
27
  word_parts(wrds)
27
28
  # progress.init elements.size * 3 + (wrds.size)
28
29
  create_element_methods
@@ -31,7 +32,7 @@ module CWG
31
32
  end
32
33
 
33
34
  def play_filename
34
- File.join(AUDIO,Cfg.config["audio_filename"])
35
+ @play_filename ||= File.join(audio_dir, audio_filename)
35
36
  end
36
37
 
37
38
  def play
@@ -49,16 +50,16 @@ module CWG
49
50
 
50
51
  def data
51
52
  { :dot => {:name => :dot,
52
- :filename => DOT_FILENAME,
53
+ :filename => dot_path,
53
54
  :spb => (@sample_rate * 1.2 / @wpm).to_i },
54
55
  :dash => {:name => :dash,
55
- :filename => DASH_FILENAME,
56
+ :filename => dash_path,
56
57
  :spb => (@sample_rate * 3.6 / @wpm).to_i },
57
58
  :space => {:name => :space,
58
- :filename => SPACE_FILENAME ,
59
+ :filename => space_path,
59
60
  :spb => (@sample_rate * 1.2 / @wpm).to_i },
60
61
  :e_space => {:name => :e_space,
61
- :filename => E_SPACE_FILENAME ,
62
+ :filename => e_space_path,
62
63
  :spb => (@sample_rate * 1.2 / @effective_wpm).to_i }}
63
64
  end
64
65
 
@@ -105,7 +106,6 @@ module CWG
105
106
 
106
107
  def create_element_methods
107
108
  elements.each do |ele|
108
- # progress.increment
109
109
  create_element_method ele
110
110
  end
111
111
  end
@@ -117,7 +117,6 @@ module CWG
117
117
 
118
118
  def compile_fundamentals
119
119
  elements.each do |ele|
120
- # progress.increment
121
120
  audio_samples = generate_samples ele
122
121
  buffer = generate_buffer(audio_samples, ele)
123
122
  write_element_audio_file ele, buffer
@@ -154,11 +153,9 @@ module CWG
154
153
  @word_parts
155
154
  end
156
155
 
157
-
158
156
  def make_word_parts
159
157
  parts = []
160
158
  @word_parts.each do |part|
161
- # progress.increment
162
159
  parts += send_char part.downcase
163
160
  end
164
161
  parts
@@ -167,7 +164,6 @@ module CWG
167
164
  def prepare_buffers
168
165
  @buffers = {}
169
166
  elements.each do |ele|
170
- # progress.increment
171
167
  @buffers[ele] = []
172
168
  WaveFile::Reader.new(data[ele][:filename]).
173
169
  each_buffer(data[ele][:spb]) do |buffer|
@@ -201,7 +197,6 @@ module CWG
201
197
  :pcm_16,
202
198
  @sample_rate)) do |writer|
203
199
  yield.each do |char|
204
- # progress.increment
205
200
  char.each do |fta|
206
201
  writer.write(@buffers[fta[:name]])
207
202
  end
@@ -89,7 +89,7 @@ module CWG
89
89
  end
90
90
 
91
91
  def count word_count
92
- @words = @words.take(word_count)
92
+ @words = @words.take(word_count.to_i)
93
93
  end
94
94
 
95
95
  def including_letter(letr)
@@ -8,7 +8,7 @@ class RunScriptTests
8
8
  NO_RSS_FEED = DEBUG ? true : false
9
9
  PATH_TO_CW_SCRIPTS = '/Users/martyn/jekyll/documentation-theme-jekyll/cw_scripts'
10
10
  ROOT = '/Users/martyn/cw/cw_clone'
11
- PROGRESS_FILE = "data/text/progress.txt"
11
+ PROGRESS_FILE = ".cw/bookmark.txt"
12
12
  DB = Sequel.sqlite(File.join(ROOT, 'test.sqlite')) unless(TEST_ON_MEMORY_DATABASE)
13
13
  DB = Sequel.sqlite if(TEST_ON_MEMORY_DATABASE)
14
14
 
@@ -35,18 +35,6 @@ class TestConfig < MiniTest::Test
35
35
  assert_equal "25", CWG::Cfg.config["wpm"]
36
36
  end
37
37
 
38
- def test_book_name_default
39
- assert_equal "book.txt", CWG::Cfg.config["book_name"]
40
- end
41
-
42
- def test_book_dir_default
43
- assert_equal "data/text/", CWG::Cfg.config["book_dir"]
44
- end
45
-
46
- # def test_play_command_default
47
- # assert_equal "/usr/bin/afplay", CWG::Cfg.config["play_command"]
48
- # end
49
-
50
38
  def test_success_colour_default
51
39
  assert_equal "green", CWG::Cfg.config["success_colour"]
52
40
  end
@@ -67,14 +55,6 @@ class TestConfig < MiniTest::Test
67
55
  assert_equal "test_letters", CWG::Cfg.config["run_default"]
68
56
  end
69
57
 
70
- def test_dictionary_dir_default
71
- assert_equal "data/text/", CWG::Cfg.config["dictionary_dir"]
72
- end
73
-
74
- def test_dictionary_name_default
75
- assert_equal "english.txt", CWG::Cfg.config["dictionary_name"]
76
- end
77
-
78
58
  def test_accessing_unknown_method_returns_nil
79
59
  refute CWG::Cfg.config["unknown"]
80
60
  end
@@ -408,18 +408,18 @@ Ending: x
408
408
 
409
409
  def test_set_N_param_in_noise_mode
410
410
  @cw.noise
411
- assert @cw.instance_variable_get('@cl').cl_noise.include?('-N 5 '), 'noise N param invalid'
411
+ assert @cw.instance_variable_get('@cl').cl_noise.include?('-N 10 '), 'noise N param invalid'
412
412
  end
413
413
 
414
414
  def test_set_B_param_in_noise_mode
415
415
  @cw.noise
416
- assert @cw.instance_variable_get('@cl').cl_noise.include?('-B 1000 '), 'noise B param invalid'
416
+ assert @cw.instance_variable_get('@cl').cl_noise.include?('-B 800 '), 'noise B param invalid'
417
417
  end
418
418
 
419
- def test_set_default_filename
420
- assert @cw.instance_variable_get('@cl').cl_audio_filename.
421
- include?('audio_output'), 'default audio output filename invalid'
422
- end
419
+ # def test_set_default_filename
420
+ # assert @cw.instance_variable_get('@cl').cl_audio_filename.
421
+ # include?('audio_output'), 'default audio output filename invalid'
422
+ # end
423
423
 
424
424
  def test_set_audio_filename_to_given_name
425
425
  @cw.audio_filename('some name')
@@ -457,14 +457,14 @@ Ending: x
457
457
  include?( '-x "some custom command"'), 'custom command invalid'
458
458
  end
459
459
 
460
- def test_cl_echo_returns_correct_string
461
- str = ''
462
- CW.new do
463
- str = @cl.cl_echo('some words')
464
- no_run
465
- end
466
- assert str.include?('some words')
467
- end
460
+ # def test_cl_echo_returns_correct_string
461
+ # str = ''
462
+ # CW.new do
463
+ # str = @cl.cl_echo('some words')
464
+ # no_run
465
+ # end
466
+ # assert str.include?('some words')
467
+ # end
468
468
 
469
469
  def test_words_exist
470
470
  temp = nil
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cw
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martyn Jago
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 4.1.0
89
+ version: 4.2.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 4.1.0
96
+ version: 4.2.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: wavefile
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -196,30 +196,30 @@ dependencies:
196
196
  name: sequel
197
197
  requirement: !ruby/object:Gem::Requirement
198
198
  requirements:
199
- - - ">="
199
+ - - "~>"
200
200
  - !ruby/object:Gem::Version
201
- version: '0'
201
+ version: 4.38.0
202
202
  type: :development
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
- - - ">="
206
+ - - "~>"
207
207
  - !ruby/object:Gem::Version
208
- version: '0'
208
+ version: 4.38.0
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: sqlite3
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
- - - ">="
213
+ - - "~>"
214
214
  - !ruby/object:Gem::Version
215
- version: '0'
215
+ version: 1.3.11
216
216
  type: :development
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
- - - ">="
220
+ - - "~>"
221
221
  - !ruby/object:Gem::Version
222
- version: '0'
222
+ version: 1.3.11
223
223
  description: A ruby library to help learn and practice morse code
224
224
  email:
225
225
  - martyn.jago@btinternet.com
@@ -241,7 +241,14 @@ files:
241
241
  - Vagrantfile
242
242
  - audio/.gitkeep
243
243
  - bin/cw
244
+ - calculator.rb
245
+ - chart.rb
246
+ - chart2.rb
247
+ - chart3.rb
248
+ - chart4.rb
244
249
  - cw.gemspec
250
+ - data/callsign/callsign.yaml
251
+ - data/code/code.yaml
245
252
  - data/text/abbreviations.txt
246
253
  - data/text/book.txt
247
254
  - data/text/book_to_read.txt
@@ -256,6 +263,7 @@ files:
256
263
  - lib/cw/audio_player.rb
257
264
  - lib/cw/book.rb
258
265
  - lib/cw/book_details.rb
266
+ - lib/cw/callsign.rb
259
267
  - lib/cw/cl.rb
260
268
  - lib/cw/common_words.rb
261
269
  - lib/cw/config.rb
@@ -274,6 +282,7 @@ files:
274
282
  - lib/cw/process.rb
275
283
  - lib/cw/progress.rb
276
284
  - lib/cw/randomize.rb
285
+ - lib/cw/read.rb
277
286
  - lib/cw/repeat_word.rb
278
287
  - lib/cw/reveal.rb
279
288
  - lib/cw/rss.rb