openflow-protocol 0.1.7 → 0.1.8

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 (182) hide show
  1. checksums.yaml +4 -4
  2. data/lib/openflow-protocol.rb +2 -1
  3. data/lib/openflow-protocol/actions/action.rb +30 -0
  4. data/lib/openflow-protocol/actions/action_enqueue.rb +16 -0
  5. data/lib/openflow-protocol/actions/action_output.rb +14 -0
  6. data/lib/openflow-protocol/actions/action_set_destination_port.rb +7 -0
  7. data/lib/openflow-protocol/actions/action_set_ip_destination.rb +7 -0
  8. data/lib/openflow-protocol/actions/action_set_ip_source.rb +13 -0
  9. data/lib/openflow-protocol/actions/action_set_ip_tos.rb +15 -0
  10. data/lib/openflow-protocol/actions/action_set_mac_destination.rb +7 -0
  11. data/lib/openflow-protocol/actions/action_set_mac_source.rb +15 -0
  12. data/lib/openflow-protocol/actions/action_set_source_port.rb +15 -0
  13. data/lib/openflow-protocol/actions/action_set_vlan_id.rb +15 -0
  14. data/lib/openflow-protocol/actions/action_set_vlan_pcp.rb +15 -0
  15. data/lib/openflow-protocol/actions/action_strip_vlan.rb +14 -0
  16. data/lib/openflow-protocol/actions/action_vendor.rb +13 -0
  17. data/lib/openflow-protocol/actions/actions.rb +9 -0
  18. data/lib/openflow-protocol/helpers/array_of_subclasses.rb +42 -0
  19. data/lib/openflow-protocol/helpers/superclass_base.rb +26 -0
  20. data/lib/openflow-protocol/messages/barrier_reply.rb +7 -0
  21. data/lib/openflow-protocol/messages/barrier_request.rb +7 -0
  22. data/lib/openflow-protocol/messages/echo_reply.rb +13 -0
  23. data/lib/openflow-protocol/messages/echo_request.rb +13 -0
  24. data/lib/openflow-protocol/messages/error.rb +69 -0
  25. data/lib/openflow-protocol/messages/features_reply.rb +44 -0
  26. data/lib/openflow-protocol/messages/features_request.rb +7 -0
  27. data/lib/openflow-protocol/messages/flow_mod.rb +24 -0
  28. data/lib/openflow-protocol/messages/flow_removed.rb +27 -0
  29. data/lib/openflow-protocol/messages/get_config_reply.rb +16 -0
  30. data/lib/openflow-protocol/messages/get_config_request.rb +7 -0
  31. data/lib/openflow-protocol/messages/hello.rb +7 -0
  32. data/lib/openflow-protocol/messages/message.rb +49 -0
  33. data/lib/openflow-protocol/messages/packet_in.rb +27 -0
  34. data/lib/openflow-protocol/messages/packet_out.rb +17 -0
  35. data/lib/openflow-protocol/messages/parser.rb +26 -0
  36. data/lib/openflow-protocol/messages/port_mod.rb +19 -0
  37. data/lib/openflow-protocol/messages/port_status.rb +18 -0
  38. data/lib/openflow-protocol/messages/queue_get_config_reply.rb +18 -0
  39. data/lib/openflow-protocol/messages/queue_get_config_request.rb +15 -0
  40. data/lib/openflow-protocol/messages/set_config.rb +7 -0
  41. data/lib/openflow-protocol/messages/statistics.rb +28 -0
  42. data/lib/openflow-protocol/messages/statistics/aggregate_statistics_reply.rb +14 -0
  43. data/lib/openflow-protocol/messages/statistics/aggregate_statistics_request.rb +7 -0
  44. data/lib/openflow-protocol/messages/statistics/description_statistics.rb +32 -0
  45. data/lib/openflow-protocol/messages/statistics/flow_statistics_reply.rb +25 -0
  46. data/lib/openflow-protocol/messages/statistics/flow_statistics_request.rb +14 -0
  47. data/lib/openflow-protocol/messages/statistics/port_statistics_reply.rb +24 -0
  48. data/lib/openflow-protocol/messages/statistics/port_statistics_request.rb +12 -0
  49. data/lib/openflow-protocol/messages/statistics/queue_statistics_reply.rb +16 -0
  50. data/lib/openflow-protocol/messages/statistics/queue_statistics_request.rb +13 -0
  51. data/lib/openflow-protocol/messages/statistics/table_statistics.rb +20 -0
  52. data/lib/openflow-protocol/messages/statistics/vendor_statistics.rb +11 -0
  53. data/lib/openflow-protocol/messages/statistics_reply.rb +26 -0
  54. data/lib/openflow-protocol/messages/statistics_request.rb +18 -0
  55. data/lib/openflow-protocol/messages/vendor.rb +14 -0
  56. data/lib/openflow-protocol/structs/match.rb +106 -0
  57. data/lib/openflow-protocol/structs/packet_queue.rb +14 -0
  58. data/lib/openflow-protocol/structs/physical_port.rb +50 -0
  59. data/lib/openflow-protocol/structs/port_number.rb +49 -0
  60. data/lib/openflow-protocol/structs/queue_properties/queue_properties.rb +9 -0
  61. data/lib/openflow-protocol/structs/queue_properties/queue_property.rb +20 -0
  62. data/lib/openflow-protocol/structs/queue_properties/queue_property_min_rate.rb +30 -0
  63. data/lib/openflow-protocol/structs/queue_properties/queue_property_none.rb +7 -0
  64. data/lib/openflow-protocol/version.rb +1 -1
  65. data/spec/actions/action_enqueue_spec.rb +4 -6
  66. data/spec/actions/action_output_spec.rb +4 -6
  67. data/spec/actions/action_set_destination_port_spec.rb +4 -6
  68. data/spec/actions/action_set_ip_destination_spec.rb +4 -6
  69. data/spec/actions/action_set_ip_source_spec.rb +4 -6
  70. data/spec/actions/action_set_ip_tos_spec.rb +4 -6
  71. data/spec/actions/action_set_mac_destination_spec.rb +4 -6
  72. data/spec/actions/action_set_mac_source_spec.rb +4 -6
  73. data/spec/actions/action_set_source_port_spec.rb +4 -6
  74. data/spec/actions/action_set_vlan_id_spec.rb +4 -6
  75. data/spec/actions/action_set_vlan_pcp_spec.rb +4 -6
  76. data/spec/actions/action_strip_vlan_spec.rb +3 -5
  77. data/spec/actions/action_vendor_spec.rb +4 -6
  78. data/spec/actions/actions_spec.rb +6 -8
  79. data/spec/messages/barrier_reply_spec.rb +9 -11
  80. data/spec/messages/barrier_request_spec.rb +9 -11
  81. data/spec/messages/echo_reply_spec.rb +13 -15
  82. data/spec/messages/echo_request_spec.rb +16 -18
  83. data/spec/messages/error_spec.rb +23 -20
  84. data/spec/messages/features_reply_spec.rb +11 -13
  85. data/spec/messages/features_request_spec.rb +9 -11
  86. data/spec/messages/flow_mod_spec.rb +12 -14
  87. data/spec/messages/flow_removed_spec.rb +9 -11
  88. data/spec/messages/get_config_reply_spec.rb +9 -11
  89. data/spec/messages/get_config_request_spec.rb +9 -11
  90. data/spec/messages/hello_spec.rb +9 -11
  91. data/spec/messages/packet_in_spec.rb +9 -11
  92. data/spec/messages/packet_out_spec.rb +10 -12
  93. data/spec/messages/parser_spec.rb +7 -9
  94. data/spec/messages/port_mod_spec.rb +9 -11
  95. data/spec/messages/port_status_spec.rb +10 -12
  96. data/spec/messages/queue_get_config_reply_spec.rb +9 -11
  97. data/spec/messages/queue_get_config_request_spec.rb +9 -11
  98. data/spec/messages/set_config_spec.rb +9 -11
  99. data/spec/messages/statistics/aggregate_statistics_reply_spec.rb +4 -6
  100. data/spec/messages/statistics/aggregate_statistics_request_spec.rb +4 -6
  101. data/spec/messages/statistics/description_statistics_spec.rb +11 -9
  102. data/spec/messages/statistics/flow_statistics_reply_spec.rb +4 -6
  103. data/spec/messages/statistics/flow_statistics_request_spec.rb +4 -6
  104. data/spec/messages/statistics/port_statistics_reply_spec.rb +4 -6
  105. data/spec/messages/statistics/port_statistics_request_spec.rb +4 -6
  106. data/spec/messages/statistics/queue_statistics_reply_spec.rb +4 -6
  107. data/spec/messages/statistics/queue_statistics_request_spec.rb +4 -6
  108. data/spec/messages/statistics/table_statistics_spec.rb +4 -6
  109. data/spec/messages/statistics/vendor_statistics_spec.rb +4 -6
  110. data/spec/messages/statistics_reply_spec.rb +62 -64
  111. data/spec/messages/statistics_request_spec.rb +45 -47
  112. data/spec/messages/vendor_spec.rb +13 -15
  113. data/spec/spec_helper.rb +1 -1
  114. data/spec/structs/match_spec.rb +7 -9
  115. data/spec/structs/packet_queue_spec.rb +5 -7
  116. data/spec/structs/physical_port_spec.rb +16 -18
  117. data/spec/structs/port_number_spec.rb +11 -13
  118. data/spec/structs/queue_properties/queue_properties_spec.rb +5 -7
  119. data/spec/structs/queue_properties/queue_property_min_rate_spec.rb +5 -7
  120. data/spec/structs/queue_properties/queue_property_none_spec.rb +3 -5
  121. metadata +78 -64
  122. data/lib/actions/action.rb +0 -26
  123. data/lib/actions/action_enqueue.rb +0 -12
  124. data/lib/actions/action_output.rb +0 -10
  125. data/lib/actions/action_set_destination_port.rb +0 -3
  126. data/lib/actions/action_set_ip_destination.rb +0 -3
  127. data/lib/actions/action_set_ip_source.rb +0 -9
  128. data/lib/actions/action_set_ip_tos.rb +0 -11
  129. data/lib/actions/action_set_mac_destination.rb +0 -3
  130. data/lib/actions/action_set_mac_source.rb +0 -11
  131. data/lib/actions/action_set_source_port.rb +0 -11
  132. data/lib/actions/action_set_vlan_id.rb +0 -11
  133. data/lib/actions/action_set_vlan_pcp.rb +0 -11
  134. data/lib/actions/action_strip_vlan.rb +0 -10
  135. data/lib/actions/action_vendor.rb +0 -9
  136. data/lib/actions/actions.rb +0 -5
  137. data/lib/helpers/array_of_subclasses.rb +0 -38
  138. data/lib/helpers/superclass_base.rb +0 -24
  139. data/lib/messages/barrier_reply.rb +0 -3
  140. data/lib/messages/barrier_request.rb +0 -3
  141. data/lib/messages/echo_reply.rb +0 -9
  142. data/lib/messages/echo_request.rb +0 -9
  143. data/lib/messages/error.rb +0 -61
  144. data/lib/messages/features_reply.rb +0 -40
  145. data/lib/messages/features_request.rb +0 -3
  146. data/lib/messages/flow_mod.rb +0 -20
  147. data/lib/messages/flow_removed.rb +0 -23
  148. data/lib/messages/get_config_reply.rb +0 -12
  149. data/lib/messages/get_config_request.rb +0 -3
  150. data/lib/messages/hello.rb +0 -3
  151. data/lib/messages/message.rb +0 -45
  152. data/lib/messages/packet_in.rb +0 -23
  153. data/lib/messages/packet_out.rb +0 -13
  154. data/lib/messages/parser.rb +0 -22
  155. data/lib/messages/port_mod.rb +0 -15
  156. data/lib/messages/port_status.rb +0 -14
  157. data/lib/messages/queue_get_config_reply.rb +0 -14
  158. data/lib/messages/queue_get_config_request.rb +0 -11
  159. data/lib/messages/set_config.rb +0 -3
  160. data/lib/messages/statistics.rb +0 -24
  161. data/lib/messages/statistics/aggregate_statistics_reply.rb +0 -10
  162. data/lib/messages/statistics/aggregate_statistics_request.rb +0 -3
  163. data/lib/messages/statistics/description_statistics.rb +0 -28
  164. data/lib/messages/statistics/flow_statistics_reply.rb +0 -21
  165. data/lib/messages/statistics/flow_statistics_request.rb +0 -10
  166. data/lib/messages/statistics/port_statistics_reply.rb +0 -20
  167. data/lib/messages/statistics/port_statistics_request.rb +0 -8
  168. data/lib/messages/statistics/queue_statistics_reply.rb +0 -12
  169. data/lib/messages/statistics/queue_statistics_request.rb +0 -9
  170. data/lib/messages/statistics/table_statistics.rb +0 -16
  171. data/lib/messages/statistics/vendor_statistics.rb +0 -7
  172. data/lib/messages/statistics_reply.rb +0 -22
  173. data/lib/messages/statistics_request.rb +0 -14
  174. data/lib/messages/vendor.rb +0 -10
  175. data/lib/structs/match.rb +0 -102
  176. data/lib/structs/packet_queue.rb +0 -10
  177. data/lib/structs/physical_port.rb +0 -46
  178. data/lib/structs/port_number.rb +0 -45
  179. data/lib/structs/queue_properties/queue_properties.rb +0 -5
  180. data/lib/structs/queue_properties/queue_property.rb +0 -16
  181. data/lib/structs/queue_properties/queue_property_min_rate.rb +0 -26
  182. data/lib/structs/queue_properties/queue_property_none.rb +0 -3
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionEnqueue do
1
+ describe OpenFlow::Protocol::ActionEnqueue do
4
2
  it 'should read binary' do
5
- action = OFActionEnqueue.read [
3
+ action = OpenFlow::Protocol::ActionEnqueue.read [
6
4
  0, 11, 0, 16, # header
7
5
  0, 1, # port
8
6
  0, 0, 0, 0, 0, 0, # padding
@@ -14,14 +12,14 @@ describe OFActionEnqueue do
14
12
  expect(action.queue_id).to eq(1)
15
13
  end
16
14
  it 'should initialize with default values' do
17
- action = OFActionEnqueue.new
15
+ action = OpenFlow::Protocol::ActionEnqueue.new
18
16
  expect(action.type).to eq(:enqueue)
19
17
  expect(action.len).to eq(16)
20
18
  expect(action.port).to eq(:none)
21
19
  expect(action.queue_id).to eq(0)
22
20
  end
23
21
  it 'should initialize with some values' do
24
- action = OFActionEnqueue.new(port: 1, queue_id: 1)
22
+ action = OpenFlow::Protocol::ActionEnqueue.new(port: 1, queue_id: 1)
25
23
  expect(action.type).to eq(:enqueue)
26
24
  expect(action.len).to eq(16)
27
25
  expect(action.port).to eq(1)
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionOutput do
1
+ describe OpenFlow::Protocol::ActionOutput do
4
2
  it 'should read binary' do
5
- action = OFActionOutput.read [
3
+ action = OpenFlow::Protocol::ActionOutput.read [
6
4
  0, 0, 0, 8, # header
7
5
  0, 1, # port
8
6
  0xff, 0xff # max_length
@@ -13,14 +11,14 @@ describe OFActionOutput do
13
11
  expect(action.max_length).to eq(0xffff)
14
12
  end
15
13
  it 'should initialize with default values' do
16
- action = OFActionOutput.new
14
+ action = OpenFlow::Protocol::ActionOutput.new
17
15
  expect(action.type).to eq(:output)
18
16
  expect(action.len).to eq(8)
19
17
  expect(action.port).to eq(:none)
20
18
  expect(action.max_length).to eq(0xffff)
21
19
  end
22
20
  it 'should initialize with some values' do
23
- action = OFActionOutput.new(port: 1)
21
+ action = OpenFlow::Protocol::ActionOutput.new(port: 1)
24
22
  expect(action.type).to eq(:output)
25
23
  expect(action.len).to eq(8)
26
24
  expect(action.port).to eq(1)
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionSetDestinationPort do
1
+ describe OpenFlow::Protocol::ActionSetDestinationPort do
4
2
  it 'should read binary' do
5
- action = OFActionSetDestinationPort.read [
3
+ action = OpenFlow::Protocol::ActionSetDestinationPort.read [
6
4
  0, 10, 0, 8, # header
7
5
  0, 1, # port
8
6
  0, 0 # padding
@@ -12,13 +10,13 @@ describe OFActionSetDestinationPort do
12
10
  expect(action.port).to eq(1)
13
11
  end
14
12
  it 'should initialize with default values' do
15
- action = OFActionSetDestinationPort.new
13
+ action = OpenFlow::Protocol::ActionSetDestinationPort.new
16
14
  expect(action.type).to eq(:set_destination_port)
17
15
  expect(action.len).to eq(8)
18
16
  expect(action.port).to eq(0)
19
17
  end
20
18
  it 'should initialize with some values' do
21
- action = OFActionSetDestinationPort.new(port: 1)
19
+ action = OpenFlow::Protocol::ActionSetDestinationPort.new(port: 1)
22
20
  expect(action.type).to eq(:set_destination_port)
23
21
  expect(action.len).to eq(8)
24
22
  expect(action.port).to eq(1)
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionSetIpDestination do
1
+ describe OpenFlow::Protocol::ActionSetIpDestination do
4
2
  it 'should read binary' do
5
- action = OFActionSetIpDestination.read [
3
+ action = OpenFlow::Protocol::ActionSetIpDestination.read [
6
4
  0, 7, 0, 8, # header
7
5
  10, 0, 0, 1 # ip_address
8
6
  ].pack('C*')
@@ -11,13 +9,13 @@ describe OFActionSetIpDestination do
11
9
  expect(action.ip_address).to eq('10.0.0.1')
12
10
  end
13
11
  it 'should initialize with default values' do
14
- action = OFActionSetIpDestination.new
12
+ action = OpenFlow::Protocol::ActionSetIpDestination.new
15
13
  expect(action.type).to eq(:set_ip_destination)
16
14
  expect(action.len).to eq(8)
17
15
  expect(action.ip_address).to eq('0.0.0.0')
18
16
  end
19
17
  it 'should initialize with some values' do
20
- action = OFActionSetIpDestination.new(ip_address: '10.0.0.1')
18
+ action = OpenFlow::Protocol::ActionSetIpDestination.new(ip_address: '10.0.0.1')
21
19
  expect(action.type).to eq(:set_ip_destination)
22
20
  expect(action.len).to eq(8)
23
21
  expect(action.ip_address).to eq('10.0.0.1')
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionSetIpSource do
1
+ describe OpenFlow::Protocol::ActionSetIpSource do
4
2
  it 'should read binary' do
5
- action = OFActionSetIpSource.read [
3
+ action = OpenFlow::Protocol::ActionSetIpSource.read [
6
4
  0, 6, 0, 8, # header
7
5
  10, 0, 0, 1 # ip_address
8
6
  ].pack('C*')
@@ -11,13 +9,13 @@ describe OFActionSetIpSource do
11
9
  expect(action.ip_address).to eq('10.0.0.1')
12
10
  end
13
11
  it 'should initialize with default values' do
14
- action = OFActionSetIpSource.new
12
+ action = OpenFlow::Protocol::ActionSetIpSource.new
15
13
  expect(action.type).to eq(:set_ip_source)
16
14
  expect(action.len).to eq(8)
17
15
  expect(action.ip_address).to eq('0.0.0.0')
18
16
  end
19
17
  it 'should initialize with some values' do
20
- action = OFActionSetIpSource.new(ip_address: '10.0.0.1')
18
+ action = OpenFlow::Protocol::ActionSetIpSource.new(ip_address: '10.0.0.1')
21
19
  expect(action.type).to eq(:set_ip_source)
22
20
  expect(action.len).to eq(8)
23
21
  expect(action.ip_address).to eq('10.0.0.1')
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionSetIpTos do
1
+ describe OpenFlow::Protocol::ActionSetIpTos do
4
2
  it 'should read binary' do
5
- action = OFActionSetIpTos.read [
3
+ action = OpenFlow::Protocol::ActionSetIpTos.read [
6
4
  0, 8, 0, 8, # header
7
5
  10, # tos
8
6
  0, 0, 0 # padding
@@ -12,13 +10,13 @@ describe OFActionSetIpTos do
12
10
  expect(action.tos).to eq(10)
13
11
  end
14
12
  it 'should initialize with default values' do
15
- action = OFActionSetIpTos.new
13
+ action = OpenFlow::Protocol::ActionSetIpTos.new
16
14
  expect(action.type).to eq(:set_ip_tos)
17
15
  expect(action.len).to eq(8)
18
16
  expect(action.tos).to eq(0)
19
17
  end
20
18
  it 'should initialize with some values' do
21
- action = OFActionSetIpTos.new(tos: 10)
19
+ action = OpenFlow::Protocol::ActionSetIpTos.new(tos: 10)
22
20
  expect(action.type).to eq(:set_ip_tos)
23
21
  expect(action.len).to eq(8)
24
22
  expect(action.tos).to eq(10)
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionSetMacDestination do
1
+ describe OpenFlow::Protocol::ActionSetMacDestination do
4
2
  it 'should read binary' do
5
- action = OFActionSetMacDestination.read [
3
+ action = OpenFlow::Protocol::ActionSetMacDestination.read [
6
4
  0, 5, 0, 16, # header
7
5
  0, 0, 0, 0, 0, 1, # mac_address
8
6
  0, 0, 0, 0, 0, 0 # padding
@@ -12,13 +10,13 @@ describe OFActionSetMacDestination do
12
10
  expect(action.mac_address).to eq('00:00:00:00:00:01')
13
11
  end
14
12
  it 'should initialize with default values' do
15
- action = OFActionSetMacDestination.new
13
+ action = OpenFlow::Protocol::ActionSetMacDestination.new
16
14
  expect(action.type).to eq(:set_mac_destination)
17
15
  expect(action.len).to eq(16)
18
16
  expect(action.mac_address).to eq('00:00:00:00:00:00')
19
17
  end
20
18
  it 'should initialize with some values' do
21
- action = OFActionSetMacDestination.new(mac_address: '00:00:00:00:00:01')
19
+ action = OpenFlow::Protocol::ActionSetMacDestination.new(mac_address: '00:00:00:00:00:01')
22
20
  expect(action.type).to eq(:set_mac_destination)
23
21
  expect(action.len).to eq(16)
24
22
  expect(action.mac_address).to eq('00:00:00:00:00:01')
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionSetMacSource do
1
+ describe OpenFlow::Protocol::ActionSetMacSource do
4
2
  it 'should read binary' do
5
- action = OFActionSetMacSource.read [
3
+ action = OpenFlow::Protocol::ActionSetMacSource.read [
6
4
  0, 4, 0, 16, # header
7
5
  0, 0, 0, 0, 0, 1, # mac_address
8
6
  0, 0, 0, 0, 0, 0 # padding
@@ -12,13 +10,13 @@ describe OFActionSetMacSource do
12
10
  expect(action.mac_address).to eq('00:00:00:00:00:01')
13
11
  end
14
12
  it 'should initialize with default values' do
15
- action = OFActionSetMacSource.new
13
+ action = OpenFlow::Protocol::ActionSetMacSource.new
16
14
  expect(action.type).to eq(:set_mac_source)
17
15
  expect(action.len).to eq(16)
18
16
  expect(action.mac_address).to eq('00:00:00:00:00:00')
19
17
  end
20
18
  it 'should initialize with some values' do
21
- action = OFActionSetMacSource.new(mac_address: '00:00:00:00:00:01')
19
+ action = OpenFlow::Protocol::ActionSetMacSource.new(mac_address: '00:00:00:00:00:01')
22
20
  expect(action.type).to eq(:set_mac_source)
23
21
  expect(action.len).to eq(16)
24
22
  expect(action.mac_address).to eq('00:00:00:00:00:01')
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionSetSourcePort do
1
+ describe OpenFlow::Protocol::ActionSetSourcePort do
4
2
  it 'should read binary' do
5
- action = OFActionSetSourcePort.read [
3
+ action = OpenFlow::Protocol::ActionSetSourcePort.read [
6
4
  0, 9, 0, 8, # header
7
5
  0, 1, # port
8
6
  0, 0 # padding
@@ -12,13 +10,13 @@ describe OFActionSetSourcePort do
12
10
  expect(action.port).to eq(1)
13
11
  end
14
12
  it 'should initialize with default values' do
15
- action = OFActionSetSourcePort.new
13
+ action = OpenFlow::Protocol::ActionSetSourcePort.new
16
14
  expect(action.type).to eq(:set_source_port)
17
15
  expect(action.len).to eq(8)
18
16
  expect(action.port).to eq(0)
19
17
  end
20
18
  it 'should initialize with some values' do
21
- action = OFActionSetSourcePort.new(port: 1)
19
+ action = OpenFlow::Protocol::ActionSetSourcePort.new(port: 1)
22
20
  expect(action.type).to eq(:set_source_port)
23
21
  expect(action.len).to eq(8)
24
22
  expect(action.port).to eq(1)
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionSetVlanId do
1
+ describe OpenFlow::Protocol::ActionSetVlanId do
4
2
  it 'should read binary' do
5
- action = OFActionSetVlanId.read [
3
+ action = OpenFlow::Protocol::ActionSetVlanId.read [
6
4
  0, 1, 0, 8, # header
7
5
  0, 1, # vlan_id
8
6
  0, 0 # padding
@@ -12,13 +10,13 @@ describe OFActionSetVlanId do
12
10
  expect(action.vlan_id).to eq(1)
13
11
  end
14
12
  it 'should initialize with default values' do
15
- action = OFActionSetVlanId.new
13
+ action = OpenFlow::Protocol::ActionSetVlanId.new
16
14
  expect(action.type).to eq(:set_vlan_id)
17
15
  expect(action.len).to eq(8)
18
16
  expect(action.vlan_id).to eq(0)
19
17
  end
20
18
  it 'should initialize with some values' do
21
- action = OFActionSetVlanId.new(vlan_id: 1)
19
+ action = OpenFlow::Protocol::ActionSetVlanId.new(vlan_id: 1)
22
20
  expect(action.type).to eq(:set_vlan_id)
23
21
  expect(action.len).to eq(8)
24
22
  expect(action.vlan_id).to eq(1)
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionSetVlanPcp do
1
+ describe OpenFlow::Protocol::ActionSetVlanPcp do
4
2
  it 'should read binary' do
5
- action = OFActionSetVlanPcp.read [
3
+ action = OpenFlow::Protocol::ActionSetVlanPcp.read [
6
4
  0, 2, 0, 8, # header
7
5
  1, # vlan_pcp
8
6
  0, 0, 0 # padding
@@ -12,13 +10,13 @@ describe OFActionSetVlanPcp do
12
10
  expect(action.vlan_pcp).to eq(1)
13
11
  end
14
12
  it 'should initialize with default values' do
15
- action = OFActionSetVlanPcp.new
13
+ action = OpenFlow::Protocol::ActionSetVlanPcp.new
16
14
  expect(action.type).to eq(:set_vlan_pcp)
17
15
  expect(action.len).to eq(8)
18
16
  expect(action.vlan_pcp).to eq(0)
19
17
  end
20
18
  it 'should initialize with some values' do
21
- action = OFActionSetVlanPcp.new(vlan_pcp: 1)
19
+ action = OpenFlow::Protocol::ActionSetVlanPcp.new(vlan_pcp: 1)
22
20
  expect(action.type).to eq(:set_vlan_pcp)
23
21
  expect(action.len).to eq(8)
24
22
  expect(action.vlan_pcp).to eq(1)
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionStripVlan do
1
+ describe OpenFlow::Protocol::ActionStripVlan do
4
2
  it 'should read binary' do
5
- action = OFActionStripVlan.read [
3
+ action = OpenFlow::Protocol::ActionStripVlan.read [
6
4
  0, 3, 0, 8, # header
7
5
  0, 0, 0, 0 # padding
8
6
  ].pack('C*')
@@ -10,7 +8,7 @@ describe OFActionStripVlan do
10
8
  expect(action.len).to eq(8)
11
9
  end
12
10
  it 'should initialize with default values' do
13
- action = OFActionStripVlan.new
11
+ action = OpenFlow::Protocol::ActionStripVlan.new
14
12
  expect(action.type).to eq(:strip_vlan)
15
13
  expect(action.len).to eq(8)
16
14
  end
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActionVendor do
1
+ describe OpenFlow::Protocol::ActionVendor do
4
2
  it 'should read binary' do
5
- action = OFActionVendor.read [
3
+ action = OpenFlow::Protocol::ActionVendor.read [
6
4
  0xff, 0xff, 0, 8, # header
7
5
  0, 0, 0, 1 # vendor
8
6
  ].pack('C*')
@@ -11,13 +9,13 @@ describe OFActionVendor do
11
9
  expect(action.vendor).to eq(1)
12
10
  end
13
11
  it 'should initialize with default values' do
14
- action = OFActionVendor.new
12
+ action = OpenFlow::Protocol::ActionVendor.new
15
13
  expect(action.type).to eq(:vendor)
16
14
  expect(action.len).to eq(8)
17
15
  expect(action.vendor).to eq(0)
18
16
  end
19
17
  it 'should initialize with some values' do
20
- action = OFActionVendor.new(vendor: 1)
18
+ action = OpenFlow::Protocol::ActionVendor.new(vendor: 1)
21
19
  expect(action.type).to eq(:vendor)
22
20
  expect(action.len).to eq(8)
23
21
  expect(action.vendor).to eq(1)
@@ -1,8 +1,6 @@
1
- require 'spec_helper'
2
-
3
- describe OFActions do
1
+ describe OpenFlow::Protocol::Actions do
4
2
  it 'should read binary' do
5
- actions = OFActions.read [
3
+ actions = OpenFlow::Protocol::Actions.read [
6
4
  # output
7
5
  0, 0, 0, 8, # header
8
6
  0, 1, # port
@@ -18,13 +16,13 @@ describe OFActions do
18
16
  expect(actions.last.type).to eq(:enqueue)
19
17
  end
20
18
  it 'should initialize with default values' do
21
- actions = OFActions.new
19
+ actions = OpenFlow::Protocol::Actions.new
22
20
  expect(actions).to be_empty
23
21
  end
24
22
  it 'should initialize with some values' do
25
- actions = OFActions.new([
26
- OFActionOutput.new(port: 1, max_length: 0xffff),
27
- OFActionEnqueue.new(port: 1, queue_id: 1)
23
+ actions = OpenFlow::Protocol::Actions.new([
24
+ OpenFlow::Protocol::ActionOutput.new(port: 1, max_length: 0xffff),
25
+ OpenFlow::Protocol::ActionEnqueue.new(port: 1, queue_id: 1)
28
26
  ])
29
27
  expect(actions.length).to eq(2)
30
28
  expect(actions.first.type).to eq(:output)
@@ -1,29 +1,27 @@
1
- require 'spec_helper'
2
-
3
- describe OFBarrierReply do
1
+ describe OpenFlow::Protocol::BarrierReply do
4
2
  let(:data) { [1, 19, 0, 8, 0, 0, 0, 1].pack('C*') }
5
3
 
6
4
  it 'should read binary' do
7
- msg = OFBarrierReply.read(data)
8
- expect(msg.version).to eq(OFMessage::OFP_VERSION)
5
+ msg = OpenFlow::Protocol::BarrierReply.read(data)
6
+ expect(msg.version).to eq(OpenFlow::Protocol::Message::OFP_VERSION)
9
7
  expect(msg.type).to eq(:barrier_reply)
10
8
  expect(msg.len).to eq(8)
11
9
  expect(msg.xid).to eq(1)
12
10
  end
13
11
  it 'should be parsable' do
14
- msg = OFParser.read(data)
15
- expect(msg.class).to eq(OFBarrierReply)
12
+ msg = OpenFlow::Protocol::Parser.read(data)
13
+ expect(msg.class).to eq(OpenFlow::Protocol::BarrierReply)
16
14
  end
17
15
  it 'should initialize with default values' do
18
- msg = OFBarrierReply.new
19
- expect(msg.version).to eq(OFMessage::OFP_VERSION)
16
+ msg = OpenFlow::Protocol::BarrierReply.new
17
+ expect(msg.version).to eq(OpenFlow::Protocol::Message::OFP_VERSION)
20
18
  expect(msg.type).to eq(:barrier_reply)
21
19
  expect(msg.len).to eq(8)
22
20
  expect(msg.xid).to eq(0)
23
21
  end
24
22
  it 'should initialize with some values' do
25
- msg = OFBarrierReply.new(xid: 1)
26
- expect(msg.version).to eq(OFMessage::OFP_VERSION)
23
+ msg = OpenFlow::Protocol::BarrierReply.new(xid: 1)
24
+ expect(msg.version).to eq(OpenFlow::Protocol::Message::OFP_VERSION)
27
25
  expect(msg.type).to eq(:barrier_reply)
28
26
  expect(msg.len).to eq(8)
29
27
  expect(msg.xid).to eq(1)
@@ -1,29 +1,27 @@
1
- require 'spec_helper'
2
-
3
- describe OFBarrierRequest do
1
+ describe OpenFlow::Protocol::BarrierRequest do
4
2
  let(:data) { [1, 18, 0, 8, 0, 0, 0, 1].pack('C*') }
5
3
 
6
4
  it 'should read binary' do
7
- msg = OFBarrierRequest.read(data)
8
- expect(msg.version).to eq(OFMessage::OFP_VERSION)
5
+ msg = OpenFlow::Protocol::BarrierRequest.read(data)
6
+ expect(msg.version).to eq(OpenFlow::Protocol::Message::OFP_VERSION)
9
7
  expect(msg.type).to eq(:barrier_request)
10
8
  expect(msg.len).to eq(8)
11
9
  expect(msg.xid).to eq(1)
12
10
  end
13
11
  it 'should be parsable' do
14
- msg = OFParser.read(data)
15
- expect(msg.class).to eq(OFBarrierRequest)
12
+ msg = OpenFlow::Protocol::Parser.read(data)
13
+ expect(msg.class).to eq(OpenFlow::Protocol::BarrierRequest)
16
14
  end
17
15
  it 'should initialize with default values' do
18
- msg = OFBarrierRequest.new
19
- expect(msg.version).to eq(OFMessage::OFP_VERSION)
16
+ msg = OpenFlow::Protocol::BarrierRequest.new
17
+ expect(msg.version).to eq(OpenFlow::Protocol::Message::OFP_VERSION)
20
18
  expect(msg.type).to eq(:barrier_request)
21
19
  expect(msg.len).to eq(8)
22
20
  expect(msg.xid).to eq(0)
23
21
  end
24
22
  it 'should initialize with some values' do
25
- msg = OFBarrierRequest.new(xid: 1)
26
- expect(msg.version).to eq(OFMessage::OFP_VERSION)
23
+ msg = OpenFlow::Protocol::BarrierRequest.new(xid: 1)
24
+ expect(msg.version).to eq(OpenFlow::Protocol::Message::OFP_VERSION)
27
25
  expect(msg.type).to eq(:barrier_request)
28
26
  expect(msg.len).to eq(8)
29
27
  expect(msg.xid).to eq(1)