adhearsion 2.0.0.beta1 → 2.0.0.rc1

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.
Files changed (118) hide show
  1. data/.travis.yml +2 -4
  2. data/CHANGELOG.md +34 -4
  3. data/README.markdown +2 -1
  4. data/Rakefile +22 -1
  5. data/adhearsion.gemspec +1 -0
  6. data/bin/ahn +0 -2
  7. data/features/cli_daemon.feature +2 -0
  8. data/features/cli_restart.feature +19 -0
  9. data/features/cli_start.feature +4 -6
  10. data/features/cli_stop.feature +3 -0
  11. data/features/step_definitions/app_generator_steps.rb +2 -0
  12. data/features/step_definitions/cli_steps.rb +2 -0
  13. data/features/support/aruba_helper.rb +2 -0
  14. data/features/support/env.rb +8 -46
  15. data/features/support/utils.rb +2 -0
  16. data/lib/adhearsion.rb +4 -6
  17. data/lib/adhearsion/call.rb +71 -17
  18. data/lib/adhearsion/call_controller.rb +25 -14
  19. data/lib/adhearsion/call_controller/dial.rb +34 -15
  20. data/lib/adhearsion/call_controller/input.rb +186 -144
  21. data/lib/adhearsion/call_controller/output.rb +10 -6
  22. data/lib/adhearsion/call_controller/record.rb +11 -13
  23. data/lib/adhearsion/call_controller/utility.rb +2 -0
  24. data/lib/adhearsion/calls.rb +4 -2
  25. data/lib/adhearsion/cli.rb +4 -0
  26. data/lib/adhearsion/cli_commands.rb +8 -2
  27. data/lib/adhearsion/configuration.rb +7 -3
  28. data/lib/adhearsion/console.rb +17 -17
  29. data/lib/adhearsion/events.rb +10 -4
  30. data/lib/adhearsion/foundation.rb +9 -0
  31. data/lib/adhearsion/foundation/custom_daemonizer.rb +3 -1
  32. data/lib/adhearsion/foundation/exception_handler.rb +2 -0
  33. data/lib/adhearsion/foundation/libc.rb +2 -0
  34. data/lib/adhearsion/foundation/object.rb +3 -0
  35. data/lib/adhearsion/foundation/thread_safety.rb +5 -11
  36. data/lib/adhearsion/generators.rb +2 -0
  37. data/lib/adhearsion/generators/app/app_generator.rb +2 -0
  38. data/lib/adhearsion/generators/app/templates/README.md +9 -0
  39. data/lib/adhearsion/generators/app/templates/config/adhearsion.rb +38 -16
  40. data/lib/adhearsion/generators/app/templates/config/environment.rb +2 -0
  41. data/lib/adhearsion/generators/app/templates/lib/simon_game.rb +5 -3
  42. data/lib/adhearsion/generators/controller/controller_generator.rb +2 -0
  43. data/lib/adhearsion/generators/controller/templates/lib/controller.rb +2 -0
  44. data/lib/adhearsion/generators/controller/templates/spec/controller_spec.rb +2 -0
  45. data/lib/adhearsion/generators/generator.rb +3 -1
  46. data/lib/adhearsion/generators/plugin/plugin_generator.rb +2 -0
  47. data/lib/adhearsion/initializer.rb +31 -17
  48. data/lib/adhearsion/linux_proc_name.rb +2 -0
  49. data/lib/adhearsion/logging.rb +5 -3
  50. data/lib/adhearsion/menu_dsl.rb +2 -0
  51. data/lib/adhearsion/menu_dsl/calculated_match.rb +2 -0
  52. data/lib/adhearsion/menu_dsl/calculated_match_collection.rb +2 -0
  53. data/lib/adhearsion/menu_dsl/fixnum_match_calculator.rb +2 -0
  54. data/lib/adhearsion/menu_dsl/match_calculator.rb +2 -0
  55. data/lib/adhearsion/menu_dsl/menu.rb +58 -4
  56. data/lib/adhearsion/menu_dsl/menu_builder.rb +14 -1
  57. data/lib/adhearsion/menu_dsl/range_match_calculator.rb +4 -1
  58. data/lib/adhearsion/menu_dsl/string_match_calculator.rb +2 -0
  59. data/lib/adhearsion/outbound_call.rb +2 -0
  60. data/lib/adhearsion/plugin.rb +9 -7
  61. data/lib/adhearsion/plugin/collection.rb +3 -1
  62. data/lib/adhearsion/plugin/initializer.rb +3 -1
  63. data/lib/adhearsion/process.rb +8 -2
  64. data/lib/adhearsion/punchblock_plugin.rb +3 -1
  65. data/lib/adhearsion/punchblock_plugin/initializer.rb +34 -11
  66. data/lib/adhearsion/router.rb +4 -2
  67. data/lib/adhearsion/router/route.rb +2 -0
  68. data/lib/adhearsion/script_ahn_loader.rb +2 -0
  69. data/lib/adhearsion/tasks.rb +2 -0
  70. data/lib/adhearsion/tasks/configuration.rb +2 -0
  71. data/lib/adhearsion/tasks/debugging.rb +8 -0
  72. data/lib/adhearsion/tasks/environment.rb +2 -0
  73. data/lib/adhearsion/tasks/plugins.rb +2 -0
  74. data/lib/adhearsion/tasks/testing.rb +2 -0
  75. data/lib/adhearsion/version.rb +3 -1
  76. data/pre-commit +2 -0
  77. data/spec/adhearsion/call_controller/dial_spec.rb +114 -25
  78. data/spec/adhearsion/call_controller/input_spec.rb +192 -169
  79. data/spec/adhearsion/call_controller/output_spec.rb +26 -12
  80. data/spec/adhearsion/call_controller/record_spec.rb +29 -77
  81. data/spec/adhearsion/call_controller/utility_spec.rb +69 -0
  82. data/spec/adhearsion/call_controller_spec.rb +90 -15
  83. data/spec/adhearsion/call_spec.rb +92 -24
  84. data/spec/adhearsion/calls_spec.rb +9 -7
  85. data/spec/adhearsion/configuration_spec.rb +58 -56
  86. data/spec/adhearsion/console_spec.rb +4 -2
  87. data/spec/adhearsion/events_spec.rb +9 -7
  88. data/spec/adhearsion/generators_spec.rb +3 -1
  89. data/spec/adhearsion/initializer_spec.rb +16 -14
  90. data/spec/adhearsion/logging_spec.rb +11 -9
  91. data/spec/adhearsion/menu_dsl/calculated_match_collection_spec.rb +6 -4
  92. data/spec/adhearsion/menu_dsl/calculated_match_spec.rb +6 -4
  93. data/spec/adhearsion/menu_dsl/fixnum_match_calculator_spec.rb +3 -1
  94. data/spec/adhearsion/menu_dsl/match_calculator_spec.rb +2 -0
  95. data/spec/adhearsion/menu_dsl/menu_builder_spec.rb +42 -11
  96. data/spec/adhearsion/menu_dsl/menu_spec.rb +197 -36
  97. data/spec/adhearsion/menu_dsl/range_match_calculator_spec.rb +4 -2
  98. data/spec/adhearsion/menu_dsl/string_match_calculator_spec.rb +5 -3
  99. data/spec/adhearsion/outbound_call_spec.rb +7 -5
  100. data/spec/adhearsion/plugin_spec.rb +19 -15
  101. data/spec/adhearsion/process_spec.rb +12 -7
  102. data/spec/adhearsion/punchblock_plugin/initializer_spec.rb +35 -15
  103. data/spec/adhearsion/punchblock_plugin_spec.rb +4 -1
  104. data/spec/adhearsion/router/route_spec.rb +8 -6
  105. data/spec/adhearsion/router_spec.rb +12 -10
  106. data/spec/adhearsion_spec.rb +13 -2
  107. data/spec/capture_warnings.rb +33 -0
  108. data/spec/spec_helper.rb +4 -0
  109. data/spec/support/call_controller_test_helpers.rb +2 -4
  110. data/spec/support/initializer_stubs.rb +8 -5
  111. data/spec/support/logging_helpers.rb +2 -0
  112. data/spec/support/punchblock_mocks.rb +2 -0
  113. metadata +84 -71
  114. data/EVENTS +0 -11
  115. data/lib/adhearsion/call_controller/menu.rb +0 -124
  116. data/lib/adhearsion/foundation/all.rb +0 -8
  117. data/spec/adhearsion/call_controller/menu_spec.rb +0 -120
  118. data/spec/adhearsion/menu_dsl_spec.rb +0 -12
@@ -1,10 +1,12 @@
1
+ # encoding: utf-8
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  describe Adhearsion do
4
6
  describe "#ahn_root=" do
5
7
  it "should update properly the config root variable" do
6
8
  Adhearsion.ahn_root = "./"
7
- Adhearsion.config[:platform].root.should == Dir.getwd
9
+ Adhearsion.config[:platform].root.should be == Dir.getwd
8
10
  end
9
11
 
10
12
  it "should update properly the config root variable when path is nil" do
@@ -63,7 +65,16 @@ describe Adhearsion do
63
65
 
64
66
  describe "#status" do
65
67
  it "should be the process status name" do
66
- Adhearsion.status.should == :booting
68
+ Adhearsion.status.should be == :booting
69
+ end
70
+ end
71
+
72
+ it "should have an encoding on all files" do
73
+ Dir['{bin,features,lib,spec}/**/*.rb'].each do |filename|
74
+ File.open filename do |file|
75
+ first_line = file.first
76
+ first_line.should == "# encoding: utf-8\n"
77
+ end
67
78
  end
68
79
  end
69
80
  end
@@ -0,0 +1,33 @@
1
+ # encoding: utf-8
2
+
3
+ require 'tempfile'
4
+ stderr_file = Tempfile.new "ahn.stderr"
5
+ $stderr.reopen stderr_file.path
6
+ current_dir = Dir.pwd
7
+
8
+ at_exit do
9
+ stderr_file.rewind
10
+ lines = stderr_file.read.split("\n").uniq
11
+ stderr_file.close!
12
+
13
+ ahn_warnings, other_warnings = lines.partition { |line| line.include?(current_dir) && !line.include?('vendor') && line.include?('warning') }
14
+
15
+ if ahn_warnings.any?
16
+ puts
17
+ puts "-" * 30 + " AHN Warnings: " + "-" * 30
18
+ puts
19
+ puts ahn_warnings.join("\n")
20
+ puts
21
+ puts "-" * 75
22
+ puts
23
+ end
24
+
25
+ if other_warnings.any?
26
+ File.open('tmp/warnings.txt', 'w') { |f| f.write other_warnings.join("\n") }
27
+ puts
28
+ puts "Non-AHN warnings written to tmp/warnings.txt"
29
+ puts
30
+ end
31
+
32
+ exit 1 if ahn_warnings.any? # fail the build...
33
+ end
@@ -1,3 +1,5 @@
1
+ # encoding: utf-8
2
+
1
3
  unless ENV['SKIP_RCOV']
2
4
  require 'simplecov'
3
5
  require 'simplecov-rcov'
@@ -24,6 +26,8 @@ end
24
26
  adhearsion
25
27
  }.each { |f| require f }
26
28
 
29
+ Thread.abort_on_exception = true
30
+
27
31
  Bundler.require(:default, :test) if defined?(Bundler)
28
32
 
29
33
  Dir[File.dirname(__FILE__) + "/support/**/*.rb"].each { |f| require f }
@@ -1,3 +1,5 @@
1
+ # encoding: utf-8
2
+
1
3
  module CallControllerTestHelpers
2
4
  include FlexMock::ArgumentTypes
3
5
 
@@ -30,10 +32,6 @@ module CallControllerTestHelpers
30
32
  subject.should_receive(:execute_component_and_await_completion).once.with(component).and_return(component)
31
33
  end
32
34
 
33
- def expect_component_execution_asynchronously(component)
34
- subject.should_receive(:execute_component).once.with(component).and_return(component)
35
- end
36
-
37
35
  def mock_with_potential_matches(potential_matches)
38
36
  Adhearsion::Punchblock::MenuDSL::CalculatedMatch.new :potential_matches => potential_matches
39
37
  end
@@ -1,6 +1,8 @@
1
+ # encoding: utf-8
2
+
1
3
  module InitializerStubs
2
4
  UNWANTED_BEHAVIOR = {
3
- Adhearsion::Initializer => [:initialize_log_paths, :update_rails_env_var, :daemonize!, :require, :init_plugins, :run_plugins, :load_lib_folder]
5
+ Adhearsion::Initializer => [:debugging_log, :initialize_log_paths, :update_rails_env_var, :daemonize!, :require, :init_plugins, :run_plugins, :load_lib_folder]
4
6
  } unless defined? UNWANTED_BEHAVIOR
5
7
 
6
8
  def stub_behavior_for_initializer_with_no_path_changing_behavior
@@ -20,10 +22,10 @@ module InitializerStubs
20
22
  unwanted_behavior.each do |stub_victim_class, undesired_methods|
21
23
  undesired_methods.each do |undesired_method_name_or_key_value_pair|
22
24
  undesired_method_name, method_implementation = case undesired_method_name_or_key_value_pair
23
- when Array
24
- [undesired_method_name_or_key_value_pair.first, lambda { |*args| undesired_method_name_or_key_value_pair.last } ]
25
- else
26
- [undesired_method_name_or_key_value_pair, lambda{ |*args| }]
25
+ when Array
26
+ [undesired_method_name_or_key_value_pair.first, lambda { |*args| undesired_method_name_or_key_value_pair.last } ]
27
+ else
28
+ [undesired_method_name_or_key_value_pair, lambda{ |*args| }]
27
29
  end
28
30
  stub_victim_class.send(:alias_method, "pre_stubbed_#{undesired_method_name}", undesired_method_name)
29
31
  stub_victim_class.send(:define_method, undesired_method_name, &method_implementation)
@@ -35,6 +37,7 @@ module InitializerStubs
35
37
  UNWANTED_BEHAVIOR.each do |stub_victim_class, undesired_methods|
36
38
  undesired_methods.each do |undesired_method_name|
37
39
  undesired_method_name = undesired_method_name.first if undesired_method_name.kind_of? Array
40
+ stub_victim_class.send(:remove_method, undesired_method_name)
38
41
  stub_victim_class.send(:alias_method, undesired_method_name, "pre_stubbed_#{undesired_method_name}")
39
42
  end
40
43
  end
@@ -1,2 +1,4 @@
1
+ # encoding: utf-8
2
+
1
3
  Foo = Class.new
2
4
  Foo::Bar = Class.new Foo
@@ -1,3 +1,5 @@
1
+ # encoding: utf-8
2
+
1
3
  def mock_offer(id = nil, headers = {})
2
4
  id ||= rand
3
5
  flexmock("Offer: #{id}", :call_id => id, :headers_hash => headers).tap do |offer|
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: adhearsion
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.beta1
4
+ version: 2.0.0.rc1
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -12,11 +12,11 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2012-03-07 00:00:00.000000000 Z
15
+ date: 2012-03-20 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: bundler
19
- requirement: &2156764500 !ruby/object:Gem::Requirement
19
+ requirement: &2160607180 !ruby/object:Gem::Requirement
20
20
  none: false
21
21
  requirements:
22
22
  - - ! '>='
@@ -24,10 +24,10 @@ dependencies:
24
24
  version: 1.0.10
25
25
  type: :runtime
26
26
  prerelease: false
27
- version_requirements: *2156764500
27
+ version_requirements: *2160607180
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: punchblock
30
- requirement: &2156765380 !ruby/object:Gem::Requirement
30
+ requirement: &2160605540 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
33
  - - ! '>='
@@ -35,10 +35,10 @@ dependencies:
35
35
  version: 0.9.1
36
36
  type: :runtime
37
37
  prerelease: false
38
- version_requirements: *2156765380
38
+ version_requirements: *2160605540
39
39
  - !ruby/object:Gem::Dependency
40
40
  name: logging
41
- requirement: &2156789040 !ruby/object:Gem::Requirement
41
+ requirement: &2160604040 !ruby/object:Gem::Requirement
42
42
  none: false
43
43
  requirements:
44
44
  - - ! '>='
@@ -46,10 +46,10 @@ dependencies:
46
46
  version: 1.6.1
47
47
  type: :runtime
48
48
  prerelease: false
49
- version_requirements: *2156789040
49
+ version_requirements: *2160604040
50
50
  - !ruby/object:Gem::Dependency
51
51
  name: adhearsion-loquacious
52
- requirement: &2156799900 !ruby/object:Gem::Requirement
52
+ requirement: &2160578160 !ruby/object:Gem::Requirement
53
53
  none: false
54
54
  requirements:
55
55
  - - ! '>='
@@ -57,10 +57,10 @@ dependencies:
57
57
  version: 1.9.0
58
58
  type: :runtime
59
59
  prerelease: false
60
- version_requirements: *2156799900
60
+ version_requirements: *2160578160
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: activesupport
63
- requirement: &2156795940 !ruby/object:Gem::Requirement
63
+ requirement: &2160576060 !ruby/object:Gem::Requirement
64
64
  none: false
65
65
  requirements:
66
66
  - - ! '>='
@@ -68,10 +68,10 @@ dependencies:
68
68
  version: 3.0.10
69
69
  type: :runtime
70
70
  prerelease: false
71
- version_requirements: *2156795940
71
+ version_requirements: *2160576060
72
72
  - !ruby/object:Gem::Dependency
73
73
  name: i18n
74
- requirement: &2156805040 !ruby/object:Gem::Requirement
74
+ requirement: &2160574920 !ruby/object:Gem::Requirement
75
75
  none: false
76
76
  requirements:
77
77
  - - ! '>='
@@ -79,10 +79,10 @@ dependencies:
79
79
  version: 0.5.0
80
80
  type: :runtime
81
81
  prerelease: false
82
- version_requirements: *2156805040
82
+ version_requirements: *2160574920
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: json
85
- requirement: &2156803080 !ruby/object:Gem::Requirement
85
+ requirement: &2160574020 !ruby/object:Gem::Requirement
86
86
  none: false
87
87
  requirements:
88
88
  - - ! '>='
@@ -90,10 +90,10 @@ dependencies:
90
90
  version: '0'
91
91
  type: :runtime
92
92
  prerelease: false
93
- version_requirements: *2156803080
93
+ version_requirements: *2160574020
94
94
  - !ruby/object:Gem::Dependency
95
95
  name: thor
96
- requirement: &2156184540 !ruby/object:Gem::Requirement
96
+ requirement: &2160571980 !ruby/object:Gem::Requirement
97
97
  none: false
98
98
  requirements:
99
99
  - - ! '>='
@@ -101,10 +101,10 @@ dependencies:
101
101
  version: '0'
102
102
  type: :runtime
103
103
  prerelease: false
104
- version_requirements: *2156184540
104
+ version_requirements: *2160571980
105
105
  - !ruby/object:Gem::Dependency
106
106
  name: rake
107
- requirement: &2156183480 !ruby/object:Gem::Requirement
107
+ requirement: &2160571280 !ruby/object:Gem::Requirement
108
108
  none: false
109
109
  requirements:
110
110
  - - ! '>='
@@ -112,10 +112,10 @@ dependencies:
112
112
  version: '0'
113
113
  type: :runtime
114
114
  prerelease: false
115
- version_requirements: *2156183480
115
+ version_requirements: *2160571280
116
116
  - !ruby/object:Gem::Dependency
117
117
  name: pry
118
- requirement: &2156182200 !ruby/object:Gem::Requirement
118
+ requirement: &2160570360 !ruby/object:Gem::Requirement
119
119
  none: false
120
120
  requirements:
121
121
  - - ! '>='
@@ -123,10 +123,10 @@ dependencies:
123
123
  version: '0'
124
124
  type: :runtime
125
125
  prerelease: false
126
- version_requirements: *2156182200
126
+ version_requirements: *2160570360
127
127
  - !ruby/object:Gem::Dependency
128
128
  name: uuid
129
- requirement: &2156181480 !ruby/object:Gem::Requirement
129
+ requirement: &2160532560 !ruby/object:Gem::Requirement
130
130
  none: false
131
131
  requirements:
132
132
  - - ! '>='
@@ -134,10 +134,10 @@ dependencies:
134
134
  version: '0'
135
135
  type: :runtime
136
136
  prerelease: false
137
- version_requirements: *2156181480
137
+ version_requirements: *2160532560
138
138
  - !ruby/object:Gem::Dependency
139
139
  name: future-resource
140
- requirement: &2156180220 !ruby/object:Gem::Requirement
140
+ requirement: &2160531060 !ruby/object:Gem::Requirement
141
141
  none: false
142
142
  requirements:
143
143
  - - ! '>='
@@ -145,10 +145,10 @@ dependencies:
145
145
  version: 0.0.2
146
146
  type: :runtime
147
147
  prerelease: false
148
- version_requirements: *2156180220
148
+ version_requirements: *2160531060
149
149
  - !ruby/object:Gem::Dependency
150
150
  name: ruby_speech
151
- requirement: &2156179540 !ruby/object:Gem::Requirement
151
+ requirement: &2160530200 !ruby/object:Gem::Requirement
152
152
  none: false
153
153
  requirements:
154
154
  - - ! '>='
@@ -156,10 +156,10 @@ dependencies:
156
156
  version: 0.4.0
157
157
  type: :runtime
158
158
  prerelease: false
159
- version_requirements: *2156179540
159
+ version_requirements: *2160530200
160
160
  - !ruby/object:Gem::Dependency
161
161
  name: countdownlatch
162
- requirement: &2156178900 !ruby/object:Gem::Requirement
162
+ requirement: &2160529380 !ruby/object:Gem::Requirement
163
163
  none: false
164
164
  requirements:
165
165
  - - ! '>='
@@ -167,10 +167,10 @@ dependencies:
167
167
  version: '0'
168
168
  type: :runtime
169
169
  prerelease: false
170
- version_requirements: *2156178900
170
+ version_requirements: *2160529380
171
171
  - !ruby/object:Gem::Dependency
172
172
  name: has-guarded-handlers
173
- requirement: &2156177860 !ruby/object:Gem::Requirement
173
+ requirement: &2160528360 !ruby/object:Gem::Requirement
174
174
  none: false
175
175
  requirements:
176
176
  - - ! '>='
@@ -178,10 +178,10 @@ dependencies:
178
178
  version: 1.1.0
179
179
  type: :runtime
180
180
  prerelease: false
181
- version_requirements: *2156177860
181
+ version_requirements: *2160528360
182
182
  - !ruby/object:Gem::Dependency
183
183
  name: girl_friday
184
- requirement: &2156177040 !ruby/object:Gem::Requirement
184
+ requirement: &2160527640 !ruby/object:Gem::Requirement
185
185
  none: false
186
186
  requirements:
187
187
  - - ! '>='
@@ -189,10 +189,10 @@ dependencies:
189
189
  version: '0'
190
190
  type: :runtime
191
191
  prerelease: false
192
- version_requirements: *2156177040
192
+ version_requirements: *2160527640
193
193
  - !ruby/object:Gem::Dependency
194
194
  name: ffi
195
- requirement: &2156745640 !ruby/object:Gem::Requirement
195
+ requirement: &2160526260 !ruby/object:Gem::Requirement
196
196
  none: false
197
197
  requirements:
198
198
  - - ! '>='
@@ -200,10 +200,10 @@ dependencies:
200
200
  version: 1.0.11
201
201
  type: :runtime
202
202
  prerelease: false
203
- version_requirements: *2156745640
203
+ version_requirements: *2160526260
204
204
  - !ruby/object:Gem::Dependency
205
205
  name: celluloid
206
- requirement: &2156744280 !ruby/object:Gem::Requirement
206
+ requirement: &2160525580 !ruby/object:Gem::Requirement
207
207
  none: false
208
208
  requirements:
209
209
  - - ! '>='
@@ -211,10 +211,21 @@ dependencies:
211
211
  version: 0.9.0
212
212
  type: :runtime
213
213
  prerelease: false
214
- version_requirements: *2156744280
214
+ version_requirements: *2160525580
215
+ - !ruby/object:Gem::Dependency
216
+ name: deep_merge
217
+ requirement: &2160504660 !ruby/object:Gem::Requirement
218
+ none: false
219
+ requirements:
220
+ - - ! '>='
221
+ - !ruby/object:Gem::Version
222
+ version: '0'
223
+ type: :runtime
224
+ prerelease: false
225
+ version_requirements: *2160504660
215
226
  - !ruby/object:Gem::Dependency
216
227
  name: rspec
217
- requirement: &2156742660 !ruby/object:Gem::Requirement
228
+ requirement: &2160503420 !ruby/object:Gem::Requirement
218
229
  none: false
219
230
  requirements:
220
231
  - - ~>
@@ -222,10 +233,10 @@ dependencies:
222
233
  version: 2.7.0
223
234
  type: :development
224
235
  prerelease: false
225
- version_requirements: *2156742660
236
+ version_requirements: *2160503420
226
237
  - !ruby/object:Gem::Dependency
227
238
  name: flexmock
228
- requirement: &2156741360 !ruby/object:Gem::Requirement
239
+ requirement: &2160502300 !ruby/object:Gem::Requirement
229
240
  none: false
230
241
  requirements:
231
242
  - - ! '>='
@@ -233,10 +244,10 @@ dependencies:
233
244
  version: '0'
234
245
  type: :development
235
246
  prerelease: false
236
- version_requirements: *2156741360
247
+ version_requirements: *2160502300
237
248
  - !ruby/object:Gem::Dependency
238
249
  name: activerecord
239
- requirement: &2156740600 !ruby/object:Gem::Requirement
250
+ requirement: &2160498180 !ruby/object:Gem::Requirement
240
251
  none: false
241
252
  requirements:
242
253
  - - ! '>='
@@ -244,10 +255,10 @@ dependencies:
244
255
  version: 3.0.10
245
256
  type: :development
246
257
  prerelease: false
247
- version_requirements: *2156740600
258
+ version_requirements: *2160498180
248
259
  - !ruby/object:Gem::Dependency
249
260
  name: simplecov
250
- requirement: &2156739980 !ruby/object:Gem::Requirement
261
+ requirement: &2160497260 !ruby/object:Gem::Requirement
251
262
  none: false
252
263
  requirements:
253
264
  - - ! '>='
@@ -255,10 +266,10 @@ dependencies:
255
266
  version: '0'
256
267
  type: :development
257
268
  prerelease: false
258
- version_requirements: *2156739980
269
+ version_requirements: *2160497260
259
270
  - !ruby/object:Gem::Dependency
260
271
  name: simplecov-rcov
261
- requirement: &2156610980 !ruby/object:Gem::Requirement
272
+ requirement: &2160471000 !ruby/object:Gem::Requirement
262
273
  none: false
263
274
  requirements:
264
275
  - - ! '>='
@@ -266,10 +277,10 @@ dependencies:
266
277
  version: '0'
267
278
  type: :development
268
279
  prerelease: false
269
- version_requirements: *2156610980
280
+ version_requirements: *2160471000
270
281
  - !ruby/object:Gem::Dependency
271
282
  name: ci_reporter
272
- requirement: &2156609440 !ruby/object:Gem::Requirement
283
+ requirement: &2160469500 !ruby/object:Gem::Requirement
273
284
  none: false
274
285
  requirements:
275
286
  - - ! '>='
@@ -277,10 +288,10 @@ dependencies:
277
288
  version: '0'
278
289
  type: :development
279
290
  prerelease: false
280
- version_requirements: *2156609440
291
+ version_requirements: *2160469500
281
292
  - !ruby/object:Gem::Dependency
282
293
  name: yard
283
- requirement: &2156608420 !ruby/object:Gem::Requirement
294
+ requirement: &2160468520 !ruby/object:Gem::Requirement
284
295
  none: false
285
296
  requirements:
286
297
  - - ! '>='
@@ -288,10 +299,10 @@ dependencies:
288
299
  version: '0'
289
300
  type: :development
290
301
  prerelease: false
291
- version_requirements: *2156608420
302
+ version_requirements: *2160468520
292
303
  - !ruby/object:Gem::Dependency
293
304
  name: guard-rspec
294
- requirement: &2156607100 !ruby/object:Gem::Requirement
305
+ requirement: &2160466580 !ruby/object:Gem::Requirement
295
306
  none: false
296
307
  requirements:
297
308
  - - ! '>='
@@ -299,10 +310,10 @@ dependencies:
299
310
  version: '0'
300
311
  type: :development
301
312
  prerelease: false
302
- version_requirements: *2156607100
313
+ version_requirements: *2160466580
303
314
  - !ruby/object:Gem::Dependency
304
315
  name: guard-cucumber
305
- requirement: &2156606380 !ruby/object:Gem::Requirement
316
+ requirement: &2160464820 !ruby/object:Gem::Requirement
306
317
  none: false
307
318
  requirements:
308
319
  - - ! '>='
@@ -310,10 +321,10 @@ dependencies:
310
321
  version: '0'
311
322
  type: :development
312
323
  prerelease: false
313
- version_requirements: *2156606380
324
+ version_requirements: *2160464820
314
325
  - !ruby/object:Gem::Dependency
315
326
  name: ruby_gntp
316
- requirement: &2156605880 !ruby/object:Gem::Requirement
327
+ requirement: &2160436460 !ruby/object:Gem::Requirement
317
328
  none: false
318
329
  requirements:
319
330
  - - ! '>='
@@ -321,10 +332,10 @@ dependencies:
321
332
  version: '0'
322
333
  type: :development
323
334
  prerelease: false
324
- version_requirements: *2156605880
335
+ version_requirements: *2160436460
325
336
  - !ruby/object:Gem::Dependency
326
337
  name: cucumber
327
- requirement: &2156605020 !ruby/object:Gem::Requirement
338
+ requirement: &2160435420 !ruby/object:Gem::Requirement
328
339
  none: false
329
340
  requirements:
330
341
  - - ! '>='
@@ -332,10 +343,10 @@ dependencies:
332
343
  version: '0'
333
344
  type: :development
334
345
  prerelease: false
335
- version_requirements: *2156605020
346
+ version_requirements: *2160435420
336
347
  - !ruby/object:Gem::Dependency
337
348
  name: aruba
338
- requirement: &2156604220 !ruby/object:Gem::Requirement
349
+ requirement: &2160434400 !ruby/object:Gem::Requirement
339
350
  none: false
340
351
  requirements:
341
352
  - - ! '>='
@@ -343,7 +354,7 @@ dependencies:
343
354
  version: '0'
344
355
  type: :development
345
356
  prerelease: false
346
- version_requirements: *2156604220
357
+ version_requirements: *2160434400
347
358
  description: Adhearsion is an open-source telephony development framework
348
359
  email: dev&Adhearsion.com
349
360
  executables:
@@ -355,7 +366,6 @@ files:
355
366
  - .rspec
356
367
  - .travis.yml
357
368
  - CHANGELOG.md
358
- - EVENTS
359
369
  - Gemfile
360
370
  - Guardfile
361
371
  - LICENSE
@@ -369,6 +379,7 @@ files:
369
379
  - features/cli_create.feature
370
380
  - features/cli_daemon.feature
371
381
  - features/cli_generate.feature
382
+ - features/cli_restart.feature
372
383
  - features/cli_start.feature
373
384
  - features/cli_stop.feature
374
385
  - features/controller_generator.feature
@@ -383,7 +394,6 @@ files:
383
394
  - lib/adhearsion/call_controller.rb
384
395
  - lib/adhearsion/call_controller/dial.rb
385
396
  - lib/adhearsion/call_controller/input.rb
386
- - lib/adhearsion/call_controller/menu.rb
387
397
  - lib/adhearsion/call_controller/output.rb
388
398
  - lib/adhearsion/call_controller/record.rb
389
399
  - lib/adhearsion/call_controller/utility.rb
@@ -393,7 +403,7 @@ files:
393
403
  - lib/adhearsion/configuration.rb
394
404
  - lib/adhearsion/console.rb
395
405
  - lib/adhearsion/events.rb
396
- - lib/adhearsion/foundation/all.rb
406
+ - lib/adhearsion/foundation.rb
397
407
  - lib/adhearsion/foundation/custom_daemonizer.rb
398
408
  - lib/adhearsion/foundation/exception_handler.rb
399
409
  - lib/adhearsion/foundation/libc.rb
@@ -451,15 +461,17 @@ files:
451
461
  - lib/adhearsion/script_ahn_loader.rb
452
462
  - lib/adhearsion/tasks.rb
453
463
  - lib/adhearsion/tasks/configuration.rb
464
+ - lib/adhearsion/tasks/debugging.rb
454
465
  - lib/adhearsion/tasks/environment.rb
455
466
  - lib/adhearsion/tasks/plugins.rb
456
467
  - lib/adhearsion/tasks/testing.rb
457
468
  - lib/adhearsion/version.rb
469
+ - pre-commit
458
470
  - spec/adhearsion/call_controller/dial_spec.rb
459
471
  - spec/adhearsion/call_controller/input_spec.rb
460
- - spec/adhearsion/call_controller/menu_spec.rb
461
472
  - spec/adhearsion/call_controller/output_spec.rb
462
473
  - spec/adhearsion/call_controller/record_spec.rb
474
+ - spec/adhearsion/call_controller/utility_spec.rb
463
475
  - spec/adhearsion/call_controller_spec.rb
464
476
  - spec/adhearsion/call_spec.rb
465
477
  - spec/adhearsion/calls_spec.rb
@@ -477,7 +489,6 @@ files:
477
489
  - spec/adhearsion/menu_dsl/menu_spec.rb
478
490
  - spec/adhearsion/menu_dsl/range_match_calculator_spec.rb
479
491
  - spec/adhearsion/menu_dsl/string_match_calculator_spec.rb
480
- - spec/adhearsion/menu_dsl_spec.rb
481
492
  - spec/adhearsion/outbound_call_spec.rb
482
493
  - spec/adhearsion/plugin_spec.rb
483
494
  - spec/adhearsion/process_spec.rb
@@ -486,6 +497,7 @@ files:
486
497
  - spec/adhearsion/router/route_spec.rb
487
498
  - spec/adhearsion/router_spec.rb
488
499
  - spec/adhearsion_spec.rb
500
+ - spec/capture_warnings.rb
489
501
  - spec/spec_helper.rb
490
502
  - spec/support/call_controller_test_helpers.rb
491
503
  - spec/support/initializer_stubs.rb
@@ -505,7 +517,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
505
517
  version: '0'
506
518
  segments:
507
519
  - 0
508
- hash: -571174337139951741
520
+ hash: -1319504717136623069
509
521
  required_rubygems_version: !ruby/object:Gem::Requirement
510
522
  none: false
511
523
  requirements:
@@ -514,7 +526,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
514
526
  version: 1.3.1
515
527
  requirements: []
516
528
  rubyforge_project:
517
- rubygems_version: 1.8.17
529
+ rubygems_version: 1.8.10
518
530
  signing_key:
519
531
  specification_version: 3
520
532
  summary: Adhearsion, open-source telephony development framework
@@ -524,6 +536,7 @@ test_files:
524
536
  - features/cli_create.feature
525
537
  - features/cli_daemon.feature
526
538
  - features/cli_generate.feature
539
+ - features/cli_restart.feature
527
540
  - features/cli_start.feature
528
541
  - features/cli_stop.feature
529
542
  - features/controller_generator.feature
@@ -535,9 +548,9 @@ test_files:
535
548
  - features/support/utils.rb
536
549
  - spec/adhearsion/call_controller/dial_spec.rb
537
550
  - spec/adhearsion/call_controller/input_spec.rb
538
- - spec/adhearsion/call_controller/menu_spec.rb
539
551
  - spec/adhearsion/call_controller/output_spec.rb
540
552
  - spec/adhearsion/call_controller/record_spec.rb
553
+ - spec/adhearsion/call_controller/utility_spec.rb
541
554
  - spec/adhearsion/call_controller_spec.rb
542
555
  - spec/adhearsion/call_spec.rb
543
556
  - spec/adhearsion/calls_spec.rb
@@ -555,7 +568,6 @@ test_files:
555
568
  - spec/adhearsion/menu_dsl/menu_spec.rb
556
569
  - spec/adhearsion/menu_dsl/range_match_calculator_spec.rb
557
570
  - spec/adhearsion/menu_dsl/string_match_calculator_spec.rb
558
- - spec/adhearsion/menu_dsl_spec.rb
559
571
  - spec/adhearsion/outbound_call_spec.rb
560
572
  - spec/adhearsion/plugin_spec.rb
561
573
  - spec/adhearsion/process_spec.rb
@@ -564,6 +576,7 @@ test_files:
564
576
  - spec/adhearsion/router/route_spec.rb
565
577
  - spec/adhearsion/router_spec.rb
566
578
  - spec/adhearsion_spec.rb
579
+ - spec/capture_warnings.rb
567
580
  - spec/spec_helper.rb
568
581
  - spec/support/call_controller_test_helpers.rb
569
582
  - spec/support/initializer_stubs.rb