mac-say 0.2.0 → 0.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 691366a15525f635d6c95a206f467a75a3692f3c
4
- data.tar.gz: 19b525a7de0607f5a08759a5212c90622d066e7b
3
+ metadata.gz: e6eda8a2384074e1bb34ecd7a88da75657720e9a
4
+ data.tar.gz: fcc81dc4096ee88460cba904653218b4b0e0e916
5
5
  SHA512:
6
- metadata.gz: 299481a3cf645e1c24759a9e254e3a902c90bce1e5e3a9fe4eb3c4303b178716942de5cf5906885e64d537bcb05ac068c6d489eeb4652dfbae9a16876c340c8c
7
- data.tar.gz: 6582d02d8da76153bc33352b62fab27a3d23820a056decdafa18a29a572e2b8ac8793a97d758166fbd1cbd83180254b8ac750c1d252feb5d617dc216efaeaf0d
6
+ metadata.gz: fdf2b718734f76ef1c4918d1ad2858e0022e61dea79abe39bb38bb65f5ef8c234c5adc0cdf86d238b4b10a0732acbb76f7ad52a327c7cd32636beaa800daa957
7
+ data.tar.gz: e11e7500d77c929c337caaa97bcd14d147de4e847f3e971bf1bc62b055fbe09bd94daefeba54bf923976a74dc28547c0627307e12139d348e26f9f23c1ac273b
@@ -1,3 +1,10 @@
1
+ v0.2.1 / 2017-12-10
2
+ ===================
3
+
4
+ * Added space separated voices support (MacOS High Sierra) i.e. 'Good news', 'Bad News', 'Pipe Organ'
5
+ * Added a new unofficial voice attribute `singing` (for voices like 'Cellos')
6
+ * Added a new ar_SA voice — 'Laila'
7
+
1
8
  v0.2.0 / 2017-02-16
2
9
  ===================
3
10
 
data/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  * [Homepage](https://rubygems.org/gems/mac-say)
12
12
  * [Documentation](http://rubydoc.info/gems/mac-say/frames)
13
- * [Email](mailto:smileart21 at gmail.com)
13
+ * [Email](mailto:smileart21@gmail.com)
14
14
 
15
15
  ## Features
16
16
 
@@ -47,10 +47,11 @@ pp Mac::Say.voices.collect { |v| v[:language] }
47
47
  pp Mac::Say.voices.collect { |v| v[:sample] }
48
48
 
49
49
  # Look for voices by an attribute
50
+ pp Mac::Say.voice(:singing, true)
50
51
  pp Mac::Say.voice(:joke, false)
51
52
  pp Mac::Say.voice(:gender, :female)
52
53
 
53
- # Look for voices by a buch of attributes
54
+ # Look for voices by multiple attributes
54
55
  pp Mac::Say.voice { |v| v[:joke] == true && v[:gender] == :female }
55
56
  pp Mac::Say.voice { |v| v[:language] == :en && v[:gender] == :male && v[:quality] == :high && v[:joke] == false }
56
57
 
@@ -13,6 +13,7 @@ pp Mac::Say.voices.collect { |v| v[:language] }
13
13
  pp Mac::Say.voices.collect { |v| v[:sample] }
14
14
 
15
15
  # Look for voices by an attribute
16
+ pp Mac::Say.voice(:singing, true)
16
17
  pp Mac::Say.voice(:joke, false)
17
18
  pp Mac::Say.voice(:gender, :female)
18
19
 
@@ -10,7 +10,7 @@ module Mac
10
10
  # Allows to use simple TTS on Mac right from Ruby scripts
11
11
  class Say
12
12
  # A regex pattern to parse say voices list output
13
- VOICE_PATTERN = /(^[\w-]+)\s+([\w-]+)\s+#\s([\p{Graph}\p{Zs}]+$)/i
13
+ VOICE_PATTERN = /(^[\w\s-]+)\s+([\w-]+)\s+#\s([\p{Graph}\p{Zs}]+$)/i
14
14
 
15
15
  # An error raised when `say` command couldn't be found
16
16
  class CommandNotFound < StandardError; end
@@ -32,7 +32,8 @@ module Mac
32
32
  :sample,
33
33
  :gender,
34
34
  :joke,
35
- :quality
35
+ :quality,
36
+ :singing
36
37
  ]
37
38
 
38
39
  # Current voices list
@@ -48,7 +49,8 @@ module Mac
48
49
  # :sample => "Isn't it nice to have a computer that will talk to you?",
49
50
  # :gender => :female,
50
51
  # :joke => false,
51
- # :quality => :low
52
+ # :quality => :low,
53
+ # :singing => false
52
54
  # },
53
55
  # {
54
56
  # :name => :albert,
@@ -57,7 +59,8 @@ module Mac
57
59
  # :sample => "I have a frog in my throat. No, I mean a real frog!",
58
60
  # :gender => :male,
59
61
  # :joke => true,
60
- # :quality => :medium
62
+ # :quality => :medium,
63
+ # :singing => false
61
64
  # },
62
65
  # ...
63
66
  # ]
@@ -218,7 +221,8 @@ module Mac
218
221
  # :sample => "Isn't it nice to have a computer that will talk to you?",
219
222
  # :gender => :female,
220
223
  # :joke => false,
221
- # :quality => :low
224
+ # :quality => :low,
225
+ # :singing => false
222
226
  # },
223
227
  # {
224
228
  # :name => :albert,
@@ -227,7 +231,8 @@ module Mac
227
231
  # :sample => "I have a frog in my throat. No, I mean a real frog!",
228
232
  # :gender => :male,
229
233
  # :joke => true,
230
- # :quality => :medium
234
+ # :quality => :medium,
235
+ # :singing => false
231
236
  # },
232
237
  # ...
233
238
  # ]
@@ -293,7 +298,7 @@ module Mac
293
298
 
294
299
  @voices = `#{say_path} -v '?'`.scan(VOICE_PATTERN).map do |voice|
295
300
  lang = voice[1].split(/[_-]/)
296
- name = voice[0].downcase.to_sym
301
+ name = voice[0].strip.downcase.to_sym
297
302
 
298
303
  additional_attributes = ADDITIONAL_VOICE_ATTRIBUTES[name] || ADDITIONAL_VOICE_ATTRIBUTES[:_unknown_voice]
299
304
 
@@ -6,6 +6,6 @@ module Mac
6
6
  # Allows to use simple TTS on Mac right from Ruby scripts
7
7
  class Say
8
8
  # mac-say version
9
- VERSION = '0.2.0'
9
+ VERSION = '0.2.1'
10
10
  end
11
11
  end
@@ -10,501 +10,625 @@ ADDITIONAL_VOICE_ATTRIBUTES = {
10
10
  _unknown_voice: {
11
11
  gender: nil,
12
12
  joke: nil,
13
- quality: nil
13
+ quality: nil,
14
+ singing: nil
14
15
  },
15
16
  agnes: {
16
17
  gender: :female,
17
18
  joke: false,
18
- quality: :low
19
+ quality: :low,
20
+ singing: false
19
21
  },
20
22
  albert: {
21
23
  gender: :male,
22
24
  joke: true,
23
- quality: :medium
25
+ quality: :medium,
26
+ singing: false
24
27
  },
25
28
  alex: {
26
29
  gender: :male,
27
30
  joke: false,
28
- quality: :medium
31
+ quality: :medium,
32
+ singing: false
29
33
  },
30
34
  alice: {
31
35
  gender: :female,
32
36
  joke: false,
33
- quality: :high
37
+ quality: :high,
38
+ singing: false
34
39
  },
35
40
  allison: {
36
41
  gender: :female,
37
42
  joke: false,
38
- quality: :high
43
+ quality: :high,
44
+ singing: false
39
45
  },
40
46
  alva: {
41
47
  gender: :female,
42
48
  joke: false,
43
- quality: :low
49
+ quality: :low,
50
+ singing: false
44
51
  },
45
52
  amelie: {
46
53
  gender: :female,
47
54
  joke: false,
48
- quality: :medium
55
+ quality: :medium,
56
+ singing: false
49
57
  },
50
58
  angelica: {
51
59
  gender: :female,
52
60
  joke: false,
53
- quality: :low
61
+ quality: :low,
62
+ singing: false
54
63
  },
55
64
  anna: {
56
65
  gender: :female,
57
66
  joke: false,
58
- quality: :medium
67
+ quality: :medium,
68
+ singing: false
59
69
  },
60
70
  audrey: {
61
71
  gender: :female,
62
72
  joke: false,
63
- quality: :medium
73
+ quality: :medium,
74
+ singing: false
64
75
  },
65
76
  aurelie: {
66
77
  gender: :female,
67
78
  joke: false,
68
- quality: :medium
79
+ quality: :medium,
80
+ singing: false
69
81
  },
70
82
  ava: {
71
83
  gender: :female,
72
84
  joke: false,
73
- quality: :high
85
+ quality: :high,
86
+ singing: false
87
+ },
88
+ :'bad news' => {
89
+ gender: :male,
90
+ joke: true,
91
+ quality: :high,
92
+ singing: true
74
93
  },
75
94
  bahh: {
76
95
  gender: :male,
77
96
  joke: true,
78
- quality: :low
97
+ quality: :low,
98
+ singing: false
79
99
  },
80
100
  bells: {
81
101
  gender: :neutral,
82
102
  joke: true,
83
- quality: :medium
103
+ quality: :medium,
104
+ singing: true
84
105
  },
85
106
  boing: {
86
107
  gender: :neutral,
87
108
  joke: true,
88
- quality: :medium
109
+ quality: :medium,
110
+ singing: false
89
111
  },
90
112
  bruce: {
91
113
  gender: :male,
92
114
  joke: false,
93
- quality: :low
115
+ quality: :low,
116
+ singing: false
94
117
  },
95
118
  bubbles: {
96
119
  gender: :male,
97
120
  joke: true,
98
- quality: :medium
121
+ quality: :medium,
122
+ singing: false
99
123
  },
100
124
  carlos: {
101
125
  gender: :male,
102
126
  joke: false,
103
- quality: :high
127
+ quality: :high,
128
+ singing: false
104
129
  },
105
130
  carmit: {
106
131
  gender: :female,
107
132
  joke: false,
108
- quality: :medium
133
+ quality: :medium,
134
+ singing: false
109
135
  },
110
136
  catarina: {
111
137
  gender: :female,
112
138
  joke: false,
113
- quality: :low
139
+ quality: :low,
140
+ singing: false
114
141
  },
115
142
  cellos: {
116
143
  gender: :male,
117
144
  joke: true,
118
- quality: :medium
145
+ quality: :medium,
146
+ singing: true
119
147
  },
120
148
  cem: {
121
149
  gender: :male,
122
150
  joke: false,
123
- quality: :medium
151
+ quality: :medium,
152
+ singing: false
124
153
  },
125
154
  chantal: {
126
155
  gender: :female,
127
156
  joke: false,
128
- quality: :medium
157
+ quality: :medium,
158
+ singing: false
129
159
  },
130
160
  claire: {
131
161
  gender: :female,
132
162
  joke: false,
133
- quality: :medium
163
+ quality: :medium,
164
+ singing: false
134
165
  },
135
166
  damayanti: {
136
167
  gender: :female,
137
168
  joke: false,
138
- quality: :medium
169
+ quality: :medium,
170
+ singing: false
139
171
  },
140
172
  daniel: {
141
173
  gender: :male,
142
174
  joke: false,
143
- quality: :high
175
+ quality: :high,
176
+ singing: false
144
177
  },
145
178
  deranged: {
146
179
  gender: :neutral,
147
180
  joke: true,
148
- quality: :medium
181
+ quality: :medium,
182
+ singing: false
149
183
  },
150
184
  diego: {
151
185
  gender: :male,
152
186
  joke: false,
153
- quality: :low
187
+ quality: :low,
188
+ singing: false
154
189
  },
155
190
  ellen: {
156
191
  gender: :female,
157
192
  joke: false,
158
- quality: :low
193
+ quality: :low,
194
+ singing: false
159
195
  },
160
196
  ewa: {
161
197
  gender: :female,
162
198
  joke: false,
163
- quality: :medium
199
+ quality: :medium,
200
+ singing: false
164
201
  },
165
202
  federica: {
166
203
  gender: :female,
167
204
  joke: false,
168
- quality: :medium
205
+ quality: :medium,
206
+ singing: false
169
207
  },
170
208
  felipe: {
171
209
  gender: :male,
172
210
  joke: false,
173
- quality: :medium
211
+ quality: :medium,
212
+ singing: false
174
213
  },
175
214
  fiona: {
176
215
  gender: :female,
177
216
  joke: false,
178
- quality: :high
217
+ quality: :high,
218
+ singing: false
179
219
  },
180
220
  fred: {
181
221
  gender: :male,
182
222
  joke: true,
183
- quality: :low
223
+ quality: :low,
224
+ singing: false
225
+ },
226
+ :'good news' => {
227
+ gender: :male,
228
+ joke: true,
229
+ quality: :high,
230
+ singing: true
184
231
  },
185
232
  henrik: {
186
233
  gender: :male,
187
234
  joke: false,
188
- quality: :high
235
+ quality: :high,
236
+ singing: false
189
237
  },
190
238
  hysterical: {
191
239
  gender: :male,
192
240
  joke: true,
193
- quality: :medium
241
+ quality: :medium,
242
+ singing: false
194
243
  },
195
244
  ioana: {
196
245
  gender: :female,
197
246
  joke: false,
198
- quality: :low
247
+ quality: :low,
248
+ singing: false
199
249
  },
200
250
  iveta: {
201
251
  gender: :female,
202
252
  joke: false,
203
- quality: :low
253
+ quality: :low,
254
+ singing: false
204
255
  },
205
256
  joana: {
206
257
  gender: :female,
207
258
  joke: false,
208
- quality: :low
259
+ quality: :low,
260
+ singing: false
209
261
  },
210
262
  jorge: {
211
263
  gender: :male,
212
264
  joke: false,
213
- quality: :low
265
+ quality: :low,
266
+ singing: false
214
267
  },
215
268
  juan: {
216
269
  gender: :male,
217
270
  joke: false,
218
- quality: :medium
271
+ quality: :medium,
272
+ singing: false
219
273
  },
220
274
  junior: {
221
275
  gender: :male,
222
276
  joke: true,
223
- quality: :low
277
+ quality: :low,
278
+ singing: false
224
279
  },
225
280
  kanya: {
226
281
  gender: :female,
227
282
  joke: false,
228
- quality: :medium
283
+ quality: :medium,
284
+ singing: false
229
285
  },
230
286
  karen: {
231
287
  gender: :female,
232
288
  joke: false,
233
- quality: :high
289
+ quality: :high,
290
+ singing: false
234
291
  },
235
292
  kate: {
236
293
  gender: :female,
237
294
  joke: false,
238
- quality: :high
295
+ quality: :high,
296
+ singing: false
239
297
  },
240
298
  kathy: {
241
299
  gender: :female,
242
300
  joke: true,
243
- quality: :low
301
+ quality: :low,
302
+ singing: false
244
303
  },
245
304
  katya: {
246
305
  gender: :female,
247
306
  joke: false,
248
- quality: :medium
307
+ quality: :medium,
308
+ singing: false
249
309
  },
250
310
  klara: {
251
311
  gender: :female,
252
312
  joke: false,
253
- quality: :low
313
+ quality: :low,
314
+ singing: false
254
315
  },
255
316
  kyoko: {
256
317
  gender: :female,
257
318
  joke: false,
258
- quality: :low
319
+ quality: :low,
320
+ singing: false
321
+ },
322
+ laila: {
323
+ gender: :female,
324
+ joke: false,
325
+ quality: :medium,
326
+ singing: false
259
327
  },
260
328
  laura: {
261
329
  gender: :female,
262
330
  joke: false,
263
- quality: :low
331
+ quality: :low,
332
+ singing: false
264
333
  },
265
334
  lee: {
266
335
  gender: :male,
267
336
  joke: false,
268
- quality: :high
337
+ quality: :high,
338
+ singing: false
269
339
  },
270
340
  lekha: {
271
341
  gender: :female,
272
342
  joke: false,
273
- quality: :low
343
+ quality: :low,
344
+ singing: false
274
345
  },
275
346
  luca: {
276
347
  gender: :male,
277
348
  joke: false,
278
- quality: :high
349
+ quality: :high,
350
+ singing: false
279
351
  },
280
352
  luciana: {
281
353
  gender: :female,
282
354
  joke: false,
283
- quality: :low
355
+ quality: :low,
356
+ singing: false
284
357
  },
285
358
  maged: {
286
359
  gender: :male,
287
360
  joke: false,
288
- quality: :low
361
+ quality: :low,
362
+ singing: false
289
363
  },
290
364
  magnus: {
291
365
  gender: :male,
292
366
  joke: false,
293
- quality: :medium
367
+ quality: :medium,
368
+ singing: false
294
369
  },
295
370
  mariska: {
296
371
  gender: :female,
297
372
  joke: false,
298
- quality: :medium
373
+ quality: :medium,
374
+ singing: false
299
375
  },
300
376
  markus: {
301
377
  gender: :male,
302
378
  joke: false,
303
- quality: :low
379
+ quality: :low,
380
+ singing: false
304
381
  },
305
382
  :'mei-jia' => {
306
383
  gender: :female,
307
384
  joke: false,
308
- quality: :medium
385
+ quality: :medium,
386
+ singing: false
309
387
  },
310
388
  melina: {
311
389
  gender: :female,
312
390
  joke: false,
313
- quality: :low
391
+ quality: :low,
392
+ singing: false
314
393
  },
315
394
  milena: {
316
395
  gender: :female,
317
396
  joke: false,
318
- quality: :medium
397
+ quality: :medium,
398
+ singing: false
319
399
  },
320
400
  moira: {
321
401
  gender: :female,
322
402
  joke: false,
323
- quality: :medium
403
+ quality: :medium,
404
+ singing: false
324
405
  },
325
406
  monica: {
326
407
  gender: :female,
327
408
  joke: false,
328
- quality: :medium
409
+ quality: :medium,
410
+ singing: false
329
411
  },
330
412
  nicolas: {
331
413
  gender: :male,
332
414
  joke: false,
333
- quality: :high
415
+ quality: :high,
416
+ singing: false
334
417
  },
335
418
  nikos: {
336
419
  gender: :male,
337
420
  joke: false,
338
- quality: :medium
421
+ quality: :medium,
422
+ singing: false
339
423
  },
340
424
  nora: {
341
425
  gender: :female,
342
426
  joke: false,
343
- quality: :low
427
+ quality: :low,
428
+ singing: false
344
429
  },
345
430
  oliver: {
346
431
  gender: :male,
347
432
  joke: false,
348
- quality: :low
433
+ quality: :low,
434
+ singing: false
349
435
  },
350
436
  oskar: {
351
437
  gender: :male,
352
438
  joke: false,
353
- quality: :medium
439
+ quality: :medium,
440
+ singing: false
354
441
  },
355
442
  otoya: {
356
443
  gender: :male,
357
444
  joke: false,
358
- quality: :medium
445
+ quality: :medium,
446
+ singing: false
359
447
  },
360
448
  paola: {
361
449
  gender: :female,
362
450
  joke: false,
363
- quality: :high
451
+ quality: :high,
452
+ singing: false
364
453
  },
365
454
  paulina: {
366
455
  gender: :female,
367
456
  joke: false,
368
- quality: :low
457
+ quality: :low,
458
+ singing: false
369
459
  },
370
460
  petra: {
371
461
  gender: :female,
372
462
  joke: false,
373
- quality: :medium
463
+ quality: :medium,
464
+ singing: false
465
+ },
466
+ :'pipe organ' => {
467
+ gender: :male,
468
+ joke: true,
469
+ quality: :high,
470
+ singing: true
374
471
  },
375
472
  princess: {
376
473
  gender: :female,
377
474
  joke: true,
378
- quality: :low
475
+ quality: :low,
476
+ singing: false
379
477
  },
380
478
  ralph: {
381
479
  gender: :male,
382
480
  joke: true,
383
- quality: :low
481
+ quality: :low,
482
+ singing: false
384
483
  },
385
484
  samantha: {
386
485
  gender: :female,
387
486
  joke: false,
388
- quality: :high
487
+ quality: :high,
488
+ singing: false
389
489
  },
390
490
  sara: {
391
491
  gender: :female,
392
492
  joke: false,
393
- quality: :medium
493
+ quality: :medium,
494
+ singing: false
394
495
  },
395
496
  satu: {
396
497
  gender: :female,
397
498
  joke: false,
398
- quality: :medium
499
+ quality: :medium,
500
+ singing: false
399
501
  },
400
502
  serena: {
401
503
  gender: :female,
402
504
  joke: false,
403
- quality: :medium
505
+ quality: :medium,
506
+ singing: false
404
507
  },
405
508
  :'sin-ji' => {
406
509
  gender: :female,
407
510
  joke: false,
408
- quality: :medium
511
+ quality: :medium,
512
+ singing: false
409
513
  },
410
514
  soledad: {
411
515
  gender: :female,
412
516
  joke: false,
413
- quality: :medium
517
+ quality: :medium,
518
+ singing: false
414
519
  },
415
520
  susan: {
416
521
  gender: :female,
417
522
  joke: false,
418
- quality: :medium
523
+ quality: :medium,
524
+ singing: false
419
525
  },
420
526
  tarik: {
421
527
  gender: :male,
422
528
  joke: false,
423
- quality: :low
529
+ quality: :low,
530
+ singing: false
424
531
  },
425
532
  tessa: {
426
533
  gender: :female,
427
534
  joke: false,
428
- quality: :high
535
+ quality: :high,
536
+ singing: false
429
537
  },
430
538
  thomas: {
431
539
  gender: :male,
432
540
  joke: false,
433
- quality: :high
541
+ quality: :high,
542
+ singing: false
434
543
  },
435
544
  :'ting-ting' => {
436
545
  gender: :female,
437
546
  joke: false,
438
- quality: :high
547
+ quality: :high,
548
+ singing: false
439
549
  },
440
550
  tom: {
441
551
  gender: :male,
442
552
  joke: false,
443
- quality: :high
553
+ quality: :high,
554
+ singing: false
444
555
  },
445
556
  trinoids: {
446
557
  gender: :neutral,
447
558
  joke: true,
448
- quality: :medium
559
+ quality: :medium,
560
+ singing: false
449
561
  },
450
562
  veena: {
451
563
  gender: :female,
452
564
  joke: false,
453
- quality: :high
565
+ quality: :high,
566
+ singing: false
454
567
  },
455
568
  vicki: {
456
569
  gender: :female,
457
570
  joke: false,
458
- quality: :low
571
+ quality: :low,
572
+ singing: false
459
573
  },
460
574
  victoria: {
461
575
  gender: :female,
462
576
  joke: false,
463
- quality: :low
577
+ quality: :low,
578
+ singing: false
464
579
  },
465
580
  whisper: {
466
581
  gender: :male,
467
582
  joke: true,
468
- quality: :medium
583
+ quality: :medium,
584
+ singing: false
469
585
  },
470
586
  xander: {
471
587
  gender: :male,
472
588
  joke: false,
473
- quality: :high
589
+ quality: :high,
590
+ singing: false
474
591
  },
475
592
  yannick: {
476
593
  gender: :male,
477
594
  joke: false,
478
- quality: :medium
595
+ quality: :medium,
596
+ singing: false
479
597
  },
480
598
  yelda: {
481
599
  gender: :female,
482
600
  joke: false,
483
- quality: :low
601
+ quality: :low,
602
+ singing: false
484
603
  },
485
604
  yuna: {
486
605
  gender: :female,
487
606
  joke: false,
488
- quality: :medium
607
+ quality: :medium,
608
+ singing: false
489
609
  },
490
610
  yuri: {
491
611
  gender: :male,
492
612
  joke: false,
493
- quality: :low
613
+ quality: :low,
614
+ singing: false
494
615
  },
495
616
  zarvox: {
496
617
  gender: :neutral,
497
618
  joke: true,
498
- quality: :medium
619
+ quality: :medium,
620
+ singing: false
499
621
  },
500
622
  zosia: {
501
623
  gender: :female,
502
624
  joke: false,
503
- quality: :low
625
+ quality: :low,
626
+ singing: false
504
627
  },
505
628
  zuzana: {
506
629
  gender: :female,
507
630
  joke: false,
508
- quality: :high
631
+ quality: :high,
632
+ singing: false
509
633
  }
510
634
  }.freeze
@@ -50,6 +50,8 @@ describe 'Mac::Say as a macOS `say` wrapper' do
50
50
  voice.must_be_kind_of Hash
51
51
  end
52
52
 
53
+ # For this test to pass you'd have to have more than
54
+ # one British voice on your machine!
53
55
  it '.voice must return an Array of voices if > 1' do
54
56
  voices = Mac::Say.voice(:country, :gb)
55
57
  voices.must_be_kind_of Array
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mac-say
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Serge Bedzhyk
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-16 00:00:00.000000000 Z
11
+ date: 2017-12-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -230,7 +230,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
230
230
  version: '0'
231
231
  requirements: []
232
232
  rubyforge_project:
233
- rubygems_version: 2.5.2
233
+ rubygems_version: 2.6.11
234
234
  signing_key:
235
235
  specification_version: 4
236
236
  summary: Ruby wrapper around the macOS `say` command