Fix flaky e2e timestamp tests
Increase sleep time from 10ms to 1100ms to ensure timestamp precision works consistently across databases with second-level granularity. Strengthen AssertTimestampsOnUpdate to require strictly increasing timestamps instead of allowing equal values. Signed-off-by: Bryan Frimin <bryan@getprobo.com>
This commit is contained in:
@@ -708,7 +708,8 @@ func TestAudit_Timestamps(t *testing.T) {
|
||||
initialCreatedAt := getResult.Node.CreatedAt
|
||||
initialUpdatedAt := getResult.Node.UpdatedAt
|
||||
|
||||
time.Sleep(10 * time.Millisecond)
|
||||
// Wait long enough for timestamp to change (database may have second precision)
|
||||
time.Sleep(1100 * time.Millisecond)
|
||||
|
||||
updateQuery := `
|
||||
mutation UpdateAudit($input: UpdateAuditInput!) {
|
||||
|
||||
@@ -677,7 +677,8 @@ func TestDatum_Timestamps(t *testing.T) {
|
||||
initialCreatedAt := getResult.Node.CreatedAt
|
||||
initialUpdatedAt := getResult.Node.UpdatedAt
|
||||
|
||||
time.Sleep(10 * time.Millisecond)
|
||||
// Wait long enough for timestamp to change (database may have second precision)
|
||||
time.Sleep(1100 * time.Millisecond)
|
||||
|
||||
updateQuery := `
|
||||
mutation UpdateDatum($input: UpdateDatumInput!) {
|
||||
|
||||
@@ -674,7 +674,8 @@ func TestDocument_Timestamps(t *testing.T) {
|
||||
initialCreatedAt := getResult.Node.CreatedAt
|
||||
initialUpdatedAt := getResult.Node.UpdatedAt
|
||||
|
||||
time.Sleep(10 * time.Millisecond)
|
||||
// Wait long enough for timestamp to change (database may have second precision)
|
||||
time.Sleep(1100 * time.Millisecond)
|
||||
|
||||
updateQuery := `
|
||||
mutation UpdateDocument($input: UpdateDocumentInput!) {
|
||||
|
||||
@@ -785,8 +785,8 @@ func TestMeasure_Timestamps(t *testing.T) {
|
||||
initialCreatedAt := getResult.Node.CreatedAt
|
||||
initialUpdatedAt := getResult.Node.UpdatedAt
|
||||
|
||||
// Wait a bit to ensure timestamp difference
|
||||
time.Sleep(10 * time.Millisecond)
|
||||
// Wait long enough for timestamp to change (database may have second precision)
|
||||
time.Sleep(1100 * time.Millisecond)
|
||||
|
||||
updateQuery := `
|
||||
mutation UpdateMeasure($input: UpdateMeasureInput!) {
|
||||
|
||||
@@ -595,7 +595,8 @@ func TestMeeting_Timestamps(t *testing.T) {
|
||||
initialCreatedAt := getResult.Node.CreatedAt
|
||||
initialUpdatedAt := getResult.Node.UpdatedAt
|
||||
|
||||
time.Sleep(10 * time.Millisecond)
|
||||
// Wait long enough for timestamp to change (database may have second precision)
|
||||
time.Sleep(1100 * time.Millisecond)
|
||||
|
||||
updateQuery := `
|
||||
mutation UpdateMeeting($input: UpdateMeetingInput!) {
|
||||
|
||||
@@ -556,7 +556,8 @@ func TestProcessingActivity_Timestamps(t *testing.T) {
|
||||
initialCreatedAt := getResult.Node.CreatedAt
|
||||
initialUpdatedAt := getResult.Node.UpdatedAt
|
||||
|
||||
time.Sleep(10 * time.Millisecond)
|
||||
// Wait long enough for timestamp to change (database may have second precision)
|
||||
time.Sleep(1100 * time.Millisecond)
|
||||
|
||||
updateQuery := `
|
||||
mutation UpdateProcessingActivity($input: UpdateProcessingActivityInput!) {
|
||||
|
||||
@@ -74,8 +74,8 @@ func AssertTimestampsOnCreate(t *testing.T, createdAt, updatedAt, beforeCreate t
|
||||
func AssertTimestampsOnUpdate(t *testing.T, createdAt, updatedAt, originalCreatedAt, originalUpdatedAt time.Time) {
|
||||
t.Helper()
|
||||
assert.Equal(t, originalCreatedAt, createdAt, "createdAt should not change on update")
|
||||
assert.True(t, updatedAt.After(originalUpdatedAt) || updatedAt.Equal(originalUpdatedAt),
|
||||
"updatedAt should be >= previous updatedAt")
|
||||
assert.True(t, updatedAt.After(originalUpdatedAt),
|
||||
"updatedAt should be strictly after previous updatedAt")
|
||||
}
|
||||
|
||||
func AssertOptionalStringEqual(t *testing.T, expected, actual *string, fieldName string) {
|
||||
|
||||
Reference in New Issue
Block a user