trema 0.4.6 → 0.4.7

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 (291) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -0
  3. data/.travis.yml +24 -7
  4. data/Gemfile +19 -27
  5. data/Guardfile +6 -0
  6. data/README.md +13 -5
  7. data/Rakefile +418 -415
  8. data/bin/quality +2 -2
  9. data/bin/trema +103 -105
  10. data/bin/trema-config +7 -7
  11. data/build.rb +2 -2
  12. data/cruise.rb +109 -83
  13. data/features/dsl/switch_port_specifier.feature +1 -1
  14. data/features/examples/dumper.feature +9 -41
  15. data/features/examples/hello_trema.feature +1 -1
  16. data/features/examples/learning_switch.feature +7 -7
  17. data/features/examples/list_switches.feature +5 -5
  18. data/features/examples/message.set_config.feature +11 -11
  19. data/features/examples/message.vendor-action.feature +7 -7
  20. data/features/examples/message.vendor-stats-request.feature +1 -1
  21. data/features/examples/multi_learning_switch.feature +7 -7
  22. data/features/examples/openflow_message.echo.feature +15 -15
  23. data/features/examples/openflow_message.features_request.feature +12 -12
  24. data/features/examples/openflow_message.hello.feature +13 -13
  25. data/features/examples/packet_in.feature +8 -8
  26. data/features/examples/patch_panel.feature +1 -1
  27. data/features/examples/repeater_hub.feature +7 -7
  28. data/features/examples/switch_info.feature +16 -16
  29. data/features/examples/switch_monitor.feature +11 -11
  30. data/features/examples/transparent_firewall.feature +73 -0
  31. data/features/handlers/switch_ready.feature +1 -1
  32. data/features/step_definitions/misc_steps.rb +24 -24
  33. data/features/step_definitions/send_packets_steps.rb +2 -2
  34. data/features/step_definitions/stats_steps.rb +6 -6
  35. data/features/support/env.rb +15 -15
  36. data/features/support/hooks.rb +9 -9
  37. data/features/switch_event/add_forward_entry.feature +3 -3
  38. data/features/switch_event/delete_forward_entry.feature +3 -3
  39. data/features/switch_event/dump_forward_entries.feature +2 -2
  40. data/features/switch_event/set_forward_entries.feature +2 -2
  41. data/features/trema_commands/dump_flows.feature +1 -0
  42. data/features/trema_commands/help.feature +1 -0
  43. data/features/trema_commands/help_option.feature +1 -0
  44. data/features/trema_commands/kill.feature +1 -0
  45. data/features/trema_commands/killall.feature +1 -0
  46. data/features/trema_commands/port_down.feature +1 -0
  47. data/features/trema_commands/port_up.feature +1 -0
  48. data/features/trema_commands/reset_stats.feature +1 -0
  49. data/features/trema_commands/run.feature +1 -0
  50. data/features/trema_commands/send_packets.feature +2 -1
  51. data/features/trema_commands/show_stats.feature +1 -0
  52. data/features/trema_commands/up.feature +1 -0
  53. data/features/trema_commands/version.feature +1 -0
  54. data/features/trema_commands/version_option.feature +1 -0
  55. data/rubocop-todo.yml +159 -0
  56. data/ruby/blocker.rb +15 -17
  57. data/ruby/extconf.rb +19 -19
  58. data/ruby/sub-process.rb +29 -29
  59. data/ruby/trema/aggregate-stats-reply.rb +2 -2
  60. data/ruby/trema/app.rb +13 -13
  61. data/ruby/trema/cli.rb +45 -45
  62. data/ruby/trema/command.rb +14 -14
  63. data/ruby/trema/command/dump_flows.rb +5 -5
  64. data/ruby/trema/command/kill.rb +13 -13
  65. data/ruby/trema/command/killall.rb +1 -1
  66. data/ruby/trema/command/netns.rb +3 -3
  67. data/ruby/trema/command/port_down.rb +7 -7
  68. data/ruby/trema/command/port_up.rb +7 -7
  69. data/ruby/trema/command/reset_stats.rb +6 -6
  70. data/ruby/trema/command/ruby.rb +2 -2
  71. data/ruby/trema/command/run.rb +23 -23
  72. data/ruby/trema/command/send_packets.rb +9 -9
  73. data/ruby/trema/command/shell.rb +14 -16
  74. data/ruby/trema/command/show_stats.rb +9 -9
  75. data/ruby/trema/command/up.rb +4 -4
  76. data/ruby/trema/command/version.rb +1 -1
  77. data/ruby/trema/controller.rb +10 -10
  78. data/ruby/trema/custom-switch.rb +4 -4
  79. data/ruby/trema/daemon.rb +21 -21
  80. data/ruby/trema/desc-stats-reply.rb +2 -2
  81. data/ruby/trema/dsl.rb +5 -5
  82. data/ruby/trema/dsl/configuration.rb +7 -7
  83. data/ruby/trema/dsl/context.rb +10 -10
  84. data/ruby/trema/dsl/custom-switch.rb +3 -3
  85. data/ruby/trema/dsl/link.rb +2 -2
  86. data/ruby/trema/dsl/netns.rb +9 -9
  87. data/ruby/trema/dsl/parser.rb +14 -14
  88. data/ruby/trema/dsl/rswitch.rb +3 -3
  89. data/ruby/trema/dsl/run.rb +4 -4
  90. data/ruby/trema/dsl/runner.rb +20 -20
  91. data/ruby/trema/dsl/stanza.rb +5 -5
  92. data/ruby/trema/dsl/switch.rb +14 -14
  93. data/ruby/trema/dsl/syntax.rb +54 -54
  94. data/ruby/trema/dsl/vhost.rb +9 -9
  95. data/ruby/trema/dsl/vswitch.rb +4 -4
  96. data/ruby/trema/enqueue.rb +11 -11
  97. data/ruby/trema/exact-match.rb +1 -1
  98. data/ruby/trema/executables.rb +19 -19
  99. data/ruby/trema/flow-stats-reply.rb +2 -2
  100. data/ruby/trema/flow.rb +8 -8
  101. data/ruby/trema/hardware-switch.rb +2 -2
  102. data/ruby/trema/host.rb +18 -18
  103. data/ruby/trema/link.rb +9 -9
  104. data/ruby/trema/mac.rb +1 -5
  105. data/ruby/trema/match.c +0 -1
  106. data/ruby/trema/monkey-patch/integer.rb +3 -3
  107. data/ruby/trema/monkey-patch/integer/base-conversions.rb +1 -1
  108. data/ruby/trema/monkey-patch/integer/ranges.rb +2 -2
  109. data/ruby/trema/monkey-patch/integer/validators.rb +1 -1
  110. data/ruby/trema/monkey-patch/module.rb +2 -2
  111. data/ruby/trema/monkey-patch/module/class-method.rb +2 -2
  112. data/ruby/trema/monkey-patch/module/deprecation.rb +1 -1
  113. data/ruby/trema/monkey-patch/string.rb +1 -1
  114. data/ruby/trema/monkey-patch/string/inflectors.rb +7 -7
  115. data/ruby/trema/netns.rb +6 -6
  116. data/ruby/trema/network-component.rb +7 -7
  117. data/ruby/trema/ofctl.rb +13 -13
  118. data/ruby/trema/open-vswitch.rb +25 -25
  119. data/ruby/trema/openflow-switch.rb +1 -1
  120. data/ruby/trema/ordered-hash.rb +8 -8
  121. data/ruby/trema/packet-in.c +0 -1
  122. data/ruby/trema/packet-queue.rb +8 -8
  123. data/ruby/trema/packetin-filter.rb +9 -9
  124. data/ruby/trema/path.rb +32 -32
  125. data/ruby/trema/phost.rb +5 -5
  126. data/ruby/trema/port-mod.c +0 -1
  127. data/ruby/trema/port-stats-reply.rb +2 -2
  128. data/ruby/trema/port-status-add.rb +2 -2
  129. data/ruby/trema/port-status-delete.rb +2 -2
  130. data/ruby/trema/port-status-modify.rb +2 -2
  131. data/ruby/trema/port.c +0 -1
  132. data/ruby/trema/process.rb +7 -7
  133. data/ruby/trema/queue-stats-reply.rb +2 -2
  134. data/ruby/trema/ruby-switch.rb +6 -6
  135. data/ruby/trema/send-out-port.rb +11 -11
  136. data/ruby/trema/set-eth-addr.rb +5 -5
  137. data/ruby/trema/set-eth-dst-addr.rb +1 -1
  138. data/ruby/trema/set-eth-src-addr.rb +1 -1
  139. data/ruby/trema/set-ip-addr.rb +6 -6
  140. data/ruby/trema/set-ip-dst-addr.rb +1 -1
  141. data/ruby/trema/set-ip-src-addr.rb +1 -1
  142. data/ruby/trema/set-ip-tos.rb +6 -6
  143. data/ruby/trema/set-transport-dst-port.rb +2 -2
  144. data/ruby/trema/set-transport-port.rb +7 -7
  145. data/ruby/trema/set-transport-src-port.rb +3 -3
  146. data/ruby/trema/set-vlan-priority.rb +6 -6
  147. data/ruby/trema/set-vlan-vid.rb +6 -6
  148. data/ruby/trema/shell.rb +10 -10
  149. data/ruby/trema/shell/down.rb +3 -3
  150. data/ruby/trema/shell/killall.rb +1 -1
  151. data/ruby/trema/shell/link.rb +14 -14
  152. data/ruby/trema/shell/reset_stats.rb +6 -6
  153. data/ruby/trema/shell/run.rb +7 -7
  154. data/ruby/trema/shell/send_packets.rb +3 -3
  155. data/ruby/trema/shell/show_stats.rb +7 -7
  156. data/ruby/trema/shell/up.rb +5 -5
  157. data/ruby/trema/shell/vhost.rb +4 -4
  158. data/ruby/trema/shell/vswitch.rb +7 -7
  159. data/ruby/trema/stats-helper.rb +3 -3
  160. data/ruby/trema/stats-reply.c +0 -1
  161. data/ruby/trema/strip-vlan-header.rb +1 -1
  162. data/ruby/trema/switch-daemon.rb +9 -9
  163. data/ruby/trema/switch-manager.rb +9 -9
  164. data/ruby/trema/switch.rb +7 -7
  165. data/ruby/trema/table-stats-reply.rb +2 -2
  166. data/ruby/trema/timers.rb +12 -12
  167. data/ruby/trema/trema.c +0 -1
  168. data/ruby/trema/tremashark.rb +1 -1
  169. data/ruby/trema/util.rb +25 -27
  170. data/ruby/trema/vendor-action.rb +10 -10
  171. data/ruby/trema/vendor-stats-reply.rb +2 -2
  172. data/ruby/trema/version.rb +1 -1
  173. data/spec/spec_helper.rb +50 -52
  174. data/spec/support/action.rb +9 -12
  175. data/spec/support/mandatory-option.rb +15 -18
  176. data/spec/support/matchers/constant.rb +7 -7
  177. data/spec/support/openflow-message.rb +76 -79
  178. data/spec/support/port-status.rb +7 -10
  179. data/spec/trema/app_spec.rb +27 -27
  180. data/spec/trema/barrier-reply_spec.rb +10 -10
  181. data/spec/trema/barrier-request_spec.rb +35 -35
  182. data/spec/trema/cli_spec.rb +63 -63
  183. data/spec/trema/controller_spec.rb +3 -3
  184. data/spec/trema/default-logger_spec.rb +4 -4
  185. data/spec/trema/dsl/configuration_spec.rb +47 -47
  186. data/spec/trema/dsl/link_spec.rb +11 -11
  187. data/spec/trema/dsl/run_spec.rb +19 -19
  188. data/spec/trema/dsl/runner_spec.rb +91 -91
  189. data/spec/trema/dsl/switch_spec.rb +16 -16
  190. data/spec/trema/dsl/syntax_spec.rb +22 -22
  191. data/spec/trema/dsl/vhost_spec.rb +37 -37
  192. data/spec/trema/dsl/vswitch_spec.rb +21 -21
  193. data/spec/trema/echo-reply_spec.rb +29 -29
  194. data/spec/trema/echo-request_spec.rb +54 -54
  195. data/spec/trema/enqueue_spec.rb +25 -25
  196. data/spec/trema/error_spec.rb +30 -30
  197. data/spec/trema/executables_spec.rb +20 -20
  198. data/spec/trema/features-reply_spec.rb +41 -41
  199. data/spec/trema/features-request_spec.rb +35 -35
  200. data/spec/trema/flow-mod_spec.rb +32 -32
  201. data/spec/trema/flow-removed_spec.rb +62 -62
  202. data/spec/trema/get-config-reply_spec.rb +14 -12
  203. data/spec/trema/get-config-request_spec.rb +35 -35
  204. data/spec/trema/hardware-switch_spec.rb +12 -12
  205. data/spec/trema/hello_spec.rb +17 -17
  206. data/spec/trema/host_spec.rb +71 -71
  207. data/spec/trema/link_spec.rb +13 -13
  208. data/spec/trema/list-switches-reply_spec.rb +10 -10
  209. data/spec/trema/match_spec.rb +41 -41
  210. data/spec/trema/open-vswitch_spec.rb +45 -45
  211. data/spec/trema/openflow-error_spec.rb +67 -65
  212. data/spec/trema/packet-in_spec.rb +450 -446
  213. data/spec/trema/packet-out_spec.rb +42 -42
  214. data/spec/trema/packetin-filter_spec.rb +5 -5
  215. data/spec/trema/port-mod_spec.rb +32 -32
  216. data/spec/trema/port-status-add_spec.rb +3 -3
  217. data/spec/trema/port-status-delete_spec.rb +3 -3
  218. data/spec/trema/port-status-modify_spec.rb +16 -16
  219. data/spec/trema/port-status_spec.rb +2 -2
  220. data/spec/trema/port_spec.rb +21 -21
  221. data/spec/trema/process_spec.rb +22 -22
  222. data/spec/trema/queue-get-config-reply_spec.rb +21 -20
  223. data/spec/trema/queue-get-config-request_spec.rb +24 -24
  224. data/spec/trema/send-out-port_spec.rb +42 -42
  225. data/spec/trema/set-config_spec.rb +31 -31
  226. data/spec/trema/set-eth-addr_spec.rb +21 -21
  227. data/spec/trema/set-ip-addr_spec.rb +29 -29
  228. data/spec/trema/set-ip-tos_spec.rb +26 -26
  229. data/spec/trema/set-transport-dst-port_spec.rb +22 -22
  230. data/spec/trema/set-transport-src-port_spec.rb +22 -22
  231. data/spec/trema/set-vlan-priority_spec.rb +23 -23
  232. data/spec/trema/set-vlan-vid_spec.rb +23 -23
  233. data/spec/trema/shell/vhost_spec.rb +21 -21
  234. data/spec/trema/shell/vswitch_spec.rb +30 -30
  235. data/spec/trema/stats-reply_spec.rb +183 -173
  236. data/spec/trema/stats-request_spec.rb +66 -66
  237. data/spec/trema/strip-vlan-header_spec.rb +11 -11
  238. data/spec/trema/switch-daemon_spec.rb +34 -34
  239. data/spec/trema/switch-disconnected_spec.rb +17 -17
  240. data/spec/trema/switch-manager_spec.rb +6 -6
  241. data/spec/trema/tremashark_spec.rb +4 -4
  242. data/spec/trema/util_spec.rb +35 -35
  243. data/spec/trema/vendor-action_spec.rb +26 -26
  244. data/spec/trema/vendor_spec.rb +27 -27
  245. data/spec/trema_spec.rb +2 -2
  246. data/src/examples/cbench_switch/cbench-switch.rb +3 -3
  247. data/src/examples/dumper/dumper.rb +31 -31
  248. data/src/examples/hello_trema/hello-trema.rb +2 -2
  249. data/src/examples/learning_switch/fdb.rb +14 -14
  250. data/src/examples/learning_switch/learning-switch.rb +12 -10
  251. data/src/examples/learning_switch/learning_switch.c +22 -39
  252. data/src/examples/list_switches/list-switches.rb +3 -3
  253. data/src/examples/match_compare/match-compare.rb +20 -20
  254. data/src/examples/multi_learning_switch/multi-learning-switch.rb +12 -12
  255. data/src/examples/openflow_message/echo.rb +4 -4
  256. data/src/examples/openflow_message/example.rb +7 -7
  257. data/src/examples/openflow_message/features-request.rb +31 -31
  258. data/src/examples/openflow_message/hello.rb +2 -2
  259. data/src/examples/openflow_message/set-config.rb +4 -4
  260. data/src/examples/openflow_message/vendor-action.rb +3 -3
  261. data/src/examples/openflow_message/vendor-stats-request.rb +9 -9
  262. data/src/examples/packet_in/packet-in.rb +2 -2
  263. data/src/examples/patch_panel/patch-panel.rb +9 -9
  264. data/src/examples/repeater_hub/repeater-hub.rb +4 -4
  265. data/src/examples/repeater_hub/repeater-hub_spec.rb +65 -65
  266. data/src/examples/simple_router/arp-table.rb +7 -7
  267. data/src/examples/simple_router/interface.rb +10 -10
  268. data/src/examples/simple_router/routing-table.rb +4 -4
  269. data/src/examples/simple_router/simple-router.rb +3 -3
  270. data/src/examples/switch_info/switch-info.rb +9 -9
  271. data/src/examples/switch_monitor/switch-monitor.rb +4 -4
  272. data/src/examples/traffic_monitor/counter.rb +6 -6
  273. data/src/examples/traffic_monitor/fdb.rb +4 -4
  274. data/src/examples/traffic_monitor/traffic-monitor.rb +12 -12
  275. data/src/examples/transparent_firewall/README.md +61 -0
  276. data/src/examples/transparent_firewall/aggregated-delegated-afrinic.txt +713 -0
  277. data/src/examples/transparent_firewall/aggregated-delegated-apnic.txt +3440 -0
  278. data/src/examples/transparent_firewall/aggregated-delegated-arin.txt +11342 -0
  279. data/src/examples/transparent_firewall/aggregated-delegated-lacnic.txt +1937 -0
  280. data/src/examples/transparent_firewall/aggregated-delegated-ripencc.txt +7329 -0
  281. data/src/examples/transparent_firewall/block-rfc1918.rb +86 -0
  282. data/src/examples/transparent_firewall/pass-delegated.rb +178 -0
  283. data/src/examples/transparent_firewall/regen_aggregated.sh +53 -0
  284. data/src/examples/transparent_firewall/stats-to-cidrs.rb +59 -0
  285. data/src/lib/messenger.c +14 -5
  286. data/src/lib/openflow_message.c +0 -5
  287. data/tasks/rubocop.rake +22 -0
  288. data/trema +1 -1
  289. data/trema-config +1 -1
  290. data/trema.gemspec +22 -22
  291. metadata +30 -16
@@ -16,26 +16,26 @@
16
16
  #
17
17
 
18
18
 
19
- require File.join( File.dirname( __FILE__ ), "..", "..", "spec_helper" )
20
- require "trema/dsl/link"
19
+ require File.join(File.dirname(__FILE__), '..', '..', 'spec_helper')
20
+ require 'trema/dsl/link'
21
21
 
22
22
 
23
23
  module Trema
24
24
  module DSL
25
25
  describe Link do
26
- context %[when parsing "link peerA peerB"] do
27
- it %[recognizes "link peerA peerB" directive] do
28
- expect { Link.new "Host", "Switch" }.not_to raise_error
26
+ context 'when parsing "link peerA peerB"' do
27
+ it 'recognizes "link peerA peerB" directive' do
28
+ expect { Link.new 'Host', 'Switch' }.not_to raise_error
29
29
  end
30
30
  end
31
31
 
32
32
 
33
- context "when getting attributes of a link" do
34
- it "remembers peers" do
35
- link = Link.new( "Host", "Switch" )
36
- expect( link.peers.size ).to eq( 2 )
37
- expect( link.peers ).to include( "Host" )
38
- expect( link.peers ).to include( "Switch" )
33
+ context 'when getting attributes of a link' do
34
+ it 'remembers peers' do
35
+ link = Link.new('Host', 'Switch')
36
+ expect(link.peers.size).to eq(2)
37
+ expect(link.peers).to include('Host')
38
+ expect(link.peers).to include('Switch')
39
39
  end
40
40
  end
41
41
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require File.join( File.dirname( __FILE__ ), "..", "..", "spec_helper" )
20
- require "trema/dsl/run"
19
+ require File.join(File.dirname(__FILE__), '..', '..', 'spec_helper')
20
+ require 'trema/dsl/run'
21
21
 
22
22
 
23
23
  module Trema
@@ -28,36 +28,36 @@ module Trema
28
28
  end
29
29
 
30
30
 
31
- context %[when parsing "run { ... }"] do
32
- it %[recognizes "path COMMAND_PATH" directive] do
33
- expect { @run.path "/usr/bin/tremario" }.not_to raise_error
31
+ context 'when parsing "run { ... }"' do
32
+ it 'recognizes "path COMMAND_PATH" directive' do
33
+ expect { @run.path '/usr/bin/tremario' }.not_to raise_error
34
34
  end
35
35
 
36
36
 
37
- it %[recognizes "options OPTIONS..." directive] do
38
- expect { @run.options "--verbose", "--color" }.not_to raise_error
37
+ it 'recognizes "options OPTIONS..." directive' do
38
+ expect { @run.options '--verbose', '--color' }.not_to raise_error
39
39
  end
40
40
  end
41
41
 
42
42
 
43
- context "when getting the attributes of an run" do
44
- it "returns its name" do
45
- @run.path "/usr/bin/tremario"
46
- expect( @run[ :name ] ).to eq( "tremario" )
43
+ context 'when getting the attributes of an run' do
44
+ it 'returns its name' do
45
+ @run.path '/usr/bin/tremario'
46
+ expect(@run[ :name]).to eq('tremario')
47
47
  end
48
48
 
49
49
 
50
- it "returns its path" do
51
- @run.path "/usr/bin/tremario"
52
- expect( @run[ :path ] ).to eq( "/usr/bin/tremario" )
50
+ it 'returns its path' do
51
+ @run.path '/usr/bin/tremario'
52
+ expect(@run[ :path]).to eq('/usr/bin/tremario')
53
53
  end
54
54
 
55
55
 
56
- it "returns its options" do
57
- @run.options "--verbose", "--color"
58
- expect( @run[ :options ].size ).to eq( 2 )
59
- expect( @run[ :options ] ).to include( "--verbose" )
60
- expect( @run[ :options ] ).to include( "--color" )
56
+ it 'returns its options' do
57
+ @run.options '--verbose', '--color'
58
+ expect(@run[ :options].size).to eq(2)
59
+ expect(@run[ :options]).to include('--verbose')
60
+ expect(@run[ :options]).to include('--color')
61
61
  end
62
62
  end
63
63
  end
@@ -16,28 +16,28 @@
16
16
  #
17
17
 
18
18
 
19
- require File.join( File.dirname( __FILE__ ), "..", "..", "spec_helper" )
20
- require "trema/dsl/runner"
21
- require "trema/ordered-hash"
19
+ require File.join(File.dirname(__FILE__), '..', '..', 'spec_helper')
20
+ require 'trema/dsl/runner'
21
+ require 'trema/ordered-hash'
22
22
 
23
23
 
24
24
  module Trema
25
25
  module DSL
26
26
  describe Runner do
27
27
  before :each do
28
- ::Process.stub!( :fork ).and_yield
29
- ::Process.stub!( :waitpid )
30
- @switch_manager = mock( "switch manager", :run! => nil )
31
- SwitchManager.stub!( :new ).and_return( @switch_manager )
28
+ ::Process.stub!(:fork).and_yield
29
+ ::Process.stub!(:waitpid)
30
+ @switch_manager = mock('switch manager', :run! => nil)
31
+ SwitchManager.stub!(:new).and_return(@switch_manager)
32
32
  end
33
33
 
34
34
 
35
- context "when running" do
36
- it "should run switch_manager" do
37
- @switch_manager.should_receive( :run! ).once
35
+ context 'when running' do
36
+ it 'should run switch_manager' do
37
+ @switch_manager.should_receive(:run!).once
38
38
 
39
39
  context = mock(
40
- "context",
40
+ 'context',
41
41
  :port => 6653,
42
42
  :tremashark => nil,
43
43
  :switch_manager => nil,
@@ -49,18 +49,18 @@ module Trema
49
49
  :netnss => {}
50
50
  )
51
51
 
52
- Runner.new( context ).run
52
+ Runner.new(context).run
53
53
  end
54
54
 
55
55
 
56
- it "should run packetin_filter" do
56
+ it 'should run packetin_filter' do
57
57
  packetin_filter = mock
58
- packetin_filter.should_receive( :run! ).once
58
+ packetin_filter.should_receive(:run!).once
59
59
 
60
60
  context = mock(
61
- "context",
61
+ 'context',
62
62
  :tremashark => nil,
63
- :switch_manager => mock( "switch_manager", :run! => nil ),
63
+ :switch_manager => mock('switch_manager', :run! => nil),
64
64
  :packetin_filter => packetin_filter,
65
65
  :links => {},
66
66
  :hosts => {},
@@ -70,29 +70,29 @@ module Trema
70
70
  :port => 6633
71
71
  )
72
72
 
73
- Runner.new( context ).run
73
+ Runner.new(context).run
74
74
  end
75
75
 
76
76
 
77
- it "should create links" do
78
- link0 = mock( "link0" )
79
- link0.should_receive( :delete! ).once
80
- link0.should_receive( :enable! ).once
77
+ it 'should create links' do
78
+ link0 = mock('link0')
79
+ link0.should_receive(:delete!).once
80
+ link0.should_receive(:enable!).once
81
81
 
82
- link1 = mock( "link1" )
83
- link1.should_receive( :delete! ).once
84
- link1.should_receive( :enable! ).once
82
+ link1 = mock('link1')
83
+ link1.should_receive(:delete!).once
84
+ link1.should_receive(:enable!).once
85
85
 
86
- link2 = mock( "link2" )
87
- link2.should_receive( :delete! ).once
88
- link2.should_receive( :enable! ).once
86
+ link2 = mock('link2')
87
+ link2.should_receive(:delete!).once
88
+ link2.should_receive(:enable!).once
89
89
 
90
90
  context = mock(
91
- "context",
91
+ 'context',
92
92
  :tremashark => nil,
93
- :switch_manager => mock( "switch manager", :run! => nil ),
93
+ :switch_manager => mock('switch manager', :run! => nil),
94
94
  :packetin_filter => nil,
95
- :links => { "link0" => link0, "link1" => link1, "link2" => link2 },
95
+ :links => { 'link0' => link0, 'link1' => link1, 'link2' => link2 },
96
96
  :hosts => {},
97
97
  :switches => {},
98
98
  :apps => {},
@@ -100,99 +100,99 @@ module Trema
100
100
  :port => 6633
101
101
  )
102
102
 
103
- Runner.new( context ).run
103
+ Runner.new(context).run
104
104
  end
105
105
 
106
106
 
107
- it "should run vhosts" do
108
- host0 = mock( "host0" )
109
- host1 = mock( "host1" )
110
- host2 = mock( "host2" )
107
+ it 'should run vhosts' do
108
+ host0 = mock('host0')
109
+ host1 = mock('host1')
110
+ host2 = mock('host2')
111
111
 
112
- host0.should_receive( :run! ).once
113
- host0.should_receive( :add_arp_entry ).with do | arg |
114
- expect( arg.size ).to eq( 2 )
115
- expect( arg ).to include( host1 )
116
- expect( arg ).to include( host2 )
112
+ host0.should_receive(:run!).once
113
+ host0.should_receive(:add_arp_entry).with do | arg |
114
+ expect(arg.size).to eq(2)
115
+ expect(arg).to include(host1)
116
+ expect(arg).to include(host2)
117
117
  end
118
118
 
119
- host1.should_receive( :run! ).once
120
- host1.should_receive( :add_arp_entry ).with do | arg |
121
- expect( arg.size ).to eq( 2 )
122
- expect( arg ).to include( host0 )
123
- expect( arg ).to include( host2 )
119
+ host1.should_receive(:run!).once
120
+ host1.should_receive(:add_arp_entry).with do | arg |
121
+ expect(arg.size).to eq(2)
122
+ expect(arg).to include(host0)
123
+ expect(arg).to include(host2)
124
124
  end
125
125
 
126
- host2.should_receive( :run! ).once
127
- host2.should_receive( :add_arp_entry ).with do | arg |
128
- expect( arg.size ).to eq( 2 )
129
- expect( arg ).to include( host0 )
130
- expect( arg ).to include( host1 )
126
+ host2.should_receive(:run!).once
127
+ host2.should_receive(:add_arp_entry).with do | arg |
128
+ expect(arg.size).to eq(2)
129
+ expect(arg).to include(host0)
130
+ expect(arg).to include(host1)
131
131
  end
132
132
 
133
133
  context = mock(
134
- "context",
134
+ 'context',
135
135
  :tremashark => nil,
136
- :switch_manager => mock( "switch manager", :run! => nil ),
136
+ :switch_manager => mock('switch manager', :run! => nil),
137
137
  :packetin_filter => nil,
138
138
  :links => {},
139
- :hosts => { "host0" => host0, "host1" => host1, "host2" => host2 },
139
+ :hosts => { 'host0' => host0, 'host1' => host1, 'host2' => host2 },
140
140
  :switches => {},
141
141
  :apps => {},
142
142
  :netnss => {},
143
143
  :port => 6633
144
144
  )
145
145
 
146
- Runner.new( context ).run
146
+ Runner.new(context).run
147
147
  end
148
148
 
149
149
 
150
- it "should run switches" do
151
- switch0 = mock( "switch0" )
152
- switch0.should_receive( :run! ).once
150
+ it 'should run switches' do
151
+ switch0 = mock('switch0')
152
+ switch0.should_receive(:run!).once
153
153
 
154
- switch1 = mock( "switch1" )
155
- switch1.should_receive( :run! ).once
154
+ switch1 = mock('switch1')
155
+ switch1.should_receive(:run!).once
156
156
 
157
- switch2 = mock( "switch2" )
158
- switch2.should_receive( :run! ).once
157
+ switch2 = mock('switch2')
158
+ switch2.should_receive(:run!).once
159
159
 
160
160
  context = mock(
161
- "context",
161
+ 'context',
162
162
  :tremashark => nil,
163
- :switch_manager => mock( "switch manager", :run! => nil ),
163
+ :switch_manager => mock('switch manager', :run! => nil),
164
164
  :packetin_filter => nil,
165
165
  :links => {},
166
166
  :hosts => {},
167
- :switches => { "switch0" => switch0, "switch1" => switch1, "switch 2" => switch2 },
167
+ :switches => { 'switch0' => switch0, 'switch1' => switch1, 'switch 2' => switch2 },
168
168
  :apps => {},
169
169
  :netnss => {},
170
170
  :port => 6633
171
171
  )
172
172
 
173
- Runner.new( context ).run
173
+ Runner.new(context).run
174
174
  end
175
175
 
176
176
 
177
- it "should run apps" do
177
+ it 'should run apps' do
178
178
  apps = OrderedHash.new
179
179
 
180
- app0 = mock( "app0", :name => "app0" )
181
- app0.should_receive( :daemonize! ).once.ordered
182
- apps[ "app0" ] = app0
180
+ app0 = mock('app0', :name => 'app0')
181
+ app0.should_receive(:daemonize!).once.ordered
182
+ apps[ 'app0'] = app0
183
183
 
184
- app1 = mock( "app1", :name => "app1" )
185
- app1.should_receive( :daemonize! ).once.ordered
186
- apps[ "app1" ] = app1
184
+ app1 = mock('app1', :name => 'app1')
185
+ app1.should_receive(:daemonize!).once.ordered
186
+ apps[ 'app1'] = app1
187
187
 
188
- app2 = mock( "app2", :name => "app2" )
189
- app2.should_receive( :run! ).once.ordered
190
- apps[ "app2" ] = app2
188
+ app2 = mock('app2', :name => 'app2')
189
+ app2.should_receive(:run!).once.ordered
190
+ apps[ 'app2'] = app2
191
191
 
192
192
  context = mock(
193
- "context",
193
+ 'context',
194
194
  :tremashark => nil,
195
- :switch_manager => mock( "switch manager", :run! => nil, :rule => {} ),
195
+ :switch_manager => mock('switch manager', :run! => nil, :rule => {}),
196
196
  :packetin_filter => nil,
197
197
  :links => {},
198
198
  :hosts => {},
@@ -201,29 +201,29 @@ module Trema
201
201
  :apps => apps
202
202
  )
203
203
 
204
- Runner.new( context ).run
204
+ Runner.new(context).run
205
205
  end
206
206
 
207
207
 
208
- it "should daemonize apps" do
208
+ it 'should daemonize apps' do
209
209
  apps = OrderedHash.new
210
210
 
211
- app0 = mock( "app0" )
212
- app0.should_receive( :daemonize! ).once.ordered
213
- apps[ "app0" ] = app0
211
+ app0 = mock('app0')
212
+ app0.should_receive(:daemonize!).once.ordered
213
+ apps[ 'app0'] = app0
214
214
 
215
- app1 = mock( "app1" )
216
- app1.should_receive( :daemonize! ).once.ordered
217
- apps[ "app1" ] = app1
215
+ app1 = mock('app1')
216
+ app1.should_receive(:daemonize!).once.ordered
217
+ apps[ 'app1'] = app1
218
218
 
219
- app2 = mock( "app2", :name => "App2" )
220
- app2.should_receive( :daemonize! ).once.ordered
221
- apps[ "app2" ] = app2
219
+ app2 = mock('app2', :name => 'App2')
220
+ app2.should_receive(:daemonize!).once.ordered
221
+ apps[ 'app2'] = app2
222
222
 
223
223
  context = mock(
224
- "context",
224
+ 'context',
225
225
  :tremashark => nil,
226
- :switch_manager => mock( "switch manager", :run! => nil, :rule => {} ),
226
+ :switch_manager => mock('switch manager', :run! => nil, :rule => {}),
227
227
  :packetin_filter => nil,
228
228
  :links => {},
229
229
  :hosts => {},
@@ -232,7 +232,7 @@ module Trema
232
232
  :apps => apps
233
233
  )
234
234
 
235
- Runner.new( context ).daemonize
235
+ Runner.new(context).daemonize
236
236
  end
237
237
  end
238
238
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require File.join( File.dirname( __FILE__ ), "..", "..", "spec_helper" )
20
- require "trema/dsl/switch"
19
+ require File.join(File.dirname(__FILE__), '..', '..', 'spec_helper')
20
+ require 'trema/dsl/switch'
21
21
 
22
22
 
23
23
  module Trema
@@ -28,33 +28,33 @@ module Trema
28
28
  end
29
29
 
30
30
 
31
- context %[when parsing "switch { ... }"] do
32
- it %[recognizes "dpid DATAPATH_ID" directive] do
33
- expect { @switch.dpid "0xabc" }.not_to raise_error
31
+ context 'when parsing "switch { ... }"' do
32
+ it 'recognizes "dpid DATAPATH_ID" directive' do
33
+ expect { @switch.dpid '0xabc' }.not_to raise_error
34
34
  end
35
35
 
36
36
 
37
- it %[recognizes "datapath_id DATAPATH_ID" directive] do
38
- expect { @switch.datapath_id "0xabc" }.not_to raise_error
37
+ it 'recognizes "datapath_id DATAPATH_ID" directive' do
38
+ expect { @switch.datapath_id '0xabc' }.not_to raise_error
39
39
  end
40
40
 
41
41
 
42
- it %[recognizes "ports PORT_NUMBERS" directive] do
43
- expect { @switch.ports "0-4" }.not_to raise_error
42
+ it 'recognizes "ports PORT_NUMBERS" directive' do
43
+ expect { @switch.ports '0-4' }.not_to raise_error
44
44
  end
45
45
  end
46
46
 
47
47
 
48
- context "when getting the attributes of a switch" do
49
- it "returns its dpid in long format" do
50
- @switch.dpid "0xabc"
51
- expect( @switch[ :dpid_long ] ).to eq( "0000000000000abc" )
48
+ context 'when getting the attributes of a switch' do
49
+ it 'returns its dpid in long format' do
50
+ @switch.dpid '0xabc'
51
+ expect(@switch[ :dpid_long]).to eq('0000000000000abc')
52
52
  end
53
53
 
54
54
 
55
- it "returns its dpid in short format" do
56
- @switch.dpid "0xabc"
57
- expect( @switch[ :dpid_short ] ).to eq( "0xabc" )
55
+ it 'returns its dpid in short format' do
56
+ @switch.dpid '0xabc'
57
+ expect(@switch[ :dpid_short]).to eq('0xabc')
58
58
  end
59
59
  end
60
60
  end