Skip to content

Commit df3e16d

Browse files
committed
work around spec issue for organization address
1 parent 582277b commit df3e16d

File tree

4 files changed

+27
-4
lines changed

4 files changed

+27
-4
lines changed

internal/organizations/create.go

+8-1
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,13 @@ func (c *Client) Create() *cobra.Command {
5151
RunE: func(cmd *cobra.Command, args []string) error {
5252
cmd.SilenceUsage = true
5353

54+
// API spec says organization address.address is required,
55+
// but the address is not included by default
56+
defaultIncludes := []string{"address", "billing_address"}
57+
58+
include := c.Servicer.Includes(defaultIncludes)
59+
exclude := c.Servicer.Excludes(nil)
60+
5461
req := metal.NewOrganizationInput()
5562
req.Name = &name
5663

@@ -70,7 +77,7 @@ func (c *Client) Create() *cobra.Command {
7077
req.Logo = &logo
7178
}
7279

73-
org, _, err := c.Service.CreateOrganization(context.Background()).OrganizationInput(*req).Include(c.Servicer.Includes(nil)).Exclude(c.Servicer.Excludes(nil)).Execute()
80+
org, _, err := c.Service.CreateOrganization(context.Background()).OrganizationInput(*req).Include(include).Exclude(exclude).Execute()
7481
if err != nil {
7582
return fmt.Errorf("Could not create Organization: %w", err)
7683
}

internal/organizations/retrieve.go

+6-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,12 @@ func (c *Client) Retrieve() *cobra.Command {
4444

4545
RunE: func(cmd *cobra.Command, args []string) error {
4646
cmd.SilenceUsage = true
47-
include := c.Servicer.Includes(nil)
47+
48+
// API spec says organization address.address is required,
49+
// but the address is not included by default
50+
defaultIncludes := []string{"address", "billing_address"}
51+
52+
include := c.Servicer.Includes(defaultIncludes)
4853
exclude := c.Servicer.Excludes(nil)
4954

5055
if organizationID == "" {

internal/organizations/update.go

+8-1
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,13 @@ func (c *Client) Update() *cobra.Command {
4242
cmd.SilenceUsage = true
4343
req := metal.NewOrganizationInput()
4444

45+
// API spec says organization address.address is required,
46+
// but the address is not included by default
47+
defaultIncludes := []string{"address", "billing_address"}
48+
49+
include := c.Servicer.Includes(defaultIncludes)
50+
exclude := c.Servicer.Excludes(nil)
51+
4552
if name != "" {
4653
req.Name = &name
4754
}
@@ -62,7 +69,7 @@ func (c *Client) Update() *cobra.Command {
6269
req.Website = &website
6370
}
6471

65-
org, _, err := c.Service.UpdateOrganization(context.Background(), organizationID).OrganizationInput(*req).Execute()
72+
org, _, err := c.Service.UpdateOrganization(context.Background(), organizationID).OrganizationInput(*req).Include(include).Exclude(exclude).Execute()
6673
if err != nil {
6774
return fmt.Errorf("Could not update Organization: %w", err)
6875
}

test/helper/helper.go

+5-1
Original file line numberDiff line numberDiff line change
@@ -377,7 +377,11 @@ func CreateTestOrganization(name string) (string, error) {
377377
addr.SetZipCode("02108")
378378
organizationInput.Address = addr
379379

380-
resp, _, err := TestApiClient.OrganizationsApi.CreateOrganization(context.Background()).OrganizationInput(*organizationInput).Execute()
380+
// API spec says organization address.address is required,
381+
// but the address is not included by default
382+
defaultIncludes := []string{"address", "billing_address"}
383+
384+
resp, _, err := TestApiClient.OrganizationsApi.CreateOrganization(context.Background()).OrganizationInput(*organizationInput).Include(defaultIncludes).Execute()
381385
if err != nil {
382386
fmt.Fprintf(os.Stderr, "Error when calling `OrganizationsApi.CreateOrganization``: %v\n", err)
383387
return "", err

0 commit comments

Comments
 (0)