From 8cf4c00c7ad1423dc3ea6708348a38116174d5eb Mon Sep 17 00:00:00 2001 From: okwme Date: Fri, 13 Dec 2019 16:54:02 +0100 Subject: [PATCH 01/17] added most basic tests for scaffold function --- cmd/utils_test.go | 113 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 cmd/utils_test.go diff --git a/cmd/utils_test.go b/cmd/utils_test.go new file mode 100644 index 0000000..1b98018 --- /dev/null +++ b/cmd/utils_test.go @@ -0,0 +1,113 @@ +package cmd + +import ( + "io/ioutil" + "log" + "os" + "strings" + "testing" + + "github.com/iancoleman/strcase" + "github.com/stretchr/testify/require" +) + +func TestScaffoldTutorialNameservice(t *testing.T) { + tmp, err := ioutil.TempDir("", "scaffold-test-") + if err != nil { + log.Fatal(err) + } + defer os.RemoveAll(tmp) // clean up + os.Chdir(tmp) + + user := "username" + repo := "repository" + dir := "nameservice" + nameRaw := dir + nameCapitalCamelCase := strcase.ToCamel(nameRaw) + nameLowerCamelCase := strcase.ToLowerCamel(nameRaw) + nameLowerCase := strings.ToLower(nameLowerCamelCase) + ns := UserRepoArgs{ + Dir: dir, + User: user, + Repo: repo, + NameRaw: nameRaw, + NameLowerCase: nameLowerCase, + NameCapitalCamelCase: nameCapitalCamelCase, + NameLowerCamelCase: nameLowerCamelCase, + } + err = scaffold(dir, outputPath, ns) + require.NoError(t, err) +} +func TestScaffoldTutorialHelloChain(t *testing.T) { + tmp, err := ioutil.TempDir("", "scaffold-test-") + if err != nil { + log.Fatal(err) + } + defer os.RemoveAll(tmp) // clean up + os.Chdir(tmp) + + user := "username" + repo := "repository" + dir := "hellochain" + nameRaw := dir + nameCapitalCamelCase := strcase.ToCamel(nameRaw) + nameLowerCamelCase := strcase.ToLowerCamel(nameRaw) + nameLowerCase := strings.ToLower(nameLowerCamelCase) + ns := UserRepoArgs{ + Dir: dir, + User: user, + Repo: repo, + NameRaw: nameRaw, + NameLowerCase: nameLowerCase, + NameCapitalCamelCase: nameCapitalCamelCase, + NameLowerCamelCase: nameLowerCamelCase, + } + err = scaffold(dir, outputPath, ns) + require.NoError(t, err) +} + +func TestScaffoldApp(t *testing.T) { + tmp, err := ioutil.TempDir("", "scaffold-test-") + if err != nil { + log.Fatal(err) + } + defer os.RemoveAll(tmp) // clean up + os.Chdir(tmp) + + lvl := "lvl-1" + dir := lvl + user := "username" + repo := "repository" + + ns := UserRepoArgs{ + Dir: dir, + User: user, + Repo: repo, + } + err = scaffold(dir, outputPath, ns) + require.NoError(t, err) +} + +func TestScaffoldModule(t *testing.T) { + tmp, err := ioutil.TempDir("", "scaffold-test-") + if err != nil { + log.Fatal(err) + } + // defer os.RemoveAll(tmp) // clean up + os.Chdir(tmp) + + dir := "module" + user := "username" + repo := "repository" + nameRaw := "myModule" + nameLowerCase := strings.ToLower(nameRaw) + mdl := UserRepoArgs{ + User: user, + Repo: repo, + Dir: dir, + NameRaw: nameRaw, + NameLowerCase: nameLowerCase, + } + err = scaffold(dir, outputPath, mdl) + require.NoError(t, err) +} From 2ea5dd9e155017348c30c087338cf5b0f694d641 Mon Sep 17 00:00:00 2001 From: okwme Date: Fri, 13 Dec 2019 16:59:30 +0100 Subject: [PATCH 02/17] gomod --- go.mod | 2 +- go.sum | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/go.mod b/go.mod index d5811d9..8fb7e3a 100644 --- a/go.mod +++ b/go.mod @@ -10,7 +10,7 @@ require ( github.com/spf13/cobra v0.0.5 github.com/spf13/jwalterweatherman v1.1.0 // indirect github.com/spf13/viper v1.5.0 - github.com/stretchr/testify v1.4.0 // indirect + github.com/stretchr/testify v1.4.0 golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a // indirect golang.org/x/text v0.3.2 // indirect ) diff --git a/go.sum b/go.sum index 54df01d..a9c7d7e 100644 --- a/go.sum +++ b/go.sum @@ -114,6 +114,7 @@ github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DM github.com/spf13/viper v1.5.0 h1:GpsTwfsQ27oS/Aha/6d1oD7tpKIqWnOA6tgOX9HHkt4= github.com/spf13/viper v1.5.0/go.mod h1:AkYRkVJF8TkSG/xet6PzXX+l39KhhXa2pdqVSxnTcn4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.1.1 h1:2vfRuCMp5sSVIDSqO8oNnWJq7mPa6KVP3iPIwFBuy8A= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk= From c1bd1978b1f495ae57eb3852f29260ede7aece38 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 13:26:08 +0100 Subject: [PATCH 03/17] add github actions --- .github/workflows/go.yml | 21 +++++++++++++++++++++ Makefile | 4 +++- 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/go.yml diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml new file mode 100644 index 0000000..f2e3efb --- /dev/null +++ b/.github/workflows/go.yml @@ -0,0 +1,21 @@ +name: Go +on: [push] +jobs: + build: + name: Build + runs-on: ubuntu-latest + steps: + - name: Set up Go 1.13 + uses: actions/setup-go@v1 + with: + go-version: 1.13 + id: go + + - name: Check out code into the Go module directory + uses: actions/checkout@v1 + + - name: Build + run: make install + + - name: Test + run: make test diff --git a/Makefile b/Makefile index 6b127a7..ef2ae0f 100644 --- a/Makefile +++ b/Makefile @@ -22,6 +22,8 @@ install: generate mod lint: @echo "--> Running linter" @golangci-lint run - go mod verify + +test: + go test ./... -v .PHONY: all tools generate build install \ No newline at end of file From 2bd960ca076dcc4d699c12b5dbc918b4de695f35 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 13:30:06 +0100 Subject: [PATCH 04/17] fix GA --- .github/workflows/go.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index f2e3efb..60a653b 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -1,5 +1,5 @@ name: Go -on: [push] +on: [pull_request] jobs: build: name: Build @@ -15,7 +15,9 @@ jobs: uses: actions/checkout@v1 - name: Build - run: make install + run: | + go get ./... + make install - name: Test run: make test From 94912d3d785e5de5bde7534423d54c93da738576 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 13:32:03 +0100 Subject: [PATCH 05/17] fix GA --- .github/workflows/go.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 60a653b..9bbd24c 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -16,7 +16,7 @@ jobs: - name: Build run: | - go get ./... + make build make install - name: Test From f079de2db07e3a001a01970b6fa792059f98d2a2 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 13:33:01 +0100 Subject: [PATCH 06/17] fix GA --- .github/workflows/go.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 9bbd24c..6a27764 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -16,6 +16,7 @@ jobs: - name: Build run: | + go get ./... make build make install From 864cc8fcd592b29225ecc7cb24487bb5e0372bf4 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:09:20 +0100 Subject: [PATCH 07/17] fix GA 3000 --- .github/workflows/go.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 6a27764..9bbd24c 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -16,7 +16,6 @@ jobs: - name: Build run: | - go get ./... make build make install From 671c4990a72cc448ce2a30a21f7ee4ea22da3f8c Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:12:27 +0100 Subject: [PATCH 08/17] fix GA 300 only test --- .github/workflows/go.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 9bbd24c..ae77b20 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -14,10 +14,5 @@ jobs: - name: Check out code into the Go module directory uses: actions/checkout@v1 - - name: Build - run: | - make build - make install - - name: Test run: make test From f543495eaa35018166de1d872d40a16c1f0aec2b Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:14:45 +0100 Subject: [PATCH 09/17] fix GA 300 only test --- .github/workflows/go.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index ae77b20..ffea37b 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -15,4 +15,6 @@ jobs: uses: actions/checkout@v1 - name: Test - run: make test + run: | + make build + make test From 1b9102fb5a841aa48bcafdb5a5379e8384a22228 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:16:03 +0100 Subject: [PATCH 10/17] fix GA 300 only test --- .github/workflows/go.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index ffea37b..fcc05de 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -16,5 +16,5 @@ jobs: - name: Test run: | - make build + go build -mod=readonly -o build/scaffold main.go make test From 7502c3ca69558f5ab1fa86dc7d289f2fbf21979c Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:17:27 +0100 Subject: [PATCH 11/17] fix GA 300 only test 5 --- .github/workflows/go.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index fcc05de..995530d 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -16,5 +16,6 @@ jobs: - name: Test run: | - go build -mod=readonly -o build/scaffold main.go + make tools + make build make test From f9a3fc796f2949fe574fef7b642ab593548219c1 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:21:08 +0100 Subject: [PATCH 12/17] minor cleanup --- .github/workflows/go.yml | 15 +++++++++------ Makefile | 5 +++-- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 995530d..1ed6869 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -1,8 +1,8 @@ name: Go on: [pull_request] jobs: - build: - name: Build + test: + name: Test runs-on: ubuntu-latest steps: - name: Set up Go 1.13 @@ -14,8 +14,11 @@ jobs: - name: Check out code into the Go module directory uses: actions/checkout@v1 + - name: Tools + run: make tools + + - name: Build + run: make Build + - name: Test - run: | - make tools - make build - make test + run: make test diff --git a/Makefile b/Makefile index ef2ae0f..922cae9 100644 --- a/Makefile +++ b/Makefile @@ -24,6 +24,7 @@ lint: @golangci-lint run test: - go test ./... -v + @echo "--> Running Tests" + @go test ./... -v -.PHONY: all tools generate build install \ No newline at end of file +.PHONY: all tools generate build install test \ No newline at end of file From 7998fae3c824f1deb2a34becb12e8e135e687ff9 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:22:18 +0100 Subject: [PATCH 13/17] b in build --- .github/workflows/go.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 1ed6869..55f1d19 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -18,7 +18,7 @@ jobs: run: make tools - name: Build - run: make Build + run: make build - name: Test run: make test From 7c103f2230eaa50a7318b00198616987e47f1d5c Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:25:57 +0100 Subject: [PATCH 14/17] b in build --- .github/workflows/go.yml | 2 +- go.mod | 1 + go.sum | 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 55f1d19..c2e308e 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -18,7 +18,7 @@ jobs: run: make tools - name: Build - run: make build + run: go env - name: Test run: make test diff --git a/go.mod b/go.mod index 8fb7e3a..2a57ef6 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,7 @@ module github.com/cosmos/scaffold go 1.13 require ( + github.com/go-bindata/go-bindata v3.1.2+incompatible // indirect github.com/iancoleman/strcase v0.0.0-20191112232945-16388991a334 github.com/mitchellh/go-homedir v1.1.0 github.com/pelletier/go-toml v1.4.0 // indirect diff --git a/go.sum b/go.sum index a9c7d7e..4bd9681 100644 --- a/go.sum +++ b/go.sum @@ -25,6 +25,8 @@ github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8 github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/go-bindata/go-bindata v3.1.2+incompatible h1:5vjJMVhowQdPzjE1LdxyFF7YFTXg5IgGVW4gBr5IbvE= +github.com/go-bindata/go-bindata v3.1.2+incompatible/go.mod h1:xK8Dsgwmeed+BBsSy2XTopBn/8uK2HWuGSnA11C3Joo= github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0 h1:MP4Eh7ZCb31lleYCFuwm0oe4/YGak+5l1vA2NOE80nA= From ff72c19ce2658a46950b2e5c6f477215524e9cec Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:29:29 +0100 Subject: [PATCH 15/17] set path --- .github/workflows/go.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index c2e308e..fc5c921 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -14,11 +14,16 @@ jobs: - name: Check out code into the Go module directory uses: actions/checkout@v1 + # This is used since the above action does not set it for now + # Remove once https://github.com/actions/setup-go/issues/27 is fixed + - name: Set GOBIN + run: export PATH=${PATH}:`go env GOPATH`/bin + - name: Tools run: make tools - name: Build - run: go env + run: make build - name: Test run: make test From 66f0a55aa0c1b1e4a49c2015244cc78a1d1455f9 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 14:33:25 +0100 Subject: [PATCH 16/17] fix set path --- .github/workflows/go.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index fc5c921..0d43ff1 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -17,7 +17,7 @@ jobs: # This is used since the above action does not set it for now # Remove once https://github.com/actions/setup-go/issues/27 is fixed - name: Set GOBIN - run: export PATH=${PATH}:`go env GOPATH`/bin + run: export PATH=$PATH:$GOPATH/bin - name: Tools run: make tools From 1442ec2354152ec8039afe4ca0cd9270cb11d528 Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 16 Dec 2019 15:51:43 +0100 Subject: [PATCH 17/17] set path --- .github/workflows/go.yml | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 0d43ff1..3d20cb4 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -11,13 +11,16 @@ jobs: go-version: 1.13 id: go - - name: Check out code into the Go module directory - uses: actions/checkout@v1 - # This is used since the above action does not set it for now # Remove once https://github.com/actions/setup-go/issues/27 is fixed - - name: Set GOBIN - run: export PATH=$PATH:$GOPATH/bin + - name: setup env + run: | + echo "::set-env name=GOPATH::$(go env GOPATH)" + echo "::add-path::$(go env GOPATH)/bin" + shell: bash + + - name: Check out code into the Go module directory + uses: actions/checkout@v1 - name: Tools run: make tools