Skip to content

Commit a9b3438

Browse files
authored
Merge pull request #4 from masaushi/fix/nil-safety
support nil safety #3
2 parents cdcdd66 + 7415f71 commit a9b3438

26 files changed

+637
-444
lines changed

.github/workflows/test.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,8 @@ jobs:
5454
- name: Run lint
5555
uses: golangci/golangci-lint-action@v2
5656
with:
57-
version: v1.42
57+
version: v1.45.2
58+
args: --timeout=5m
5859

5960
- name: Run tests
6061
run: go test ./...

cmd/cmd.go

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@ import (
99

1010
"github.com/spf13/afero"
1111

12-
"github.com/masaushi/accessory/internal/generator"
13-
"github.com/masaushi/accessory/internal/parser"
12+
"github.com/masaushi/accessory/internal/accessor"
1413
)
1514

1615
// Version is the version of `accessory`, injected at build time.
@@ -56,10 +55,6 @@ func Execute(fs afero.Fs, args []string) {
5655
os.Exit(1)
5756
}
5857

59-
if lockName == nil || len(*lockName) == 0 {
60-
lockName = nil
61-
}
62-
6358
var dir string
6459
if cliArgs := flags.Args(); len(cliArgs) > 0 {
6560
dir = cliArgs[0]
@@ -74,14 +69,21 @@ func Execute(fs afero.Fs, args []string) {
7469
os.Exit(1)
7570
}
7671

77-
pkg, err := parser.ParsePackage(dir)
72+
pkg, err := accessor.ParsePackage(dir)
7873
if err != nil {
7974
fmt.Fprintln(os.Stderr, err)
8075
flags.Usage()
8176
os.Exit(1)
8277
}
8378

84-
if err = generator.Generate(fs, pkg, *typeName, *output, *receiver, lockName); err != nil {
79+
var options = []accessor.Option{
80+
accessor.Type(*typeName),
81+
accessor.Output(*output),
82+
accessor.Receiver(*receiver),
83+
accessor.Lock(*lockName),
84+
}
85+
86+
if err = accessor.Generate(fs, pkg, options...); err != nil {
8587
log.Fatal(err)
8688
}
8789
}

cmd/cmd_test.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,10 @@ func TestExecute(t *testing.T) {
5353
}
5454

5555
fs := afero.NewMemMapFs()
56-
snapshot := cupaloy.New(cupaloy.SnapshotSubdirectory("testdata/.snapshots"))
56+
snapshot := cupaloy.New(
57+
cupaloy.SnapshotSubdirectory("testdata/.snapshots"),
58+
cupaloy.SnapshotFileExtension(".go"),
59+
)
5760

5861
for name, tt := range tests {
5962
tt := tt

cmd/testdata/.snapshots/TestExecute-Getter renamed to cmd/testdata/.snapshots/TestExecute-Getter.go

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cmd/testdata/.snapshots/TestExecute-GetterAndSetter renamed to cmd/testdata/.snapshots/TestExecute-GetterAndSetter.go

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cmd/testdata/.snapshots/TestExecute-IgnoreFields renamed to cmd/testdata/.snapshots/TestExecute-IgnoreFields.go

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cmd/testdata/.snapshots/TestExecute-ImportPackages

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

cmd/testdata/.snapshots/TestExecute-ImportPackages.go

Lines changed: 55 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
File renamed without changes.

cmd/testdata/.snapshots/TestExecute-WithLock renamed to cmd/testdata/.snapshots/TestExecute-WithLock.go

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)