ruby_speech 2.1.2 → 2.2.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 +4 -4
- data/.travis.yml +1 -2
- data/CHANGELOG.md +8 -0
- data/README.md +23 -0
- data/ext/ruby_speech/extconf.rb +3 -1
- data/ext/ruby_speech/ruby_speech.c +4 -1
- data/lib/ruby_speech.rb +6 -19
- data/lib/ruby_speech/generic_element.rb +141 -29
- data/lib/ruby_speech/grxml.rb +16 -22
- data/lib/ruby_speech/grxml/element.rb +6 -6
- data/lib/ruby_speech/grxml/grammar.rb +29 -12
- data/lib/ruby_speech/grxml/item.rb +13 -0
- data/lib/ruby_speech/grxml/matcher.rb +5 -1
- data/lib/ruby_speech/grxml/one_of.rb +4 -0
- data/lib/ruby_speech/grxml/rule.rb +10 -0
- data/lib/ruby_speech/grxml/token.rb +3 -0
- data/lib/ruby_speech/nlsml.rb +3 -9
- data/lib/ruby_speech/ssml.rb +20 -22
- data/lib/ruby_speech/ssml/audio.rb +17 -0
- data/lib/ruby_speech/ssml/desc.rb +4 -0
- data/lib/ruby_speech/ssml/element.rb +5 -3
- data/lib/ruby_speech/ssml/emphasis.rb +17 -0
- data/lib/ruby_speech/ssml/mark.rb +2 -0
- data/lib/ruby_speech/ssml/p.rb +21 -0
- data/lib/ruby_speech/ssml/phoneme.rb +2 -0
- data/lib/ruby_speech/ssml/prosody.rb +15 -0
- data/lib/ruby_speech/ssml/s.rb +20 -0
- data/lib/ruby_speech/ssml/say_as.rb +2 -0
- data/lib/ruby_speech/ssml/speak.rb +19 -1
- data/lib/ruby_speech/ssml/sub.rb +2 -0
- data/lib/ruby_speech/ssml/voice.rb +19 -0
- data/lib/ruby_speech/version.rb +1 -1
- data/ruby_speech.gemspec +2 -3
- data/spec/ruby_speech/grxml/grammar_spec.rb +35 -30
- data/spec/ruby_speech/grxml/item_spec.rb +8 -6
- data/spec/ruby_speech/grxml/one_of_spec.rb +7 -3
- data/spec/ruby_speech/grxml/rule_spec.rb +14 -12
- data/spec/ruby_speech/grxml/ruleref_spec.rb +5 -3
- data/spec/ruby_speech/grxml/tag_spec.rb +6 -2
- data/spec/ruby_speech/grxml/token_spec.rb +6 -2
- data/spec/ruby_speech/grxml_spec.rb +57 -69
- data/spec/ruby_speech/ssml/audio_spec.rb +20 -16
- data/spec/ruby_speech/ssml/break_spec.rb +14 -10
- data/spec/ruby_speech/ssml/desc_spec.rb +9 -5
- data/spec/ruby_speech/ssml/emphasis_spec.rb +17 -13
- data/spec/ruby_speech/ssml/mark_spec.rb +7 -3
- data/spec/ruby_speech/ssml/p_spec.rb +18 -14
- data/spec/ruby_speech/ssml/phoneme_spec.rb +10 -6
- data/spec/ruby_speech/ssml/prosody_spec.rb +29 -25
- data/spec/ruby_speech/ssml/s_spec.rb +17 -13
- data/spec/ruby_speech/ssml/say_as_spec.rb +11 -7
- data/spec/ruby_speech/ssml/speak_spec.rb +48 -32
- data/spec/ruby_speech/ssml/sub_spec.rb +9 -5
- data/spec/ruby_speech/ssml/voice_spec.rb +23 -19
- data/spec/ruby_speech/ssml_spec.rb +64 -63
- data/spec/spec_helper.rb +0 -3
- metadata +10 -31
- data/lib/ruby_speech/xml.rb +0 -11
@@ -3,10 +3,14 @@ require 'spec_helper'
|
|
3
3
|
module RubySpeech
|
4
4
|
module SSML
|
5
5
|
describe Desc do
|
6
|
+
let(:doc) { Nokogiri::XML::Document.new }
|
7
|
+
|
8
|
+
subject { described_class.new doc }
|
9
|
+
|
6
10
|
its(:name) { should == 'desc' }
|
7
11
|
|
8
12
|
describe "setting options in initializers" do
|
9
|
-
subject { Desc.new :language => 'foo' }
|
13
|
+
subject { Desc.new doc, :language => 'foo' }
|
10
14
|
|
11
15
|
its(:language) { should == 'foo' }
|
12
16
|
end
|
@@ -27,18 +31,18 @@ module RubySpeech
|
|
27
31
|
|
28
32
|
describe "comparing objects" do
|
29
33
|
it "should be equal if the content and language are the same" do
|
30
|
-
Desc.new(:language => 'jp', :content => "Hello there").should == Desc.new(:language => 'jp', :content => "Hello there")
|
34
|
+
Desc.new(doc, :language => 'jp', :content => "Hello there").should == Desc.new(doc, :language => 'jp', :content => "Hello there")
|
31
35
|
end
|
32
36
|
|
33
37
|
describe "when the content is different" do
|
34
38
|
it "should not be equal" do
|
35
|
-
Desc.new(:content => "Hello").should_not == Desc.new(:content => "Hello there")
|
39
|
+
Desc.new(doc, :content => "Hello").should_not == Desc.new(doc, :content => "Hello there")
|
36
40
|
end
|
37
41
|
end
|
38
42
|
|
39
43
|
describe "when the language is different" do
|
40
44
|
it "should not be equal" do
|
41
|
-
Desc.new(:language => 'jp').should_not == Desc.new(:language => 'en')
|
45
|
+
Desc.new(doc, :language => 'jp').should_not == Desc.new(doc, :language => 'en')
|
42
46
|
end
|
43
47
|
end
|
44
48
|
end
|
@@ -49,7 +53,7 @@ module RubySpeech
|
|
49
53
|
end
|
50
54
|
|
51
55
|
it "should raise InvalidChildError with non-acceptable objects" do
|
52
|
-
lambda { subject << Voice.new }.should raise_error(InvalidChildError, "A Desc can only accept Strings as children")
|
56
|
+
lambda { subject << Voice.new(doc) }.should raise_error(InvalidChildError, "A Desc can only accept Strings as children")
|
53
57
|
end
|
54
58
|
end
|
55
59
|
end # Desc
|
@@ -3,10 +3,14 @@ require 'spec_helper'
|
|
3
3
|
module RubySpeech
|
4
4
|
module SSML
|
5
5
|
describe Emphasis do
|
6
|
+
let(:doc) { Nokogiri::XML::Document.new }
|
7
|
+
|
8
|
+
subject { described_class.new doc }
|
9
|
+
|
6
10
|
its(:name) { should == 'emphasis' }
|
7
11
|
|
8
12
|
describe "setting options in initializers" do
|
9
|
-
subject { Emphasis.new :level => :strong }
|
13
|
+
subject { Emphasis.new doc, :level => :strong }
|
10
14
|
|
11
15
|
its(:level) { should == :strong }
|
12
16
|
end
|
@@ -44,18 +48,18 @@ module RubySpeech
|
|
44
48
|
|
45
49
|
describe "comparing objects" do
|
46
50
|
it "should be equal if the content and level are the same" do
|
47
|
-
Emphasis.new(:level => :strong, :content => "Hello there").should == Emphasis.new(:level => :strong, :content => "Hello there")
|
51
|
+
Emphasis.new(doc, :level => :strong, :content => "Hello there").should == Emphasis.new(doc, :level => :strong, :content => "Hello there")
|
48
52
|
end
|
49
53
|
|
50
54
|
describe "when the content is different" do
|
51
55
|
it "should not be equal" do
|
52
|
-
Emphasis.new(:content => "Hello").should_not == Emphasis.new(:content => "Hello there")
|
56
|
+
Emphasis.new(doc, :content => "Hello").should_not == Emphasis.new(doc, :content => "Hello there")
|
53
57
|
end
|
54
58
|
end
|
55
59
|
|
56
60
|
describe "when the level is different" do
|
57
61
|
it "should not be equal" do
|
58
|
-
Emphasis.new(:level => :strong).should_not == Emphasis.new(:level => :reduced)
|
62
|
+
Emphasis.new(doc, :level => :strong).should_not == Emphasis.new(doc, :level => :reduced)
|
59
63
|
end
|
60
64
|
end
|
61
65
|
end
|
@@ -66,39 +70,39 @@ module RubySpeech
|
|
66
70
|
end
|
67
71
|
|
68
72
|
it "should accept Audio" do
|
69
|
-
lambda { subject << Audio.new }.should_not raise_error
|
73
|
+
lambda { subject << Audio.new(doc) }.should_not raise_error
|
70
74
|
end
|
71
75
|
|
72
76
|
it "should accept Break" do
|
73
|
-
lambda { subject << Break.new }.should_not raise_error
|
77
|
+
lambda { subject << Break.new(doc) }.should_not raise_error
|
74
78
|
end
|
75
79
|
|
76
80
|
it "should accept Emphasis" do
|
77
|
-
lambda { subject << Emphasis.new }.should_not raise_error
|
81
|
+
lambda { subject << Emphasis.new(doc) }.should_not raise_error
|
78
82
|
end
|
79
83
|
|
80
84
|
it "should accept Mark" do
|
81
|
-
lambda { subject << Mark.new }.should_not raise_error
|
85
|
+
lambda { subject << Mark.new(doc) }.should_not raise_error
|
82
86
|
end
|
83
87
|
|
84
88
|
it "should accept Phoneme" do
|
85
|
-
lambda { subject << Phoneme.new }.should_not raise_error
|
89
|
+
lambda { subject << Phoneme.new(doc) }.should_not raise_error
|
86
90
|
end
|
87
91
|
|
88
92
|
it "should accept Prosody" do
|
89
|
-
lambda { subject << Prosody.new }.should_not raise_error
|
93
|
+
lambda { subject << Prosody.new(doc) }.should_not raise_error
|
90
94
|
end
|
91
95
|
|
92
96
|
it "should accept SayAs" do
|
93
|
-
lambda { subject << SayAs.new(:interpret_as => :foo) }.should_not raise_error
|
97
|
+
lambda { subject << SayAs.new(doc, :interpret_as => :foo) }.should_not raise_error
|
94
98
|
end
|
95
99
|
|
96
100
|
it "should accept Sub" do
|
97
|
-
lambda { subject << Sub.new }.should_not raise_error
|
101
|
+
lambda { subject << Sub.new(doc) }.should_not raise_error
|
98
102
|
end
|
99
103
|
|
100
104
|
it "should accept Voice" do
|
101
|
-
lambda { subject << Voice.new }.should_not raise_error
|
105
|
+
lambda { subject << Voice.new(doc) }.should_not raise_error
|
102
106
|
end
|
103
107
|
|
104
108
|
it "should raise InvalidChildError with non-acceptable objects" do
|
@@ -3,10 +3,14 @@ require 'spec_helper'
|
|
3
3
|
module RubySpeech
|
4
4
|
module SSML
|
5
5
|
describe Mark do
|
6
|
+
let(:doc) { Nokogiri::XML::Document.new }
|
7
|
+
|
8
|
+
subject { described_class.new doc }
|
9
|
+
|
6
10
|
its(:node_name) { should == 'mark' }
|
7
11
|
|
8
12
|
describe "setting options in initializers" do
|
9
|
-
subject { Mark.new :name => 'foo' }
|
13
|
+
subject { Mark.new doc, :name => 'foo' }
|
10
14
|
|
11
15
|
its(:name) { should == 'foo' }
|
12
16
|
end
|
@@ -39,12 +43,12 @@ module RubySpeech
|
|
39
43
|
|
40
44
|
describe "comparing objects" do
|
41
45
|
it "should be equal if the name is the same" do
|
42
|
-
Mark.new(:name => "foo").should == Mark.new(:name => "foo")
|
46
|
+
Mark.new(doc, :name => "foo").should == Mark.new(doc, :name => "foo")
|
43
47
|
end
|
44
48
|
|
45
49
|
describe "when the name is different" do
|
46
50
|
it "should not be equal" do
|
47
|
-
Mark.new(:name => "foo").should_not == Mark.new(:name => "bar")
|
51
|
+
Mark.new(doc, :name => "foo").should_not == Mark.new(doc, :name => "bar")
|
48
52
|
end
|
49
53
|
end
|
50
54
|
end
|
@@ -3,10 +3,14 @@ require 'spec_helper'
|
|
3
3
|
module RubySpeech
|
4
4
|
module SSML
|
5
5
|
describe P do
|
6
|
+
let(:doc) { Nokogiri::XML::Document.new }
|
7
|
+
|
8
|
+
subject { described_class.new doc }
|
9
|
+
|
6
10
|
its(:name) { should == 'p' }
|
7
11
|
|
8
12
|
describe "setting options in initializers" do
|
9
|
-
subject { P.new :language => 'jp' }
|
13
|
+
subject { P.new doc, :language => 'jp' }
|
10
14
|
|
11
15
|
its(:language) { should == 'jp' }
|
12
16
|
end
|
@@ -26,18 +30,18 @@ module RubySpeech
|
|
26
30
|
|
27
31
|
describe "comparing objects" do
|
28
32
|
it "should be equal if the content and language are the same" do
|
29
|
-
P.new(:language => 'jp', :content => "Hello there").should == P.new(:language => 'jp', :content => "Hello there")
|
33
|
+
P.new(doc, :language => 'jp', :content => "Hello there").should == P.new(doc, :language => 'jp', :content => "Hello there")
|
30
34
|
end
|
31
35
|
|
32
36
|
describe "when the content is different" do
|
33
37
|
it "should not be equal" do
|
34
|
-
P.new(:content => "Hello").should_not == P.new(:content => "Hello there")
|
38
|
+
P.new(doc, :content => "Hello").should_not == P.new(doc, :content => "Hello there")
|
35
39
|
end
|
36
40
|
end
|
37
41
|
|
38
42
|
describe "when the language is different" do
|
39
43
|
it "should not be equal" do
|
40
|
-
P.new(:language => 'jp').should_not == P.new(:language => 'en')
|
44
|
+
P.new(doc, :language => 'jp').should_not == P.new(doc, :language => 'en')
|
41
45
|
end
|
42
46
|
end
|
43
47
|
end
|
@@ -48,43 +52,43 @@ module RubySpeech
|
|
48
52
|
end
|
49
53
|
|
50
54
|
it "should accept Audio" do
|
51
|
-
lambda { subject << Audio.new }.should_not raise_error
|
55
|
+
lambda { subject << Audio.new(doc) }.should_not raise_error
|
52
56
|
end
|
53
57
|
|
54
58
|
it "should accept Break" do
|
55
|
-
lambda { subject << Break.new }.should_not raise_error
|
59
|
+
lambda { subject << Break.new(doc) }.should_not raise_error
|
56
60
|
end
|
57
61
|
|
58
62
|
it "should accept Emphasis" do
|
59
|
-
lambda { subject << Emphasis.new }.should_not raise_error
|
63
|
+
lambda { subject << Emphasis.new(doc) }.should_not raise_error
|
60
64
|
end
|
61
65
|
|
62
66
|
it "should accept Mark" do
|
63
|
-
lambda { subject << Mark.new }.should_not raise_error
|
67
|
+
lambda { subject << Mark.new(doc) }.should_not raise_error
|
64
68
|
end
|
65
69
|
|
66
70
|
it "should accept Phoneme" do
|
67
|
-
lambda { subject << Phoneme.new }.should_not raise_error
|
71
|
+
lambda { subject << Phoneme.new(doc) }.should_not raise_error
|
68
72
|
end
|
69
73
|
|
70
74
|
it "should accept Prosody" do
|
71
|
-
lambda { subject << Prosody.new }.should_not raise_error
|
75
|
+
lambda { subject << Prosody.new(doc) }.should_not raise_error
|
72
76
|
end
|
73
77
|
|
74
78
|
it "should accept SayAs" do
|
75
|
-
lambda { subject << SayAs.new(:interpret_as => :foo) }.should_not raise_error
|
79
|
+
lambda { subject << SayAs.new(doc, :interpret_as => :foo) }.should_not raise_error
|
76
80
|
end
|
77
81
|
|
78
82
|
it "should accept Sub" do
|
79
|
-
lambda { subject << Sub.new }.should_not raise_error
|
83
|
+
lambda { subject << Sub.new(doc) }.should_not raise_error
|
80
84
|
end
|
81
85
|
|
82
86
|
it "should accept S" do
|
83
|
-
lambda { subject << S.new }.should_not raise_error
|
87
|
+
lambda { subject << S.new(doc) }.should_not raise_error
|
84
88
|
end
|
85
89
|
|
86
90
|
it "should accept Voice" do
|
87
|
-
lambda { subject << Voice.new }.should_not raise_error
|
91
|
+
lambda { subject << Voice.new(doc) }.should_not raise_error
|
88
92
|
end
|
89
93
|
|
90
94
|
it "should raise InvalidChildError with non-acceptable objects" do
|
@@ -3,10 +3,14 @@ require 'spec_helper'
|
|
3
3
|
module RubySpeech
|
4
4
|
module SSML
|
5
5
|
describe Phoneme do
|
6
|
+
let(:doc) { Nokogiri::XML::Document.new }
|
7
|
+
|
8
|
+
subject { described_class.new doc }
|
9
|
+
|
6
10
|
its(:name) { should == 'phoneme' }
|
7
11
|
|
8
12
|
describe "setting options in initializers" do
|
9
|
-
subject { Phoneme.new :alphabet => 'foo', :ph => 'bar' }
|
13
|
+
subject { Phoneme.new doc, :alphabet => 'foo', :ph => 'bar' }
|
10
14
|
|
11
15
|
its(:alphabet) { should == 'foo' }
|
12
16
|
its(:ph) { should == 'bar' }
|
@@ -29,24 +33,24 @@ module RubySpeech
|
|
29
33
|
|
30
34
|
describe "comparing objects" do
|
31
35
|
it "should be equal if the content, ph and alphabet are the same" do
|
32
|
-
Phoneme.new(:alphabet => 'jp', :ph => 'foo', :content => "Hello there").should == Phoneme.new(:alphabet => 'jp', :ph => 'foo', :content => "Hello there")
|
36
|
+
Phoneme.new(doc, :alphabet => 'jp', :ph => 'foo', :content => "Hello there").should == Phoneme.new(doc, :alphabet => 'jp', :ph => 'foo', :content => "Hello there")
|
33
37
|
end
|
34
38
|
|
35
39
|
describe "when the content is different" do
|
36
40
|
it "should not be equal" do
|
37
|
-
Phoneme.new(:content => "Hello").should_not == Phoneme.new(:content => "Hello there")
|
41
|
+
Phoneme.new(doc, :content => "Hello").should_not == Phoneme.new(doc, :content => "Hello there")
|
38
42
|
end
|
39
43
|
end
|
40
44
|
|
41
45
|
describe "when the ph is different" do
|
42
46
|
it "should not be equal" do
|
43
|
-
Phoneme.new(:ph => 'jp').should_not == Phoneme.new(:ph => 'en')
|
47
|
+
Phoneme.new(doc, :ph => 'jp').should_not == Phoneme.new(doc, :ph => 'en')
|
44
48
|
end
|
45
49
|
end
|
46
50
|
|
47
51
|
describe "when the alphabet is different" do
|
48
52
|
it "should not be equal" do
|
49
|
-
Phoneme.new(:alphabet => 'jp').should_not == Phoneme.new(:alphabet => 'en')
|
53
|
+
Phoneme.new(doc, :alphabet => 'jp').should_not == Phoneme.new(doc, :alphabet => 'en')
|
50
54
|
end
|
51
55
|
end
|
52
56
|
end
|
@@ -57,7 +61,7 @@ module RubySpeech
|
|
57
61
|
end
|
58
62
|
|
59
63
|
it "should raise InvalidChildError with non-acceptable objects" do
|
60
|
-
lambda { subject << Voice.new }.should raise_error(InvalidChildError, "A Phoneme can only accept Strings as children")
|
64
|
+
lambda { subject << Voice.new(doc) }.should raise_error(InvalidChildError, "A Phoneme can only accept Strings as children")
|
61
65
|
end
|
62
66
|
end
|
63
67
|
end # Desc
|
@@ -3,16 +3,20 @@ require 'spec_helper'
|
|
3
3
|
module RubySpeech
|
4
4
|
module SSML
|
5
5
|
describe Prosody do
|
6
|
+
let(:doc) { Nokogiri::XML::Document.new }
|
7
|
+
|
8
|
+
subject { described_class.new doc }
|
9
|
+
|
6
10
|
its(:name) { should == 'prosody' }
|
7
11
|
|
8
12
|
describe "setting options in initializers" do
|
9
|
-
subject { Prosody.new :pitch => :medium, :contour => "something", :range => '20Hz', :rate => 2, :duration => 10
|
13
|
+
subject { Prosody.new doc, :pitch => :medium, :contour => "something", :range => '20Hz', :rate => 2, :duration => 10, :volume => :loud }
|
10
14
|
|
11
15
|
its(:pitch) { should == :medium }
|
12
16
|
its(:contour) { should == 'something' }
|
13
17
|
its(:range) { should == '20Hz' }
|
14
18
|
its(:rate) { should == 2 }
|
15
|
-
its(:duration) { should == 10
|
19
|
+
its(:duration) { should == 10 }
|
16
20
|
its(:volume) { should == :loud }
|
17
21
|
end
|
18
22
|
|
@@ -31,7 +35,7 @@ module RubySpeech
|
|
31
35
|
its(:contour) { should == 'something' }
|
32
36
|
its(:range) { should == '20Hz' }
|
33
37
|
its(:rate) { should == 2 }
|
34
|
-
its(:duration) { should == 10
|
38
|
+
its(:duration) { should == 10 }
|
35
39
|
its(:volume) { should == :loud }
|
36
40
|
end
|
37
41
|
|
@@ -150,14 +154,14 @@ module RubySpeech
|
|
150
154
|
|
151
155
|
describe "#duration" do
|
152
156
|
context "with a valid value" do
|
153
|
-
before { subject.duration = 3
|
157
|
+
before { subject.duration = 3 }
|
154
158
|
|
155
|
-
its(:duration) { should == 3
|
159
|
+
its(:duration) { should == 3 }
|
156
160
|
end
|
157
161
|
|
158
162
|
context "with a negative value" do
|
159
163
|
it do
|
160
|
-
lambda { subject.duration = -3
|
164
|
+
lambda { subject.duration = -3 }.should raise_error(ArgumentError, "You must specify a valid duration (positive float value in seconds)")
|
161
165
|
end
|
162
166
|
end
|
163
167
|
|
@@ -205,48 +209,48 @@ module RubySpeech
|
|
205
209
|
|
206
210
|
describe "comparing objects" do
|
207
211
|
it "should be equal if the content, strength and base uri are the same" do
|
208
|
-
Prosody.new(:pitch => :medium, :contour => "something", :range => '20Hz', :rate => 2, :duration => 10
|
212
|
+
Prosody.new(doc, :pitch => :medium, :contour => "something", :range => '20Hz', :rate => 2, :duration => 10, :volume => :loud, :content => "Hello there").should == Prosody.new(doc, :pitch => :medium, :contour => "something", :range => '20Hz', :rate => 2, :duration => 10, :volume => :loud, :content => "Hello there")
|
209
213
|
end
|
210
214
|
|
211
215
|
describe "when the content is different" do
|
212
216
|
it "should not be equal" do
|
213
|
-
Prosody.new(:content => "Hello").should_not == Prosody.new(:content => "Hello there")
|
217
|
+
Prosody.new(doc, :content => "Hello").should_not == Prosody.new(doc, :content => "Hello there")
|
214
218
|
end
|
215
219
|
end
|
216
220
|
|
217
221
|
describe "when the pitch is different" do
|
218
222
|
it "should not be equal" do
|
219
|
-
Prosody.new(:pitch => :medium).should_not == Prosody.new(:pitch => :high)
|
223
|
+
Prosody.new(doc, :pitch => :medium).should_not == Prosody.new(doc, :pitch => :high)
|
220
224
|
end
|
221
225
|
end
|
222
226
|
|
223
227
|
describe "when the contour is different" do
|
224
228
|
it "should not be equal" do
|
225
|
-
Prosody.new(:contour => 'foo').should_not == Prosody.new(:contour => 'bar')
|
229
|
+
Prosody.new(doc, :contour => 'foo').should_not == Prosody.new(doc, :contour => 'bar')
|
226
230
|
end
|
227
231
|
end
|
228
232
|
|
229
233
|
describe "when the range is different" do
|
230
234
|
it "should not be equal" do
|
231
|
-
Prosody.new(:range => '20Hz').should_not == Prosody.new(:range => '30Hz')
|
235
|
+
Prosody.new(doc, :range => '20Hz').should_not == Prosody.new(doc, :range => '30Hz')
|
232
236
|
end
|
233
237
|
end
|
234
238
|
|
235
239
|
describe "when the rate is different" do
|
236
240
|
it "should not be equal" do
|
237
|
-
Prosody.new(:rate => 2).should_not == Prosody.new(:rate => 3)
|
241
|
+
Prosody.new(doc, :rate => 2).should_not == Prosody.new(doc, :rate => 3)
|
238
242
|
end
|
239
243
|
end
|
240
244
|
|
241
245
|
describe "when the duration is different" do
|
242
246
|
it "should not be equal" do
|
243
|
-
Prosody.new(:duration => 10
|
247
|
+
Prosody.new(doc, :duration => 10).should_not == Prosody.new(doc, :duration => 20)
|
244
248
|
end
|
245
249
|
end
|
246
250
|
|
247
251
|
describe "when the volume is different" do
|
248
252
|
it "should not be equal" do
|
249
|
-
Prosody.new(:volume => :loud).should_not == Prosody.new(:volume => :soft)
|
253
|
+
Prosody.new(doc, :volume => :loud).should_not == Prosody.new(doc, :volume => :soft)
|
250
254
|
end
|
251
255
|
end
|
252
256
|
end
|
@@ -257,47 +261,47 @@ module RubySpeech
|
|
257
261
|
end
|
258
262
|
|
259
263
|
it "should accept Audio" do
|
260
|
-
lambda { subject << Audio.new }.should_not raise_error
|
264
|
+
lambda { subject << Audio.new(doc) }.should_not raise_error
|
261
265
|
end
|
262
266
|
|
263
267
|
it "should accept Break" do
|
264
|
-
lambda { subject << Break.new }.should_not raise_error
|
268
|
+
lambda { subject << Break.new(doc) }.should_not raise_error
|
265
269
|
end
|
266
270
|
|
267
271
|
it "should accept Emphasis" do
|
268
|
-
lambda { subject << Emphasis.new }.should_not raise_error
|
272
|
+
lambda { subject << Emphasis.new(doc) }.should_not raise_error
|
269
273
|
end
|
270
274
|
|
271
275
|
it "should accept Mark" do
|
272
|
-
lambda { subject << Mark.new }.should_not raise_error
|
276
|
+
lambda { subject << Mark.new(doc) }.should_not raise_error
|
273
277
|
end
|
274
278
|
|
275
279
|
it "should accept P" do
|
276
|
-
lambda { subject << P.new }.should_not raise_error
|
280
|
+
lambda { subject << P.new(doc) }.should_not raise_error
|
277
281
|
end
|
278
282
|
|
279
283
|
it "should accept Phoneme" do
|
280
|
-
lambda { subject << Phoneme.new }.should_not raise_error
|
284
|
+
lambda { subject << Phoneme.new(doc) }.should_not raise_error
|
281
285
|
end
|
282
286
|
|
283
287
|
it "should accept Prosody" do
|
284
|
-
lambda { subject << Prosody.new }.should_not raise_error
|
288
|
+
lambda { subject << Prosody.new(doc) }.should_not raise_error
|
285
289
|
end
|
286
290
|
|
287
291
|
it "should accept S" do
|
288
|
-
lambda { subject << S.new }.should_not raise_error
|
292
|
+
lambda { subject << S.new(doc) }.should_not raise_error
|
289
293
|
end
|
290
294
|
|
291
295
|
it "should accept SayAs" do
|
292
|
-
lambda { subject << SayAs.new(:interpret_as => :foo) }.should_not raise_error
|
296
|
+
lambda { subject << SayAs.new(doc, :interpret_as => :foo) }.should_not raise_error
|
293
297
|
end
|
294
298
|
|
295
299
|
it "should accept Sub" do
|
296
|
-
lambda { subject << Sub.new }.should_not raise_error
|
300
|
+
lambda { subject << Sub.new(doc) }.should_not raise_error
|
297
301
|
end
|
298
302
|
|
299
303
|
it "should accept Voice" do
|
300
|
-
lambda { subject << Voice.new }.should_not raise_error
|
304
|
+
lambda { subject << Voice.new(doc) }.should_not raise_error
|
301
305
|
end
|
302
306
|
|
303
307
|
it "should raise InvalidChildError with non-acceptable objects" do
|