pio 0.24.1 → 0.24.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 875eb387b602d14772ebf2318b27083d6a49698c
4
- data.tar.gz: 5075f0510a46adb49cc0da63c67db3c7244d73fd
3
+ metadata.gz: d25e470a4443ef4ba0a44d6221ecf050a07c0dd7
4
+ data.tar.gz: 0517d69386f0c41461972a38595568c47008bff8
5
5
  SHA512:
6
- metadata.gz: 422c2899f2b14c517c65fd18183d455121cd646465faa721fa77c5b12fb711bd49e5331c64066064545c7a632d13e957e20c32a46e5d5832205bb008cf439da8
7
- data.tar.gz: 4dac41f867d056e79cbf5c3afb88c163599a071f1748400f38f9de91f7842506b69aa3f25fdbdeea969ce3214e48a99a8b8514f2ed2b22fc35faaf4b033429e8
6
+ metadata.gz: dc580a7a68608c3785887da4412f35a38d526eb7cd9f256bb31511884f22e05a876165f679a8d7f2bf184e07c97dcad8c550564d8964b38c7a35cdf644a5260e
7
+ data.tar.gz: 82804fa39e8f8ce0934475c6cca8ea1bd93b9543548e2296e2b841cb9c8dfcd98eb941f3c5cb858a8f7863415efe3c03410571ff952d17e67e9c4faeedf00b32
@@ -3,6 +3,11 @@
3
3
  ## develop (unreleased)
4
4
 
5
5
 
6
+ ## 0.24.2 (8/4/2015)
7
+ ### Bugs fixed
8
+ * [#209](https://github.com/trema/pio/issues/209): `Pio::OpenFlow.read` cannot parse Barrier messages.
9
+
10
+
6
11
  ## 0.24.1 (8/4/2015)
7
12
  ### Bugs fixed
8
13
  * [#208](https://github.com/trema/pio/issues/208): `Pio::FlowMod.new` doesn't allow `:idle_timeout` and `:hard_timeout` options.
@@ -1,43 +1,14 @@
1
1
  Feature: Pio::OpenFlow.read
2
- Scenario: Hello
3
- Given I switch the Pio::OpenFlow version to "OpenFlow10"
4
- When I try to parse a file named "open_flow10/hello.raw" with "OpenFlow" class
5
- Then it should finish successfully
6
- And the message should be a "Pio::OpenFlow10::Hello"
7
-
8
- Scenario: Echo::Request
9
- Given I switch the Pio::OpenFlow version to "OpenFlow10"
10
- When I try to parse a file named "open_flow10/echo_request.raw" with "OpenFlow" class
11
- Then it should finish successfully
12
- And the message should be a "Pio::OpenFlow10::Echo::Request"
13
-
14
- Scenario: Echo::Reply
15
- Given I switch the Pio::OpenFlow version to "OpenFlow10"
16
- When I try to parse a file named "open_flow10/echo_reply.raw" with "OpenFlow" class
17
- Then it should finish successfully
18
- And the message should be a "Pio::OpenFlow10::Echo::Reply"
19
-
20
- Scenario: Features::Request
21
- Given I switch the Pio::OpenFlow version to "OpenFlow10"
22
- When I try to parse a file named "open_flow10/features_request.raw" with "OpenFlow" class
23
- Then it should finish successfully
24
- And the message should be a "Pio::OpenFlow10::Features::Request"
25
-
26
- Scenario: Features::Reply
27
- Given I switch the Pio::OpenFlow version to "OpenFlow10"
28
- When I try to parse a file named "open_flow10/features_reply.raw" with "OpenFlow" class
29
- Then it should finish successfully
30
- And the message should be a "Pio::OpenFlow10::Features::Reply"
31
-
32
- Scenario: PacketIn
33
- Given I switch the Pio::OpenFlow version to "OpenFlow10"
34
- When I try to parse a file named "open_flow10/packet_in.raw" with "OpenFlow" class
35
- Then it should finish successfully
36
- And the message should be a "Pio::OpenFlow10::PacketIn"
37
-
38
- Scenario: PortStatus
39
- Given I switch the Pio::OpenFlow version to "OpenFlow10"
40
- When I try to parse a file named "open_flow10/port_status.raw" with "OpenFlow" class
41
- Then it should finish successfully
42
- And the message should be a "Pio::OpenFlow10::PortStatus"
43
-
2
+ Scenario: OpenFlow10
3
+ Given I switch the Pio::OpenFlow version to "OpenFlow10"
4
+ Then the following each raw file should be parsed into its corresponding object using OpenFlow.read
5
+ | raw file | result object |
6
+ | open_flow10/hello.raw | Pio::OpenFlow10::Hello |
7
+ | open_flow10/echo_request.raw | Pio::OpenFlow10::Echo::Request |
8
+ | open_flow10/echo_reply.raw | Pio::OpenFlow10::Echo::Reply |
9
+ | open_flow10/features_request.raw | Pio::OpenFlow10::Features::Request |
10
+ | open_flow10/features_reply.raw | Pio::OpenFlow10::Features::Reply |
11
+ | open_flow10/packet_in.raw | Pio::OpenFlow10::PacketIn |
12
+ | open_flow10/port_status.raw | Pio::OpenFlow10::PortStatus |
13
+ | open_flow10/barrier_request.raw | Pio::OpenFlow10::Barrier::Request |
14
+ | open_flow10/barrier_reply.raw | Pio::OpenFlow10::Barrier::Reply |
@@ -29,3 +29,13 @@ end
29
29
  When(/^I try to create an OpenFlow instruction with:$/) do |ruby_code|
30
30
  step 'I try to create a packet with:', ruby_code
31
31
  end
32
+
33
+ # rubocop:disable LineLength
34
+ Then(/^the following each raw file should be parsed into its corresponding object using OpenFlow\.read$/) do |table|
35
+ table.hashes.each do |each|
36
+ step %(I try to parse a file named "#{each['raw file']}" with "OpenFlow" class)
37
+ step 'it should finish successfully'
38
+ step %(the message should be a "#{each['result object']}")
39
+ end
40
+ end
41
+ # rubocop:enable LineLength
@@ -33,7 +33,9 @@ module Pio
33
33
  5 => Pio::Features::Request,
34
34
  6 => Pio::Features::Reply,
35
35
  10 => Pio::PacketIn,
36
- 12 => Pio::PortStatus
36
+ 12 => Pio::PortStatus,
37
+ 18 => Pio::Barrier::Request,
38
+ 19 => Pio::Barrier::Reply
37
39
  }
38
40
  header = OpenFlowHeaderParser.read(binary)
39
41
  parser.fetch(header.message_type).read(binary)
@@ -1,5 +1,5 @@
1
1
  # Base module.
2
2
  module Pio
3
3
  # gem version.
4
- VERSION = '0.24.1'.freeze
4
+ VERSION = '0.24.2'.freeze
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pio
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.24.1
4
+ version: 0.24.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yasuhito Takamiya