From c18ce613b3c60950822ed5defdc35b1a72735066 Mon Sep 17 00:00:00 2001 From: xfy Date: Mon, 27 Apr 2026 10:20:18 +0800 Subject: [PATCH] =?UTF-8?q?style:=20=E6=A0=BC=E5=BC=8F=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 使用 Go 1.13+ 八进制字面量格式 (0o644) - 修复文件末尾缺少换行符 - 对齐结构体字段 Co-Authored-By: Claude Opus 4.7 --- internal/app/app_windows.go | 24 +++++++++---------- internal/converter/nginx/converter_test.go | 15 ++++++------ internal/converter/nginx/parser_test.go | 28 +++++++++++----------- 3 files changed, 33 insertions(+), 34 deletions(-) diff --git a/internal/app/app_windows.go b/internal/app/app_windows.go index 93baf4f..f3ce544 100644 --- a/internal/app/app_windows.go +++ b/internal/app/app_windows.go @@ -24,17 +24,17 @@ import ( // App manages the server lifecycle (Windows version). type App struct { - resv resolver.Resolver - cfg *config.Config - srv *server.Server - http3Srv *http3.Server - http2Srv *http2.Server - streamSrv *stream.Server - logger *logging.AppLogger - cfgPath string - pidFile string - logFile string - listeners []net.Listener + resv resolver.Resolver + cfg *config.Config + srv *server.Server + http3Srv *http3.Server + http2Srv *http2.Server + streamSrv *stream.Server + logger *logging.AppLogger + cfgPath string + pidFile string + logFile string + listeners []net.Listener upgradeMgr *server.UpgradeManager } @@ -286,4 +286,4 @@ func sigName(sig syscall.Signal) string { default: return fmt.Sprintf("Signal(%d)", sig) } -} \ No newline at end of file +} diff --git a/internal/converter/nginx/converter_test.go b/internal/converter/nginx/converter_test.go index a484d47..59feb8c 100644 --- a/internal/converter/nginx/converter_test.go +++ b/internal/converter/nginx/converter_test.go @@ -747,10 +747,10 @@ http { func TestConvertProxyRedirect(t *testing.T) { tests := []struct { - name string - input string - mode string - rules int + name string + input string + mode string + rules int }{ { name: "off", @@ -956,9 +956,9 @@ http { func TestConvertUpstreamLoadBalance(t *testing.T) { tests := []struct { - name string - upstream string - wantLB string + name string + upstream string + wantLB string }{ { name: "least_conn", @@ -1325,4 +1325,3 @@ http { t.Errorf("Listen = %s, want 0.0.0.0:80 when no listen directive", s.Listen) } } - diff --git a/internal/converter/nginx/parser_test.go b/internal/converter/nginx/parser_test.go index 35fa35d..6c093d1 100644 --- a/internal/converter/nginx/parser_test.go +++ b/internal/converter/nginx/parser_test.go @@ -193,7 +193,7 @@ func TestParseFile(t *testing.T) { dir := t.TempDir() path := filepath.Join(dir, "nginx.conf") content := "listen 80;\nserver_name example.com;" - if err := os.WriteFile(path, []byte(content), 0644); err != nil { + if err := os.WriteFile(path, []byte(content), 0o644); err != nil { t.Fatalf("write file: %v", err) } cfg, err := ParseFile(path) @@ -216,21 +216,21 @@ func TestParseIncludeGlob(t *testing.T) { // Create a subdirectory for included files to avoid matching nginx.conf itself. incDir := filepath.Join(dir, "includes") - if err := os.Mkdir(incDir, 0755); err != nil { + if err := os.Mkdir(incDir, 0o755); err != nil { t.Fatal(err) } - if err := os.WriteFile(filepath.Join(incDir, "a.conf"), []byte("listen 80;\n"), 0644); err != nil { + if err := os.WriteFile(filepath.Join(incDir, "a.conf"), []byte("listen 80;\n"), 0o644); err != nil { t.Fatal(err) } - if err := os.WriteFile(filepath.Join(incDir, "b.conf"), []byte("server_name a.com;\n"), 0644); err != nil { + if err := os.WriteFile(filepath.Join(incDir, "b.conf"), []byte("server_name a.com;\n"), 0o644); err != nil { t.Fatal(err) } // Create main config with include. main := filepath.Join(dir, "nginx.conf") content := "include " + incDir + "/*.conf;" - if err := os.WriteFile(main, []byte(content), 0644); err != nil { + if err := os.WriteFile(main, []byte(content), 0o644); err != nil { t.Fatal(err) } @@ -256,10 +256,10 @@ func TestParseIncludeCircular(t *testing.T) { a := filepath.Join(dir, "a.conf") b := filepath.Join(dir, "b.conf") - if err := os.WriteFile(a, []byte("include "+b+";"), 0644); err != nil { + if err := os.WriteFile(a, []byte("include "+b+";"), 0o644); err != nil { t.Fatal(err) } - if err := os.WriteFile(b, []byte("include "+a+";"), 0644); err != nil { + if err := os.WriteFile(b, []byte("include "+a+";"), 0o644); err != nil { t.Fatal(err) } @@ -289,7 +289,7 @@ func TestParseIncludeMaxDepth(t *testing.T) { } else { content = "listen 80;" } - if err := os.WriteFile(path, []byte(content), 0644); err != nil { + if err := os.WriteFile(path, []byte(content), 0o644); err != nil { t.Fatal(err) } } @@ -307,7 +307,7 @@ func TestParseIncludeNotFound(t *testing.T) { dir := t.TempDir() main := filepath.Join(dir, "nginx.conf") content := "include /nonexistent/path.conf;" - if err := os.WriteFile(main, []byte(content), 0644); err != nil { + if err := os.WriteFile(main, []byte(content), 0o644); err != nil { t.Fatal(err) } _, err := ParseFile(main) @@ -320,7 +320,7 @@ func TestParseIncludeGlobNoMatch(t *testing.T) { dir := t.TempDir() main := filepath.Join(dir, "nginx.conf") content := "include " + dir + "/nonexistent/*.conf;" - if err := os.WriteFile(main, []byte(content), 0644); err != nil { + if err := os.WriteFile(main, []byte(content), 0o644); err != nil { t.Fatal(err) } cfg, err := ParseFile(main) @@ -334,10 +334,10 @@ func TestParseIncludeGlobNoMatch(t *testing.T) { func TestParseLocationModifiers(t *testing.T) { tests := []struct { - name string - input string - dirName string - args []string + name string + input string + dirName string + args []string }{ { name: "exact match",