mirror of
https://github.com/tendermint/tendermint.git
synced 2025-12-23 06:15:19 +00:00
* ci: Fix linter complaint (#9645)
Fixes a very silly linter complaint that makes absolutely no sense and is blocking the merging of several PRs.
---
#### PR checklist
- [x] Tests written/updated, or no tests needed
- [x] `CHANGELOG_PENDING.md` updated, or no changelog entry needed
- [x] Updated relevant documentation (`docs/`) and code comments, or no
documentation updates needed
(cherry picked from commit 83b7f4ad5b)
# Conflicts:
# .github/workflows/lint.yml
# .golangci.yml
# cmd/tendermint/commands/debug/util.go
* Resolve conflicts
Signed-off-by: Thane Thomson <connect@thanethomson.com>
* ci: Sync golangci-lint config with main
Minus the spelling configuration that restricts spelling to US English
only.
Signed-off-by: Thane Thomson <connect@thanethomson.com>
* make format
Signed-off-by: Thane Thomson <connect@thanethomson.com>
* Remove usage of deprecated io/ioutil package
Signed-off-by: Thane Thomson <connect@thanethomson.com>
* Remove unused mockBlockStore
Signed-off-by: Thane Thomson <connect@thanethomson.com>
* blockchain/v2: Remove unused method
Signed-off-by: Thane Thomson <connect@thanethomson.com>
* Bulk fix lints
Signed-off-by: Thane Thomson <connect@thanethomson.com>
* lint: Ignore auto-generated query PEG
Signed-off-by: Thane Thomson <connect@thanethomson.com>
Signed-off-by: Thane Thomson <connect@thanethomson.com>
Co-authored-by: Thane Thomson <connect@thanethomson.com>
95 lines
1.8 KiB
Go
95 lines
1.8 KiB
Go
package config
|
|
|
|
import (
|
|
"os"
|
|
"path/filepath"
|
|
"strings"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func ensureFiles(t *testing.T, rootDir string, files ...string) {
|
|
for _, f := range files {
|
|
p := rootify(rootDir, f)
|
|
_, err := os.Stat(p)
|
|
assert.Nil(t, err, p)
|
|
}
|
|
}
|
|
|
|
func TestEnsureRoot(t *testing.T) {
|
|
require := require.New(t)
|
|
|
|
// setup temp dir for test
|
|
tmpDir, err := os.MkdirTemp("", "config-test")
|
|
require.Nil(err)
|
|
defer os.RemoveAll(tmpDir)
|
|
|
|
// create root dir
|
|
EnsureRoot(tmpDir)
|
|
|
|
// make sure config is set properly
|
|
data, err := os.ReadFile(filepath.Join(tmpDir, defaultConfigFilePath))
|
|
require.Nil(err)
|
|
|
|
if !checkConfig(string(data)) {
|
|
t.Fatalf("config file missing some information")
|
|
}
|
|
|
|
ensureFiles(t, tmpDir, "data")
|
|
}
|
|
|
|
func TestEnsureTestRoot(t *testing.T) {
|
|
require := require.New(t)
|
|
|
|
testName := "ensureTestRoot"
|
|
|
|
// create root dir
|
|
cfg := ResetTestRoot(testName)
|
|
defer os.RemoveAll(cfg.RootDir)
|
|
rootDir := cfg.RootDir
|
|
|
|
// make sure config is set properly
|
|
data, err := os.ReadFile(filepath.Join(rootDir, defaultConfigFilePath))
|
|
require.Nil(err)
|
|
|
|
if !checkConfig(string(data)) {
|
|
t.Fatalf("config file missing some information")
|
|
}
|
|
|
|
// TODO: make sure the cfg returned and testconfig are the same!
|
|
baseConfig := DefaultBaseConfig()
|
|
ensureFiles(t, rootDir, defaultDataDir, baseConfig.Genesis, baseConfig.PrivValidatorKey, baseConfig.PrivValidatorState)
|
|
}
|
|
|
|
func checkConfig(configFile string) bool {
|
|
var valid bool
|
|
|
|
// list of words we expect in the config
|
|
elems := []string{
|
|
"moniker",
|
|
"seeds",
|
|
"proxy_app",
|
|
"fast_sync",
|
|
"create_empty_blocks",
|
|
"peer",
|
|
"timeout",
|
|
"broadcast",
|
|
"send",
|
|
"addr",
|
|
"wal",
|
|
"propose",
|
|
"max",
|
|
"genesis",
|
|
}
|
|
for _, e := range elems {
|
|
if !strings.Contains(configFile, e) {
|
|
valid = false
|
|
} else {
|
|
valid = true
|
|
}
|
|
}
|
|
return valid
|
|
}
|