pull/11972/merge
Wayne Starr 2 weeks ago committed by GitHub
commit c9a7d61b48
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -18,6 +18,7 @@ package driver // import "helm.sh/helm/v4/pkg/storage/driver"
import (
"context"
"database/sql/driver"
"fmt"
"testing"
@ -257,6 +258,15 @@ func (mock *MockSecretsInterface) Delete(_ context.Context, name string, _ metav
return nil
}
// MockSQLFuzzyTime is an int wrapper that represents a unix timestamp int and matches both the int provided and int+1 to reduce test flakes
type MockSQLFuzzyTime int64
// Match satisfies sqlmock.Argument interface for MockSQLFuzzyTime
func (msft MockSQLFuzzyTime) Match(v driver.Value) bool {
val, ok := v.(int64)
return ok && (MockSQLFuzzyTime(val) == msft || MockSQLFuzzyTime(val) == msft+1)
}
// newTestFixtureSQL mocks the SQL database (for testing purposes)
func newTestFixtureSQL(t *testing.T, _ ...*rspb.Release) (*SQL, sqlmock.Sqlmock) {
t.Helper()

@ -197,7 +197,7 @@ func TestSqlCreate(t *testing.T) {
mock.ExpectBegin()
mock.
ExpectExec(regexp.QuoteMeta(query)).
WithArgs(key, sqlReleaseDefaultType, body, rel.Name, rel.Namespace, int(rel.Version), rel.Info.Status.String(), sqlReleaseDefaultOwner, int(time.Now().Unix())).
WithArgs(key, sqlReleaseDefaultType, body, rel.Name, rel.Namespace, int(rel.Version), rel.Info.Status.String(), sqlReleaseDefaultOwner, MockSQLFuzzyTime(time.Now().Unix())).
WillReturnResult(sqlmock.NewResult(1, 1))
labelsQuery := fmt.Sprintf(
@ -255,7 +255,7 @@ func TestSqlCreateAlreadyExists(t *testing.T) {
mock.ExpectBegin()
mock.
ExpectExec(regexp.QuoteMeta(insertQuery)).
WithArgs(key, sqlReleaseDefaultType, body, rel.Name, rel.Namespace, int(rel.Version), rel.Info.Status.String(), sqlReleaseDefaultOwner, int(time.Now().Unix())).
WithArgs(key, sqlReleaseDefaultType, body, rel.Name, rel.Namespace, int(rel.Version), rel.Info.Status.String(), sqlReleaseDefaultOwner, MockSQLFuzzyTime(time.Now().Unix())).
WillReturnError(fmt.Errorf("dialect dependent SQL error"))
selectQuery := fmt.Sprintf(
@ -313,7 +313,7 @@ func TestSqlUpdate(t *testing.T) {
mock.
ExpectExec(regexp.QuoteMeta(query)).
WithArgs(body, rel.Name, int(rel.Version), rel.Info.Status.String(), sqlReleaseDefaultOwner, int(time.Now().Unix()), key, namespace).
WithArgs(body, rel.Name, int(rel.Version), rel.Info.Status.String(), sqlReleaseDefaultOwner, MockSQLFuzzyTime(time.Now().Unix()), key, namespace).
WillReturnResult(sqlmock.NewResult(0, 1))
if err := sqlDriver.Update(key, rel); err != nil {

Loading…
Cancel
Save