From 58dfd2e96fdd84380f078e6be0f91b36d564e498 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=96=E7=95=8C?= Date: Tue, 31 Mar 2026 17:52:54 +0800 Subject: [PATCH] option: add round-trip test for DNSRuleAction with evaluate action --- option/dns_test.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/option/dns_test.go b/option/dns_test.go index 12ee0bca3..1f26dc77d 100644 --- a/option/dns_test.go +++ b/option/dns_test.go @@ -70,3 +70,22 @@ func TestDNSOptionsAcceptsTypedServers(t *testing.T) { require.Equal(t, "1.1.1.1", options.Servers[0].Options.(*RemoteDNSServerOptions).Server) require.Equal(t, C.DNSTypeFakeIP, options.Servers[1].Type) } + +func TestDNSRuleActionEvaluateRoundTrip(t *testing.T) { + t.Parallel() + + action := DNSRuleAction{ + Action: C.RuleActionTypeEvaluate, + RouteOptions: DNSRouteActionOptions{ + Server: "default", + }, + } + + content, err := json.Marshal(action) + require.NoError(t, err) + + var decoded DNSRuleAction + err = json.UnmarshalContext(context.Background(), content, &decoded) + require.NoError(t, err) + require.Equal(t, action, decoded) +}