Skip to content

Commit 7ce5efc

Browse files
kishanpsSRAVANI KANASANI
authored andcommitted
Migrating punt_qos_test.cc from IxNetwork to OTG.
Signed-off-by: SRAVANI KANASANI <[email protected]>
1 parent a27d913 commit 7ce5efc

File tree

6 files changed

+226
-151
lines changed

6 files changed

+226
-151
lines changed

lib/otg_helper.cc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,13 @@ otg::FlowIpv6& AddIPv6Header(otg::Flow& flow, absl::string_view src_ipv6,
9696
return *ipv6_header;
9797
}
9898

99+
void SetIPv6Priority(otg::FlowIpv6& ip_packet, int dscp, int ecn) {
100+
int traffic_class_value = (dscp << 2) | ecn;
101+
ip_packet.mutable_traffic_class()->set_choice(
102+
otg::PatternFlowIpv6TrafficClass::Choice::value);
103+
ip_packet.mutable_traffic_class()->set_value(traffic_class_value);
104+
}
105+
99106
absl::Status SetTrafficTransmissionState(
100107
otg::Openapi::StubInterface& otg_stub,
101108
otg::StateTrafficFlowTransmit::State::Enum transmission_state) {

lib/otg_helper.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ void SetIPv4Priority(otg::FlowIpv4& ip_packet, int dscp, int ecn);
3535
otg::FlowIpv6& AddIPv6Header(otg::Flow& flow, absl::string_view src_ipv6,
3636
absl::string_view dst_ipv6);
3737

38+
void SetIPv6Priority(otg::FlowIpv6& ip_packet, int dscp, int ecn);
39+
3840
absl::Status SetTrafficTransmissionState(
3941
otg::Openapi::StubInterface& otg_stub,
4042
otg::StateTrafficFlowTransmit::State::Enum transmission_state);

lib/otg_helper_test.cc

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,16 @@ TEST(OtgHelperTest, AddIPv6HeaderTest) {
151151
EXPECT_THAT(ipv6_header, EqualsProto(flow.packet(0).ipv6()));
152152
}
153153

154+
TEST(OtgHelperTest, SetIPv6PriorityTest) {
155+
otg::FlowIpv6 ipv6_header;
156+
157+
SetIPv6Priority(ipv6_header, /*dscp=*/10, /*ecn=*/1);
158+
159+
EXPECT_THAT(ipv6_header, EqualsProto(R"pb(
160+
traffic_class { choice: value value: 41 }
161+
)pb"));
162+
}
163+
154164
TEST(OtgHelperTest, SetTrafficTransmissionStateSuccess) {
155165
otg::MockOpenapiStub mock_stub;
156166

tests/qos/BUILD.bazel

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -111,9 +111,10 @@ cc_library(
111111
"//gutil/gutil:status",
112112
"//gutil/gutil:status_matchers",
113113
"//gutil/gutil:testing",
114-
"//lib:ixia_helper",
114+
"//lib:otg_helper",
115115
"//lib/gnmi:gnmi_helper",
116116
"//lib/gnmi:openconfig_cc_proto",
117+
"//lib/utils:generic_testbed_utils",
117118
"//p4_pdpi:ir",
118119
"//p4_pdpi:ir_cc_proto",
119120
"//p4_pdpi:p4_runtime_session",
@@ -123,7 +124,6 @@ cc_library(
123124
"//sai_p4/instantiations/google:instantiations",
124125
"//sai_p4/instantiations/google:sai_pd_cc_proto",
125126
"//sai_p4/instantiations/google/test_tools:test_entries",
126-
"//tests/forwarding:util",
127127
"//tests/gnmi:util",
128128
"//tests/integration/system/nsf:util",
129129
"//tests/integration/system/nsf/interfaces:testbed",
@@ -135,11 +135,13 @@ cc_library(
135135
"//thinkit/proto:generic_testbed_cc_proto",
136136
"@com_github_gnmi//proto/gnmi:gnmi_cc_grpc_proto",
137137
"@com_github_gnmi//proto/gnmi:gnmi_cc_proto",
138+
"@com_github_grpc_grpc//:grpc++_unsecure",
139+
"@com_github_otg_models//:otg_cc_proto",
140+
"@com_github_otg_models//:otg_grpc_proto",
138141
"@com_github_p4lang_p4runtime//:p4info_cc_proto",
139142
"@com_github_p4lang_p4runtime//:p4runtime_cc_proto",
140143
"@com_google_absl//absl/base:core_headers",
141144
"@com_google_absl//absl/container:flat_hash_map",
142-
"@com_google_absl//absl/container:flat_hash_set",
143145
"@com_google_absl//absl/flags:flag",
144146
"@com_google_absl//absl/log",
145147
"@com_google_absl//absl/status",
@@ -148,7 +150,6 @@ cc_library(
148150
"@com_google_absl//absl/strings:str_format",
149151
"@com_google_absl//absl/synchronization",
150152
"@com_google_absl//absl/time",
151-
"@com_google_absl//absl/types:optional",
152153
"@com_google_googletest//:gtest",
153154
],
154155
alwayslink = True,

0 commit comments

Comments
 (0)