summaryrefslogtreecommitdiffhomepage
path: root/test/scenario_test/policy
diff options
context:
space:
mode:
Diffstat (limited to 'test/scenario_test/policy')
-rw-r--r--test/scenario_test/policy/policy_generator.go133
1 files changed, 118 insertions, 15 deletions
diff --git a/test/scenario_test/policy/policy_generator.go b/test/scenario_test/policy/policy_generator.go
index 62dab150..8336c8f8 100644
--- a/test/scenario_test/policy/policy_generator.go
+++ b/test/scenario_test/policy/policy_generator.go
@@ -473,6 +473,51 @@ func createPolicyConfig() *config.RoutingPolicy {
},
}
+ st_medReplace := config.Statement{
+ Name: "st_medReplace",
+ Conditions: config.Conditions{
+ MatchPrefixSet: "psExabgp",
+ MatchNeighborSet: "nsExabgp",
+ MatchSetOptions: config.MATCH_SET_OPTIONS_TYPE_ALL,
+ },
+ Actions: config.Actions{
+ AcceptRoute: true,
+ BgpActions: config.BgpActions{
+ SetMed: "100",
+ },
+ },
+ }
+
+ st_medAdd := config.Statement{
+ Name: "st_medAdd",
+ Conditions: config.Conditions{
+ MatchPrefixSet: "psExabgp",
+ MatchNeighborSet: "nsExabgp",
+ MatchSetOptions: config.MATCH_SET_OPTIONS_TYPE_ALL,
+ },
+ Actions: config.Actions{
+ AcceptRoute: true,
+ BgpActions: config.BgpActions{
+ SetMed: "+100",
+ },
+ },
+ }
+
+ st_medSub := config.Statement{
+ Name: "st_medSub",
+ Conditions: config.Conditions{
+ MatchPrefixSet: "psExabgp",
+ MatchNeighborSet: "nsExabgp",
+ MatchSetOptions: config.MATCH_SET_OPTIONS_TYPE_ALL,
+ },
+ Actions: config.Actions{
+ AcceptRoute: true,
+ BgpActions: config.BgpActions{
+ SetMed: "-100",
+ },
+ },
+ }
+
st_distribute_reject := config.Statement{
Name: "st_community_distriibute",
Conditions: config.Conditions{
@@ -516,6 +561,21 @@ func createPolicyConfig() *config.RoutingPolicy {
},
}
+ st_distribute_med_add := config.Statement{
+ Name: "st_distribute_med_add",
+ Conditions: config.Conditions{
+ MatchPrefixSet: "psExabgp",
+ MatchNeighborSet: "nsExabgp",
+ MatchSetOptions: config.MATCH_SET_OPTIONS_TYPE_ALL,
+ },
+ Actions: config.Actions{
+ AcceptRoute: true,
+ BgpActions: config.BgpActions{
+ SetMed: "+100",
+ },
+ },
+ }
+
test_01_import_policy_initial := config.PolicyDefinition{
Name: "test_01_import_policy_initial",
StatementList: []config.Statement{st0},
@@ -656,28 +716,64 @@ func createPolicyConfig() *config.RoutingPolicy {
StatementList: []config.Statement{st_comNull},
}
- test_25_distribute_reject := config.PolicyDefinition{
- Name: "test_25_distribute_reject",
+
+ test_25_med_replace_action_import := config.PolicyDefinition{
+ Name: "test_25_med_replace_action_import",
+ StatementList: []config.Statement{st_medReplace},
+ }
+
+ test_26_med_add_action_import := config.PolicyDefinition{
+ Name: "test_26_med_add_action_import",
+ StatementList: []config.Statement{st_medAdd},
+ }
+
+ test_27_med_subtract_action_import := config.PolicyDefinition{
+ Name: "test_27_med_subtract_action_import",
+ StatementList: []config.Statement{st_medSub},
+ }
+
+ test_28_med_replace_action_export := config.PolicyDefinition{
+ Name: "test_28_med_replace_action_export",
+ StatementList: []config.Statement{st_medReplace},
+ }
+
+ test_29_med_add_action_export := config.PolicyDefinition{
+ Name: "test_29_med_add_action_export",
+ StatementList: []config.Statement{st_medAdd},
+ }
+
+ test_30_med_subtract_action_export := config.PolicyDefinition{
+ Name: "test_30_med_subtract_action_export",
+ StatementList: []config.Statement{st_medSub},
+ }
+
+ test_31_distribute_reject := config.PolicyDefinition{
+ Name: "test_31_distribute_reject",
StatementList: []config.Statement{st_distribute_reject},
}
- test_26_distribute_accept := config.PolicyDefinition{
- Name: "test_26_distribute_accept",
+ test_32_distribute_accept := config.PolicyDefinition{
+ Name: "test_32_distribute_accept",
StatementList: []config.Statement{st_distribute_accept},
}
- test_27_distribute_set_community_action := config.PolicyDefinition{
- Name: "test_27_distribute_set_community_action",
+ test_33_distribute_set_community_action := config.PolicyDefinition{
+ Name: "test_33_distribute_set_community_action",
StatementList: []config.Statement{st_distribute_comm_add},
}
- test_28_distribute_policy_update := config.PolicyDefinition{
- Name: "test_28_distribute_policy_update",
+ test_34_distribute_set_med_action := config.PolicyDefinition{
+ Name: "test_34_distribute_set_med_action",
+ StatementList: []config.Statement{st_distribute_med_add},
+ }
+
+ test_35_distribute_policy_update := config.PolicyDefinition{
+ Name: "test_35_distribute_policy_update",
StatementList: []config.Statement{st1},
}
- test_28_distribute_policy_update_softreset := config.PolicyDefinition{
- Name: "test_28_distribute_policy_update_softreset",
+ test_35_distribute_policy_update_softreset := config.PolicyDefinition{
+ Name: "test_35_distribute_policy_update_softreset",
StatementList: []config.Statement{st2},
}
@@ -722,11 +818,18 @@ func createPolicyConfig() *config.RoutingPolicy {
test_22_community_replace_action_export,
test_23_community_remove_action_export,
test_24_community_null_action_export,
- test_25_distribute_reject,
- test_26_distribute_accept,
- test_27_distribute_set_community_action,
- test_28_distribute_policy_update,
- test_28_distribute_policy_update_softreset,
+ test_25_med_replace_action_import,
+ test_26_med_add_action_import,
+ test_27_med_subtract_action_import,
+ test_28_med_replace_action_export,
+ test_29_med_add_action_export,
+ test_30_med_subtract_action_export,
+ test_31_distribute_reject,
+ test_32_distribute_accept,
+ test_33_distribute_set_community_action,
+ test_34_distribute_set_med_action,
+ test_35_distribute_policy_update,
+ test_35_distribute_policy_update_softreset,
},
}
return p