mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
net: microchip: sparx5: Add KUNIT tests for enabling/disabling chains
This enhances the KUNIT test of the VCAP API with tests of the chaining functionality. Signed-off-by: Steen Hegelund <steen.hegelund@microchip.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7b911a5311
commit
1f741f0011
@ -2145,6 +2145,71 @@ static void vcap_api_filter_keylist_test(struct kunit *test)
|
||||
KUNIT_EXPECT_EQ(test, 26, idx);
|
||||
}
|
||||
|
||||
static void vcap_api_rule_chain_path_test(struct kunit *test)
|
||||
{
|
||||
struct vcap_admin admin1 = {
|
||||
.vtype = VCAP_TYPE_IS0,
|
||||
.vinst = 0,
|
||||
.first_cid = 1000000,
|
||||
.last_cid = 1199999,
|
||||
.lookups = 6,
|
||||
.lookups_per_instance = 2,
|
||||
};
|
||||
struct vcap_enabled_port eport3 = {
|
||||
.ndev = &test_netdev,
|
||||
.cookie = 0x100,
|
||||
.src_cid = 0,
|
||||
.dst_cid = 1000000,
|
||||
};
|
||||
struct vcap_enabled_port eport2 = {
|
||||
.ndev = &test_netdev,
|
||||
.cookie = 0x200,
|
||||
.src_cid = 1000000,
|
||||
.dst_cid = 1100000,
|
||||
};
|
||||
struct vcap_enabled_port eport1 = {
|
||||
.ndev = &test_netdev,
|
||||
.cookie = 0x300,
|
||||
.src_cid = 1100000,
|
||||
.dst_cid = 8000000,
|
||||
};
|
||||
bool ret;
|
||||
int chain;
|
||||
|
||||
vcap_test_api_init(&admin1);
|
||||
list_add_tail(&eport1.list, &admin1.enabled);
|
||||
list_add_tail(&eport2.list, &admin1.enabled);
|
||||
list_add_tail(&eport3.list, &admin1.enabled);
|
||||
|
||||
ret = vcap_path_exist(&test_vctrl, &test_netdev, 1000000);
|
||||
KUNIT_EXPECT_EQ(test, true, ret);
|
||||
|
||||
ret = vcap_path_exist(&test_vctrl, &test_netdev, 1100000);
|
||||
KUNIT_EXPECT_EQ(test, true, ret);
|
||||
|
||||
ret = vcap_path_exist(&test_vctrl, &test_netdev, 1200000);
|
||||
KUNIT_EXPECT_EQ(test, false, ret);
|
||||
|
||||
chain = vcap_get_next_chain(&test_vctrl, &test_netdev, 0);
|
||||
KUNIT_EXPECT_EQ(test, 1000000, chain);
|
||||
|
||||
chain = vcap_get_next_chain(&test_vctrl, &test_netdev, 1000000);
|
||||
KUNIT_EXPECT_EQ(test, 1100000, chain);
|
||||
|
||||
chain = vcap_get_next_chain(&test_vctrl, &test_netdev, 1100000);
|
||||
KUNIT_EXPECT_EQ(test, 8000000, chain);
|
||||
}
|
||||
|
||||
static struct kunit_case vcap_api_rule_enable_test_cases[] = {
|
||||
KUNIT_CASE(vcap_api_rule_chain_path_test),
|
||||
{}
|
||||
};
|
||||
|
||||
static struct kunit_suite vcap_api_rule_enable_test_suite = {
|
||||
.name = "VCAP_API_Rule_Enable_Testsuite",
|
||||
.test_cases = vcap_api_rule_enable_test_cases,
|
||||
};
|
||||
|
||||
static struct kunit_suite vcap_api_rule_remove_test_suite = {
|
||||
.name = "VCAP_API_Rule_Remove_Testsuite",
|
||||
.test_cases = vcap_api_rule_remove_test_cases,
|
||||
@ -2235,6 +2300,7 @@ static struct kunit_suite vcap_api_encoding_test_suite = {
|
||||
.test_cases = vcap_api_encoding_test_cases,
|
||||
};
|
||||
|
||||
kunit_test_suite(vcap_api_rule_enable_test_suite);
|
||||
kunit_test_suite(vcap_api_rule_remove_test_suite);
|
||||
kunit_test_suite(vcap_api_rule_insert_test_suite);
|
||||
kunit_test_suite(vcap_api_rule_counter_test_suite);
|
||||
|
Loading…
Reference in New Issue
Block a user