From 30a1c136dc1bbf7591b8f177c36c83cedcc45a14 Mon Sep 17 00:00:00 2001 From: volodymyrZotov Date: Tue, 25 Oct 2022 18:00:41 +0300 Subject: [PATCH 1/3] generate random version each time calling mock onepassword item --- controllers/onepassworditem_controller_test.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/controllers/onepassworditem_controller_test.go b/controllers/onepassworditem_controller_test.go index 7a1f01d..a7d6df9 100644 --- a/controllers/onepassworditem_controller_test.go +++ b/controllers/onepassworditem_controller_test.go @@ -2,6 +2,8 @@ package controllers import ( "context" + "math/rand" + "time" "github.com/1Password/connect-sdk-go/onepassword" "github.com/1Password/onepassword-operator/pkg/mocks" @@ -24,6 +26,11 @@ const ( iceCream = "freezing blue 20%" ) +func randomInt() int { + rand.Seed(time.Now().UnixNano()) + return rand.Intn(1000) +} + var _ = Describe("OnePasswordItem controller", func() { BeforeEach(func() { // failed test runs that don't clean up leave resources behind. @@ -38,7 +45,7 @@ var _ = Describe("OnePasswordItem controller", func() { for k, v := range item1.Data { item.Fields = append(item.Fields, &onepassword.ItemField{Label: k, Value: v}) } - item.Version = item1.Version + item.Version = randomInt() item.Vault.ID = vaultUUID item.ID = uuid return &item, nil @@ -105,7 +112,7 @@ var _ = Describe("OnePasswordItem controller", func() { for k, v := range newData { item.Fields = append(item.Fields, &onepassword.ItemField{Label: k, Value: v}) } - item.Version = item1.Version + 1 + item.Version = randomInt() item.Vault.ID = vaultUUID item.ID = uuid return &item, nil @@ -185,7 +192,7 @@ var _ = Describe("OnePasswordItem controller", func() { for k, v := range testData { item.Fields = append(item.Fields, &onepassword.ItemField{Label: k, Value: v}) } - item.Version = item1.Version + 1 + item.Version = randomInt() item.Vault.ID = vaultUUID item.ID = uuid return &item, nil From d99abbd432baef909d1206add3e4d28099c52ceb Mon Sep 17 00:00:00 2001 From: volodymyrZotov Date: Wed, 26 Oct 2022 11:31:54 +0300 Subject: [PATCH 2/3] use unique onepassword name in each spec --- controllers/onepassworditem_controller_test.go | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/controllers/onepassworditem_controller_test.go b/controllers/onepassworditem_controller_test.go index a7d6df9..a8cca81 100644 --- a/controllers/onepassworditem_controller_test.go +++ b/controllers/onepassworditem_controller_test.go @@ -2,8 +2,6 @@ package controllers import ( "context" - "math/rand" - "time" "github.com/1Password/connect-sdk-go/onepassword" "github.com/1Password/onepassword-operator/pkg/mocks" @@ -26,11 +24,6 @@ const ( iceCream = "freezing blue 20%" ) -func randomInt() int { - rand.Seed(time.Now().UnixNano()) - return rand.Intn(1000) -} - var _ = Describe("OnePasswordItem controller", func() { BeforeEach(func() { // failed test runs that don't clean up leave resources behind. @@ -45,7 +38,7 @@ var _ = Describe("OnePasswordItem controller", func() { for k, v := range item1.Data { item.Fields = append(item.Fields, &onepassword.ItemField{Label: k, Value: v}) } - item.Version = randomInt() + item.Version = item1.Version item.Vault.ID = vaultUUID item.ID = uuid return &item, nil @@ -60,7 +53,7 @@ var _ = Describe("OnePasswordItem controller", func() { } key := types.NamespacedName{ - Name: item1.Name, + Name: "item1", Namespace: namespace, } @@ -112,7 +105,7 @@ var _ = Describe("OnePasswordItem controller", func() { for k, v := range newData { item.Fields = append(item.Fields, &onepassword.ItemField{Label: k, Value: v}) } - item.Version = randomInt() + item.Version = item1.Version + 1 item.Vault.ID = vaultUUID item.ID = uuid return &item, nil @@ -192,7 +185,7 @@ var _ = Describe("OnePasswordItem controller", func() { for k, v := range testData { item.Fields = append(item.Fields, &onepassword.ItemField{Label: k, Value: v}) } - item.Version = randomInt() + item.Version = item1.Version + 1 item.Vault.ID = vaultUUID item.ID = uuid return &item, nil @@ -249,7 +242,7 @@ var _ = Describe("OnePasswordItem controller", func() { } key := types.NamespacedName{ - Name: item1.Name, + Name: "item3", Namespace: namespace, } From 710de1bbc042d53563a66a8c352290aa6ccda355 Mon Sep 17 00:00:00 2001 From: Eddy Filip Date: Wed, 26 Oct 2022 15:18:34 +0200 Subject: [PATCH 3/3] Adjust OnePasswordItem test resource names This is made to eliminate the chance of tests being flaky when run in aprallel --- controllers/onepassworditem_controller_test.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/controllers/onepassworditem_controller_test.go b/controllers/onepassworditem_controller_test.go index a8cca81..c8a41e2 100644 --- a/controllers/onepassworditem_controller_test.go +++ b/controllers/onepassworditem_controller_test.go @@ -53,7 +53,7 @@ var _ = Describe("OnePasswordItem controller", func() { } key := types.NamespacedName{ - Name: "item1", + Name: "sample-item", Namespace: namespace, } @@ -242,7 +242,7 @@ var _ = Describe("OnePasswordItem controller", func() { } key := types.NamespacedName{ - Name: "item3", + Name: "item-not-updated", Namespace: namespace, } @@ -299,7 +299,7 @@ var _ = Describe("OnePasswordItem controller", func() { } key := types.NamespacedName{ - Name: "test6", + Name: "item-custom-secret-type", Namespace: namespace, } @@ -336,7 +336,7 @@ var _ = Describe("OnePasswordItem controller", func() { } key := types.NamespacedName{ - Name: "test7", + Name: "item-changed-secret-type", Namespace: namespace, }