mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Chore: Enable scopelint Go linter (#25896)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
This commit is contained in:
@@ -826,7 +826,7 @@ jobs:
|
|||||||
command: |
|
command: |
|
||||||
# To save memory, run in two batches
|
# To save memory, run in two batches
|
||||||
golangci-lint run -v -j 4 --config scripts/go/configs/ci/.golangci.toml -E deadcode -E depguard -E dogsled \
|
golangci-lint run -v -j 4 --config scripts/go/configs/ci/.golangci.toml -E deadcode -E depguard -E dogsled \
|
||||||
-E errcheck -E goconst -E golint -E gosec -E gosimple -E govet ./pkg/...
|
-E errcheck -E goconst -E golint -E gosec -E gosimple -E govet -E scopelint ./pkg/...
|
||||||
golangci-lint run -v -j 4 --config scripts/go/configs/ci/.golangci.toml -E ineffassign \
|
golangci-lint run -v -j 4 --config scripts/go/configs/ci/.golangci.toml -E ineffassign \
|
||||||
-E rowserrcheck -E staticcheck -E structcheck -E typecheck -E unconvert -E unused -E varcheck ./pkg/...
|
-E rowserrcheck -E staticcheck -E structcheck -E typecheck -E unconvert -E unused -E varcheck ./pkg/...
|
||||||
./scripts/go/bin/revive -formatter stylish -config ./scripts/go/configs/revive.toml ./pkg/...
|
./scripts/go/bin/revive -formatter stylish -config ./scripts/go/configs/revive.toml ./pkg/...
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ func TestGetHomeDashboard(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tc := range tests {
|
for _, tc := range tests {
|
||||||
|
tc := tc
|
||||||
t.Run(tc.name, func(t *testing.T) {
|
t.Run(tc.name, func(t *testing.T) {
|
||||||
dash := dtos.DashboardFullWithMeta{}
|
dash := dtos.DashboardFullWithMeta{}
|
||||||
dash.Meta.IsHome = true
|
dash.Meta.IsHome = true
|
||||||
@@ -801,6 +802,7 @@ func TestDashboardApiEndpoint(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tc := range testCases {
|
for _, tc := range testCases {
|
||||||
|
tc := tc
|
||||||
mock := &dashboards.FakeDashboardService{
|
mock := &dashboards.FakeDashboardService{
|
||||||
SaveDashboardError: tc.SaveError,
|
SaveDashboardError: tc.SaveError,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,6 +62,7 @@ func TestFoldersApiEndpoint(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tc := range testCases {
|
for _, tc := range testCases {
|
||||||
|
tc := tc
|
||||||
mock := &fakeFolderService{
|
mock := &fakeFolderService{
|
||||||
CreateFolderError: tc.Error,
|
CreateFolderError: tc.Error,
|
||||||
}
|
}
|
||||||
@@ -119,6 +120,7 @@ func TestFoldersApiEndpoint(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tc := range testCases {
|
for _, tc := range testCases {
|
||||||
|
tc := tc
|
||||||
mock := &fakeFolderService{
|
mock := &fakeFolderService{
|
||||||
UpdateFolderError: tc.Error,
|
UpdateFolderError: tc.Error,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -252,6 +252,7 @@ func TestLoginViewRedirect(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, c := range redirectCases {
|
for _, c := range redirectCases {
|
||||||
|
c := c
|
||||||
hs.Cfg.AppUrl = c.appURL
|
hs.Cfg.AppUrl = c.appURL
|
||||||
hs.Cfg.AppSubUrl = c.appSubURL
|
hs.Cfg.AppSubUrl = c.appSubURL
|
||||||
t.Run(c.desc, func(t *testing.T) {
|
t.Run(c.desc, func(t *testing.T) {
|
||||||
@@ -420,6 +421,7 @@ func TestLoginPostRedirect(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, c := range redirectCases {
|
for _, c := range redirectCases {
|
||||||
|
c := c
|
||||||
hs.Cfg.AppUrl = c.appURL
|
hs.Cfg.AppUrl = c.appURL
|
||||||
hs.Cfg.AppSubUrl = c.appSubURL
|
hs.Cfg.AppSubUrl = c.appSubURL
|
||||||
t.Run(c.desc, func(t *testing.T) {
|
t.Run(c.desc, func(t *testing.T) {
|
||||||
|
|||||||
@@ -189,6 +189,7 @@ func TestAccessToken(t *testing.T) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
for _, testCase := range testCases {
|
for _, testCase := range testCases {
|
||||||
|
testCase := testCase
|
||||||
Convey(testCase.desc, func() {
|
Convey(testCase.desc, func() {
|
||||||
clearTokenCache()
|
clearTokenCache()
|
||||||
// reset the httphandler counter
|
// reset the httphandler counter
|
||||||
|
|||||||
@@ -617,6 +617,7 @@ func TestNewDataSourceProxy_MSSQL(t *testing.T) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
for _, tc := range tcs {
|
for _, tc := range tcs {
|
||||||
|
tc := tc
|
||||||
t.Run(tc.description, func(t *testing.T) {
|
t.Run(tc.description, func(t *testing.T) {
|
||||||
cfg := setting.Cfg{}
|
cfg := setting.Cfg{}
|
||||||
plugin := plugins.DataSourcePlugin{}
|
plugin := plugins.DataSourcePlugin{}
|
||||||
|
|||||||
@@ -21,9 +21,10 @@ func TestVersionComparison(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for k, v := range upgradeablePlugins {
|
for k, v := range upgradeablePlugins {
|
||||||
|
key := k
|
||||||
val := v
|
val := v
|
||||||
t.Run(fmt.Sprintf("for %s should be true", k), func(t *testing.T) {
|
t.Run(fmt.Sprintf("for %s should be true", k), func(t *testing.T) {
|
||||||
assert.True(t, shouldUpgrade(k, &val))
|
assert.True(t, shouldUpgrade(key, &val))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -40,9 +41,10 @@ func TestVersionComparison(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for k, v := range shouldNotUpgrade {
|
for k, v := range shouldNotUpgrade {
|
||||||
|
key := k
|
||||||
val := v
|
val := v
|
||||||
t.Run(fmt.Sprintf("for %s should be false", k), func(t *testing.T) {
|
t.Run(fmt.Sprintf("for %s should be false", k), func(t *testing.T) {
|
||||||
assert.False(t, shouldUpgrade(k, &val))
|
assert.False(t, shouldUpgrade(key, &val))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ func TestProfilingDiagnostics(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for i, tc := range tcs {
|
for i, tc := range tcs {
|
||||||
|
tc := tc
|
||||||
t.Run(fmt.Sprintf("testcase %d", i), func(t *testing.T) {
|
t.Run(fmt.Sprintf("testcase %d", i), func(t *testing.T) {
|
||||||
os.Clearenv()
|
os.Clearenv()
|
||||||
if tc.enabledEnv != "" {
|
if tc.enabledEnv != "" {
|
||||||
@@ -55,6 +56,7 @@ func TestTracingDiagnostics(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for i, tc := range tcs {
|
for i, tc := range tcs {
|
||||||
|
tc := tc
|
||||||
t.Run(fmt.Sprintf("testcase %d", i), func(t *testing.T) {
|
t.Run(fmt.Sprintf("testcase %d", i), func(t *testing.T) {
|
||||||
os.Clearenv()
|
os.Clearenv()
|
||||||
if tc.enabledEnv != "" {
|
if tc.enabledEnv != "" {
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ func TestParseInterval(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for i, tc := range tcs {
|
for i, tc := range tcs {
|
||||||
|
tc := tc
|
||||||
t.Run(fmt.Sprintf("testcase %d", i), func(t *testing.T) {
|
t.Run(fmt.Sprintf("testcase %d", i), func(t *testing.T) {
|
||||||
res, err := ParseInterval(tc.interval)
|
res, err := ParseInterval(tc.interval)
|
||||||
if tc.err == "" {
|
if tc.err == "" {
|
||||||
|
|||||||
@@ -221,6 +221,7 @@ func TestSocialAzureAD_UserInfo(t *testing.T) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
s := &SocialAzureAD{
|
s := &SocialAzureAD{
|
||||||
SocialBase: tt.fields.SocialBase,
|
SocialBase: tt.fields.SocialBase,
|
||||||
|
|||||||
@@ -89,6 +89,7 @@ func TestSearchJSONForEmail(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, test := range tests {
|
for _, test := range tests {
|
||||||
|
test := test
|
||||||
provider.emailAttributePath = test.EmailAttributePath
|
provider.emailAttributePath = test.EmailAttributePath
|
||||||
t.Run(test.Name, func(t *testing.T) {
|
t.Run(test.Name, func(t *testing.T) {
|
||||||
actualResult, err := provider.searchJSONForAttr(test.EmailAttributePath, test.UserInfoJSONResponse)
|
actualResult, err := provider.searchJSONForAttr(test.EmailAttributePath, test.UserInfoJSONResponse)
|
||||||
@@ -152,6 +153,7 @@ func TestSearchJSONForRole(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, test := range tests {
|
for _, test := range tests {
|
||||||
|
test := test
|
||||||
provider.roleAttributePath = test.RoleAttributePath
|
provider.roleAttributePath = test.RoleAttributePath
|
||||||
t.Run(test.Name, func(t *testing.T) {
|
t.Run(test.Name, func(t *testing.T) {
|
||||||
actualResult, err := provider.searchJSONForAttr(test.RoleAttributePath, test.UserInfoJSONResponse)
|
actualResult, err := provider.searchJSONForAttr(test.RoleAttributePath, test.UserInfoJSONResponse)
|
||||||
@@ -304,6 +306,7 @@ func TestUserInfoSearchesForEmailAndRole(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, test := range tests {
|
for _, test := range tests {
|
||||||
|
test := test
|
||||||
provider.roleAttributePath = test.RoleAttributePath
|
provider.roleAttributePath = test.RoleAttributePath
|
||||||
t.Run(test.Name, func(t *testing.T) {
|
t.Run(test.Name, func(t *testing.T) {
|
||||||
response, err := json.Marshal(test.APIURLResponse)
|
response, err := json.Marshal(test.APIURLResponse)
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ func TestLogWrapper(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for i, tc := range tcs {
|
for i, tc := range tcs {
|
||||||
|
tc := tc
|
||||||
t.Run(fmt.Sprintf("formatArgs testcase %d", i), func(t *testing.T) {
|
t.Run(fmt.Sprintf("formatArgs testcase %d", i), func(t *testing.T) {
|
||||||
res := formatArgs(tc.args...)
|
res := formatArgs(tc.args...)
|
||||||
assert.Exactly(t, tc.expectedResult, res)
|
assert.Exactly(t, tc.expectedResult, res)
|
||||||
|
|||||||
@@ -177,6 +177,7 @@ func TestPluginManager_IsBackendOnlyPlugin(t *testing.T) {
|
|||||||
{name: "renderer", isBackendOnly: true},
|
{name: "renderer", isBackendOnly: true},
|
||||||
{name: "app", isBackendOnly: false},
|
{name: "app", isBackendOnly: false},
|
||||||
} {
|
} {
|
||||||
|
c := c
|
||||||
t.Run(fmt.Sprintf("Plugin %s", c.name), func(t *testing.T) {
|
t.Run(fmt.Sprintf("Plugin %s", c.name), func(t *testing.T) {
|
||||||
result := pluginScanner.IsBackendOnlyPlugin(c.name)
|
result := pluginScanner.IsBackendOnlyPlugin(c.name)
|
||||||
|
|
||||||
|
|||||||
@@ -107,6 +107,7 @@ func TestParsingAlertRuleSettings(t *testing.T) {
|
|||||||
require.NoError(t, err, "Init should not return an error")
|
require.NoError(t, err, "Init should not return an error")
|
||||||
|
|
||||||
for _, tc := range tcs {
|
for _, tc := range tcs {
|
||||||
|
tc := tc
|
||||||
t.Run(tc.name, func(t *testing.T) {
|
t.Run(tc.name, func(t *testing.T) {
|
||||||
content, err := ioutil.ReadFile(tc.file)
|
content, err := ioutil.ReadFile(tc.file)
|
||||||
require.NoError(t, err, "expected to be able to read file")
|
require.NoError(t, err, "expected to be able to read file")
|
||||||
|
|||||||
@@ -372,6 +372,7 @@ func (sc *scenarioContext) verifyUpdateDashboardPermissionsShouldBeAllowed(pt pe
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
||||||
|
p := p
|
||||||
tc := fmt.Sprintf("When updating dashboard permissions with %s permissions should be allowed", p.String())
|
tc := fmt.Sprintf("When updating dashboard permissions with %s permissions should be allowed", p.String())
|
||||||
|
|
||||||
Convey(tc, func() {
|
Convey(tc, func() {
|
||||||
@@ -420,6 +421,7 @@ func (sc *scenarioContext) verifyUpdateDashboardPermissionsShouldNotBeAllowed(pt
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
||||||
|
p := p
|
||||||
tc := fmt.Sprintf("When updating dashboard permissions with %s permissions should NOT be allowed", p.String())
|
tc := fmt.Sprintf("When updating dashboard permissions with %s permissions should NOT be allowed", p.String())
|
||||||
|
|
||||||
Convey(tc, func() {
|
Convey(tc, func() {
|
||||||
@@ -460,6 +462,7 @@ func (sc *scenarioContext) verifyUpdateChildDashboardPermissionsShouldBeAllowed(
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
||||||
|
p := p
|
||||||
tc := fmt.Sprintf("When updating child dashboard permissions with %s permissions should be allowed", p.String())
|
tc := fmt.Sprintf("When updating child dashboard permissions with %s permissions should be allowed", p.String())
|
||||||
|
|
||||||
Convey(tc, func() {
|
Convey(tc, func() {
|
||||||
@@ -523,6 +526,7 @@ func (sc *scenarioContext) verifyUpdateChildDashboardPermissionsShouldNotBeAllow
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
||||||
|
p := p
|
||||||
tc := fmt.Sprintf("When updating child dashboard permissions with %s permissions should NOT be allowed", p.String())
|
tc := fmt.Sprintf("When updating child dashboard permissions with %s permissions should NOT be allowed", p.String())
|
||||||
|
|
||||||
Convey(tc, func() {
|
Convey(tc, func() {
|
||||||
@@ -586,6 +590,7 @@ func (sc *scenarioContext) verifyUpdateChildDashboardPermissionsWithOverrideShou
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
||||||
|
p := p
|
||||||
// permission to update is higher than parent folder permission
|
// permission to update is higher than parent folder permission
|
||||||
if p > parentFolderPermission {
|
if p > parentFolderPermission {
|
||||||
continue
|
continue
|
||||||
@@ -631,6 +636,7 @@ func (sc *scenarioContext) verifyUpdateChildDashboardPermissionsWithOverrideShou
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
for _, p := range []models.PermissionType{models.PERMISSION_ADMIN, models.PERMISSION_EDIT, models.PERMISSION_VIEW} {
|
||||||
|
p := p
|
||||||
// permission to update is lower than or equal to parent folder permission
|
// permission to update is lower than or equal to parent folder permission
|
||||||
if p <= parentFolderPermission {
|
if p <= parentFolderPermission {
|
||||||
continue
|
continue
|
||||||
|
|||||||
@@ -78,6 +78,7 @@ func (ns *NotificationService) setFiles(
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, file := range msg.AttachedFiles {
|
for _, file := range msg.AttachedFiles {
|
||||||
|
file := file
|
||||||
m.Attach(file.Name, gomail.SetCopyFunc(func(writer io.Writer) error {
|
m.Attach(file.Name, gomail.SetCopyFunc(func(writer io.Writer) error {
|
||||||
_, err := writer.Write(file.Content)
|
_, err := writer.Write(file.Content)
|
||||||
return err
|
return err
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ func TestMigrations(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, testDB := range testDBs {
|
for _, testDB := range testDBs {
|
||||||
|
testDB := testDB
|
||||||
sql := `select count(*) as count from migration_log`
|
sql := `select count(*) as count from migration_log`
|
||||||
r := struct {
|
r := struct {
|
||||||
Count int64
|
Count int64
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ func (mg *Migrator) Start() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, m := range mg.migrations {
|
for _, m := range mg.migrations {
|
||||||
|
m := m
|
||||||
_, exists := logMap[m.Id()]
|
_, exists := logMap[m.Id()]
|
||||||
if exists {
|
if exists {
|
||||||
mg.Logger.Debug("Skipping migration: Already executed", "id", m.Id())
|
mg.Logger.Debug("Skipping migration: Already executed", "id", m.Id())
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ func TestSqlConnectionString(t *testing.T) {
|
|||||||
t.Helper()
|
t.Helper()
|
||||||
|
|
||||||
for _, testCase := range sqlStoreTestCases {
|
for _, testCase := range sqlStoreTestCases {
|
||||||
|
testCase := testCase
|
||||||
Convey(testCase.name, func() {
|
Convey(testCase.name, func() {
|
||||||
sqlstore := &SqlStore{}
|
sqlstore := &SqlStore{}
|
||||||
sqlstore.Cfg = makeSqlStoreTestConfig(testCase.dbType, testCase.dbHost)
|
sqlstore.Cfg = makeSqlStoreTestConfig(testCase.dbType, testCase.dbHost)
|
||||||
|
|||||||
@@ -275,6 +275,7 @@ func TestAppInsightsPluginRoutes(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
route, routeName, err := datasource.getPluginRoute(plugin, tt.cloudName)
|
route, routeName, err := datasource.getPluginRoute(plugin, tt.cloudName)
|
||||||
tt.Err(t, err)
|
tt.Err(t, err)
|
||||||
|
|||||||
@@ -69,6 +69,7 @@ func TestBuildingAzureLogAnalyticsQueries(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
queries, err := datasource.buildQueries(tt.queryModel, tt.timeRange)
|
queries, err := datasource.buildQueries(tt.queryModel, tt.timeRange)
|
||||||
tt.Err(t, err)
|
tt.Err(t, err)
|
||||||
@@ -141,6 +142,7 @@ func TestPluginRoutes(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
route, proxypass, err := datasource.getPluginRoute(plugin, tt.cloudName)
|
route, proxypass, err := datasource.getPluginRoute(plugin, tt.cloudName)
|
||||||
tt.Err(t, err)
|
tt.Err(t, err)
|
||||||
|
|||||||
@@ -122,6 +122,7 @@ func TestLogTableToFrame(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
res, err := loadLogAnalyticsTestFileWithNumber(tt.testFile)
|
res, err := loadLogAnalyticsTestFileWithNumber(tt.testFile)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|||||||
@@ -98,6 +98,7 @@ func TestAzureMonitorBuildQueries(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
for k, v := range commonAzureModelProps {
|
for k, v := range commonAzureModelProps {
|
||||||
tt.azureMonitorVariedProperties[k] = v
|
tt.azureMonitorVariedProperties[k] = v
|
||||||
@@ -363,6 +364,7 @@ func TestAzureMonitorParseResponse(t *testing.T) {
|
|||||||
datasource := &AzureMonitorDatasource{}
|
datasource := &AzureMonitorDatasource{}
|
||||||
|
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
azData, err := loadTestFile("azuremonitor/" + tt.responseFile)
|
azData, err := loadTestFile("azuremonitor/" + tt.responseFile)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
@@ -420,6 +422,7 @@ func TestFindClosestAllowIntervalMS(t *testing.T) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
interval := findClosestAllowedIntervalMS(tt.inputInterval, tt.allowedTimeGrains)
|
interval := findClosestAllowedIntervalMS(tt.inputInterval, tt.allowedTimeGrains)
|
||||||
require.Equal(t, tt.expectedInterval, interval)
|
require.Equal(t, tt.expectedInterval, interval)
|
||||||
|
|||||||
@@ -139,6 +139,7 @@ func TestAzureLogAnalyticsMacros(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
defaultTimeField := "TimeGenerated"
|
defaultTimeField := "TimeGenerated"
|
||||||
rawQuery, err := KqlInterpolate(tt.query, timeRange, tt.kql, defaultTimeField)
|
rawQuery, err := KqlInterpolate(tt.query, timeRange, tt.kql, defaultTimeField)
|
||||||
|
|||||||
@@ -89,6 +89,7 @@ func (e *timeSeriesQuery) execute() (*tsdb.Response, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, m := range q.Metrics {
|
for _, m := range q.Metrics {
|
||||||
|
m := m
|
||||||
if m.Type == countType {
|
if m.Type == countType {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -128,6 +128,7 @@ func TestFrameToSeriesSlice(t *testing.T) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
seriesSlice, err := FrameToSeriesSlice(tt.frame)
|
seriesSlice, err := FrameToSeriesSlice(tt.frame)
|
||||||
tt.Err(t, err)
|
tt.Err(t, err)
|
||||||
|
|||||||
@@ -35,6 +35,7 @@ func TestInterpolate(t *testing.T) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
|
tt := tt
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
|
|
||||||
query := QueryModel{
|
query := QueryModel{
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ enable = [
|
|||||||
# "interfacer",
|
# "interfacer",
|
||||||
# "misspell",
|
# "misspell",
|
||||||
"rowserrcheck",
|
"rowserrcheck",
|
||||||
# "scopelint",
|
"scopelint",
|
||||||
"staticcheck",
|
"staticcheck",
|
||||||
"structcheck",
|
"structcheck",
|
||||||
# "stylecheck",
|
# "stylecheck",
|
||||||
|
|||||||
Reference in New Issue
Block a user