Browse Source

Update fakes to implement client for 1Password/connect-sdk-go v1.4.0

Docs 3 years ago
parent
commit
cc1043d3a6
2 changed files with 90 additions and 39 deletions
  1. 3 2
      docs/contributing-devguide.md
  2. 87 37
      pkg/provider/onepassword/fake/fake.go

+ 3 - 2
docs/contributing-devguide.md

@@ -44,10 +44,11 @@ make build
 make docker.build IMG=external-secrets:latest
 make docker.build IMG=external-secrets:latest
 ```
 ```
 
 
-Run tests and lint the code:
+Run tests and lint the code: *(golangci-lint@1.45.2 is needed.)*
 ```shell
 ```shell
 make test
 make test
-make lint
+make lint # OR
+docker run --rm -v $(pwd):/app -w /app golangci/golangci-lint:v1.42.1 golangci-lint run
 ```
 ```
 
 
 Build the documentation:
 Build the documentation:

+ 87 - 37
pkg/provider/onepassword/fake/fake.go

@@ -38,21 +38,34 @@ func NewMockClient() *OnePasswordMockClient {
 	}
 	}
 }
 }
 
 
+// GetVaults unused fake.
+func (mockClient *OnePasswordMockClient) GetVaults() ([]onepassword.Vault, error) {
+	return []onepassword.Vault{}, nil
+}
+
+// GetVault unused fake.
+func (mockClient *OnePasswordMockClient) GetVault(uuid string) (*onepassword.Vault, error) {
+	return &onepassword.Vault{}, nil
+}
+
+// GetVaultByUUID unused fake.
+func (mockClient *OnePasswordMockClient) GetVaultByUUID(uuid string) (*onepassword.Vault, error) {
+	return &onepassword.Vault{}, nil
+}
+
+// GetVaultByTitle unused fake.
+func (mockClient *OnePasswordMockClient) GetVaultByTitle(uuid string) (*onepassword.Vault, error) {
+	return &onepassword.Vault{}, nil
+}
+
 // GetVaultsByTitle returns a list of vaults, you must preload.
 // GetVaultsByTitle returns a list of vaults, you must preload.
 func (mockClient *OnePasswordMockClient) GetVaultsByTitle(uuid string) ([]onepassword.Vault, error) {
 func (mockClient *OnePasswordMockClient) GetVaultsByTitle(uuid string) ([]onepassword.Vault, error) {
 	return mockClient.MockVaults[uuid], nil
 	return mockClient.MockVaults[uuid], nil
 }
 }
 
 
-// GetItemsByTitle returns a list of items, you must preload.
-func (mockClient *OnePasswordMockClient) GetItemsByTitle(itemUUID, vaultUUID string) ([]onepassword.Item, error) {
-	items := []onepassword.Item{}
-	for _, item := range mockClient.MockItems[vaultUUID] {
-		if item.Title == itemUUID {
-			items = append(items, item)
-		}
-	}
-
-	return items, nil
+// GetItems returns []onepassword.Item, you must preload.
+func (mockClient *OnePasswordMockClient) GetItems(vaultUUID string) ([]onepassword.Item, error) {
+	return mockClient.MockItems[vaultUUID], nil
 }
 }
 
 
 // GetItem returns a *onepassword.Item, you must preload.
 // GetItem returns a *onepassword.Item, you must preload.
@@ -69,56 +82,93 @@ func (mockClient *OnePasswordMockClient) GetItem(itemUUID, vaultUUID string) (*o
 	return &onepassword.Item{}, errors.New("status 400: Invalid Item UUID")
 	return &onepassword.Item{}, errors.New("status 400: Invalid Item UUID")
 }
 }
 
 
-// GetItems returns []onepassword.Item, you must preload.
-func (mockClient *OnePasswordMockClient) GetItems(vaultUUID string) ([]onepassword.Item, error) {
-	return mockClient.MockItems[vaultUUID], nil
-}
-
-// GetFileContent returns file data, you must preload.
-func (mockClient *OnePasswordMockClient) GetFileContent(file *onepassword.File) ([]byte, error) {
-	value, ok := mockClient.MockFileContents[file.Name]
-	if !ok {
-		return []byte{}, errors.New("status 400: Invalid File Name")
-	}
-
-	return value, nil
+// GetItemByUUID unused fake.
+func (mockClient *OnePasswordMockClient) GetItemByUUID(uuid, vaultQuery string) (*onepassword.Item, error) {
+	return &onepassword.Item{}, nil
 }
 }
 
 
-// GetVaults fake.
-func (mockClient *OnePasswordMockClient) GetVaults() ([]onepassword.Vault, error) {
-	return []onepassword.Vault{}, nil
+// GetItemByTitle unused fake.
+func (mockClient *OnePasswordMockClient) GetItemByTitle(title, vaultUUID string) (*onepassword.Item, error) {
+	return &onepassword.Item{}, nil
 }
 }
 
 
-// GetVault fake.
-func (mockClient *OnePasswordMockClient) GetVault(uuid string) (*onepassword.Vault, error) {
-	return &onepassword.Vault{}, nil
-}
+// GetItemsByTitle returns a list of items, you must preload.
+func (mockClient *OnePasswordMockClient) GetItemsByTitle(itemUUID, vaultUUID string) ([]onepassword.Item, error) {
+	items := []onepassword.Item{}
+	for _, item := range mockClient.MockItems[vaultUUID] {
+		if item.Title == itemUUID {
+			items = append(items, item)
+		}
+	}
 
 
-// GetItemByTitle fake.
-func (mockClient *OnePasswordMockClient) GetItemByTitle(title, vaultUUID string) (*onepassword.Item, error) {
-	return &onepassword.Item{}, nil
+	return items, nil
 }
 }
 
 
-// CreateItem fake.
+// CreateItem unused fake.
 func (mockClient *OnePasswordMockClient) CreateItem(item *onepassword.Item, vaultUUID string) (*onepassword.Item, error) {
 func (mockClient *OnePasswordMockClient) CreateItem(item *onepassword.Item, vaultUUID string) (*onepassword.Item, error) {
 	return &onepassword.Item{}, nil
 	return &onepassword.Item{}, nil
 }
 }
 
 
-// UpdateItem fake.
+// UpdateItem unused fake.
 func (mockClient *OnePasswordMockClient) UpdateItem(item *onepassword.Item, vaultUUID string) (*onepassword.Item, error) {
 func (mockClient *OnePasswordMockClient) UpdateItem(item *onepassword.Item, vaultUUID string) (*onepassword.Item, error) {
 	return &onepassword.Item{}, nil
 	return &onepassword.Item{}, nil
 }
 }
 
 
-// DeleteItem fake.
+// DeleteItem unused fake.
 func (mockClient *OnePasswordMockClient) DeleteItem(item *onepassword.Item, vaultUUID string) error {
 func (mockClient *OnePasswordMockClient) DeleteItem(item *onepassword.Item, vaultUUID string) error {
 	return nil
 	return nil
 }
 }
 
 
-// GetFile fake.
+// DeleteItemByID unused fake.
+func (mockClient *OnePasswordMockClient) DeleteItemByID(itemUUID, vaultQuery string) error {
+	return nil
+}
+
+// GetFiles unused fake.
+func (mockClient *OnePasswordMockClient) GetFiles(itemQuery, vaultQuery string) ([]onepassword.File, error) {
+	return []onepassword.File{}, nil
+}
+
+// GetFile unused fake.
 func (mockClient *OnePasswordMockClient) GetFile(fileUUID, itemUUID, vaultUUID string) (*onepassword.File, error) {
 func (mockClient *OnePasswordMockClient) GetFile(fileUUID, itemUUID, vaultUUID string) (*onepassword.File, error) {
 	return &onepassword.File{}, nil
 	return &onepassword.File{}, nil
 }
 }
 
 
+// GetFileContent returns file data, you must preload.
+func (mockClient *OnePasswordMockClient) GetFileContent(file *onepassword.File) ([]byte, error) {
+	value, ok := mockClient.MockFileContents[file.Name]
+	if !ok {
+		return []byte{}, errors.New("status 400: Invalid File Name")
+	}
+
+	return value, nil
+}
+
+// DownloadFile unused fake.
+func (mockClient *OnePasswordMockClient) DownloadFile(file *onepassword.File, targetDirectory string, overwrite bool) (string, error) {
+	return "", nil
+}
+
+// LoadStructFromItemByUUID unused fake.
+func (mockClient *OnePasswordMockClient) LoadStructFromItemByUUID(config interface{}, itemUUID, vaultQuery string) error {
+	return nil
+}
+
+// LoadStructFromItemByTitle unused fake.
+func (mockClient *OnePasswordMockClient) LoadStructFromItemByTitle(config interface{}, itemTitle, vaultQuery string) error {
+	return nil
+}
+
+// LoadStructFromItem unused fake.
+func (mockClient *OnePasswordMockClient) LoadStructFromItem(config interface{}, itemQuery, vaultQuery string) error {
+	return nil
+}
+
+// LoadStructunused fake.
+func (mockClient *OnePasswordMockClient) LoadStruct(config interface{}) error {
+	return nil
+}
+
 // // For rigging test cases
 // // For rigging test cases
 
 
 // AddPredictableVault adds vaults to the mock client in a predictable way.
 // AddPredictableVault adds vaults to the mock client in a predictable way.