Skip to content

Commit 618f71a

Browse files
Fix linting issues on main (#4236)
* Add tests and refactor getTestName * Rename test recording * Delete Test_Network.Frontdoor_v1api_CreationAndDeletion.yaml * Remove use of ioutil * Remove use of strings.Title() * Update test file
1 parent 01b1aee commit 618f71a

File tree

9 files changed

+794
-410
lines changed

9 files changed

+794
-410
lines changed

v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_Network.Frontdoor_v1api_CreationAndDeletion.yaml

Lines changed: 0 additions & 386 deletions
This file was deleted.

v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_NetworkFrontdoor_v1api_CreationAndDeletion.yaml

Lines changed: 725 additions & 0 deletions
Large diffs are not rendered by default.

v2/internal/controllers/samples_test.go

Lines changed: 56 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ import (
1414
"testing"
1515

1616
. "github.com/onsi/gomega"
17+
"golang.org/x/text/cases"
18+
"golang.org/x/text/language"
1719
v1 "k8s.io/api/core/v1"
1820
"sigs.k8s.io/controller-runtime/pkg/client"
1921

@@ -187,11 +189,58 @@ func findRefsAndCreateSecrets(tc *testcommon.KubePerTestContext, resources []cli
187189
}
188190

189191
func getTestName(group string, version string) string {
190-
return strings.Join(
191-
[]string{
192-
"Test",
193-
strings.Title(group),
194-
version,
195-
"CreationAndDeletion",
196-
}, "_")
192+
var result strings.Builder
193+
194+
// Common Prefix
195+
result.WriteString("Test_")
196+
197+
// Titlecase for each part of the group
198+
title := cases.Title(language.English)
199+
for _, part := range strings.Split(group, ".") {
200+
result.WriteString(title.String(part))
201+
}
202+
result.WriteString("_")
203+
204+
// Append the version
205+
result.WriteString(version)
206+
207+
// Common Suffix
208+
result.WriteString("_CreationAndDeletion")
209+
210+
return result.String()
211+
}
212+
213+
func TestGetTestName(t *testing.T) {
214+
t.Parallel()
215+
216+
cases := map[string]struct {
217+
group string
218+
version string
219+
expected string
220+
}{
221+
"simple": {
222+
group: "group",
223+
version: "version",
224+
expected: "Test_Group_version_CreationAndDeletion",
225+
},
226+
"Network": {
227+
group: "network",
228+
version: "v1api",
229+
expected: "Test_Network_v1api_CreationAndDeletion",
230+
},
231+
"Frontdoor": {
232+
group: "network.frontdoor",
233+
version: "v1api",
234+
expected: "Test_NetworkFrontdoor_v1api_CreationAndDeletion",
235+
},
236+
}
237+
238+
for name, c := range cases {
239+
c := c
240+
t.Run(name, func(t *testing.T) {
241+
t.Parallel()
242+
g := NewGomegaWithT(t)
243+
g.Expect(getTestName(c.group, c.version)).To(Equal(c.expected))
244+
})
245+
}
197246
}

v2/tools/generator/gen_types.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
package main
77

88
import (
9-
"io/ioutil"
9+
"os"
1010
"strings"
1111
"unicode"
1212

@@ -41,7 +41,7 @@ func NewGenTypesCommand() (*cobra.Command, error) {
4141

4242
if debugMode != nil && *debugMode != "" {
4343
var tmpDir string
44-
tmpDir, err = ioutil.TempDir("", createDebugPrefix(*debugMode))
44+
tmpDir, err = os.MkdirTemp("", createDebugPrefix(*debugMode))
4545
if err != nil {
4646
log.Error(err, "Error creating temporary directory")
4747
return err

v2/tools/generator/internal/astmodel/identifier_factory.go

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ import (
1212
"unicode"
1313

1414
"github.com/Azure/azure-service-operator/v2/internal/set"
15+
"golang.org/x/text/cases"
16+
"golang.org/x/text/language"
1517
)
1618

1719
// \W is all non-word characters (https://golang.org/pkg/regexp/syntax/)
@@ -176,18 +178,13 @@ func (factory *identifierFactory) cleanPart(part string, visibility Visibility)
176178
clean := filterRegex.ReplaceAllLiteralString(part, " ")
177179
cleanWords := sliceIntoWords(clean)
178180
caseCorrectedWords := make([]string, 0, len(cleanWords))
181+
title := cases.Title(language.English, cases.NoLower)
179182
for ix, word := range cleanWords {
180183
var w string
181184
if ix == 0 && visibility == NotExported {
182185
w = strings.ToLower(word)
183186
} else {
184-
// Disable lint: the suggested "replacement" for this in /x/cases has fundamental
185-
// differences in how it works (e.g. 'JSON' becomes 'Json'; we don’t want that).
186-
// Furthermore, the cases (ha) that it "fixes" are not relevant to us
187-
// (something about better handling of various punctuation characters;
188-
// our words are punctuation-free).
189-
//nolint:staticcheck
190-
w = strings.Title(word)
187+
w = title.String(word)
191188
}
192189

193190
caseCorrectedWords = append(caseCorrectedWords, w)

v2/tools/generator/internal/codegen/pipeline/delete_generated_code.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import (
99
"bufio"
1010
"context"
1111
"io"
12-
"io/ioutil"
1312
"os"
1413
"path/filepath"
1514
"sort"
@@ -200,7 +199,7 @@ func deleteEmptyDirectories(ctx context.Context, path string) error {
200199
return ctx.Err()
201200
}
202201

203-
files, err := ioutil.ReadDir(dir)
202+
files, err := os.ReadDir(dir)
204203
if err != nil {
205204
errs = append(errs, errors.Wrapf(err, "error reading directory %q", dir))
206205
}

v2/tools/generator/internal/kustomization/conversion_patch_file.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
package kustomization
77

88
import (
9-
"io/ioutil"
9+
"os"
1010

1111
"github.com/pkg/errors"
1212
"gopkg.in/yaml.v3"
@@ -85,7 +85,7 @@ func (p *ConversionPatchFile) Save(destination string) error {
8585
return errors.Wrap(err, "serializing to yaml")
8686
}
8787

88-
err = ioutil.WriteFile(destination, data, 0o644) // #nosec G306
88+
err = os.WriteFile(destination, data, 0o644) // #nosec G306
8989
if err != nil {
9090
return errors.Wrapf(err, "writing to %s", destination)
9191
}

v2/tools/generator/internal/kustomization/crd_kustomization_file.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
package kustomization
77

88
import (
9-
"io/ioutil"
9+
"os"
1010

1111
"github.com/pkg/errors"
1212
"gopkg.in/yaml.v3"
@@ -57,7 +57,7 @@ func (k *CRDKustomizeFile) Save(destination string) error {
5757
return errors.Wrap(err, "serializing to yaml")
5858
}
5959

60-
err = ioutil.WriteFile(destination, data, 0o644) // #nosec G306
60+
err = os.WriteFile(destination, data, 0o644) // #nosec G306
6161
if err != nil {
6262
return errors.Wrapf(err, "writing to %s", destination)
6363
}

v2/tools/generator/internal/kustomization/resource_definition.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
package kustomization
77

88
import (
9-
"io/ioutil"
9+
"os"
1010

1111
"github.com/pkg/errors"
1212
"gopkg.in/yaml.v3"
@@ -17,7 +17,7 @@ type ResourceDefinition struct {
1717
}
1818

1919
func LoadResourceDefinition(filePath string) (*ResourceDefinition, error) {
20-
fileBytes, err := ioutil.ReadFile(filePath)
20+
fileBytes, err := os.ReadFile(filePath)
2121
if err != nil {
2222
return nil, errors.Wrapf(err, "reading resource definition from %s", filePath)
2323
}

0 commit comments

Comments
 (0)