Skip to content

Commit 3e91ded

Browse files
TPT-4464: Update FirewallDeviceEntity Label field to be a pointer (#971)
* Update FirewallDeviceEntity Label field to be a pointer and adjust tests accordingly * Fix unit tests * fmt * Fix another unit test
1 parent 3a3dded commit 3e91ded

4 files changed

Lines changed: 18 additions & 10 deletions

File tree

firewall_devices.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ func (device *FirewallDevice) UnmarshalJSON(b []byte) error {
5959
type FirewallDeviceEntity struct {
6060
ID int `json:"id"`
6161
Type FirewallDeviceType `json:"type"`
62-
Label string `json:"label"`
62+
Label *string `json:"label"`
6363
URL string `json:"url"`
6464
ParentEntity *FirewallDeviceEntity `json:"parent_entity"`
6565
}

test/integration/firewalls_devices_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func TestFirewallDevices_List_smoke(t *testing.T) {
5656
if firewallDevices[0].Entity.ID != instance.ID {
5757
t.Errorf("expected device entity id %d, got %d", instance.ID, firewallDevices[0].Entity.ID)
5858
}
59-
if firewallDevices[0].Entity.Label == "" {
59+
if firewallDevices[0].Entity.Label == nil || *firewallDevices[0].Entity.Label == "" {
6060
t.Error("expected non-empty device entity label")
6161
}
6262
if firewallDevices[0].Entity.ParentEntity != nil {
@@ -91,7 +91,7 @@ func TestFirewallDevice_Get(t *testing.T) {
9191
} else if !cmp.Equal(device, firewallDevice) {
9292
t.Errorf("expected device to match create result but got diffs: %s", cmp.Diff(device, firewallDevice))
9393
} else {
94-
if device.Entity.Label == "" {
94+
if device.Entity.Label == nil || *device.Entity.Label == "" {
9595
t.Error("expected non-empty device entity label")
9696
}
9797
if device.Entity.ParentEntity != nil {

test/unit/firewall_devices_test.go

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
"github.com/jarcoal/httpmock"
99
"github.com/linode/linodego"
1010
"github.com/stretchr/testify/assert"
11+
"github.com/stretchr/testify/require"
1112
)
1213

1314
func TestFirewallDevice_List(t *testing.T) {
@@ -37,12 +38,14 @@ func TestFirewallDevice_List(t *testing.T) {
3738
switch device.Entity.Type {
3839
case "linode":
3940
assert.Equal(t, 123, device.Entity.ID)
40-
assert.Equal(t, "my-linode", device.Entity.Label)
41+
require.NotNil(t, device.Entity.Label)
42+
assert.Equal(t, "my-linode", *device.Entity.Label)
4143
assert.Equal(t, "/v4/linode/instances/123", device.Entity.URL)
4244
assert.Nil(t, device.Entity.ParentEntity)
4345
case "nodebalancer":
4446
assert.Equal(t, 321, device.Entity.ID)
45-
assert.Equal(t, "my-nodebalancer", device.Entity.Label)
47+
require.NotNil(t, device.Entity.Label)
48+
assert.Equal(t, "my-nodebalancer", *device.Entity.Label)
4649
assert.Equal(t, "/v4/nodebalancers/123", device.Entity.URL)
4750
assert.Nil(t, device.Entity.ParentEntity)
4851
default:
@@ -73,7 +76,8 @@ func TestFirewallDevice_Get(t *testing.T) {
7376
assert.NotNil(t, firewallDevice.Entity)
7477

7578
assert.Equal(t, 123, firewallDevice.Entity.ID)
76-
assert.Equal(t, "my-linode", firewallDevice.Entity.Label)
79+
require.NotNil(t, firewallDevice.Entity.Label)
80+
assert.Equal(t, "my-linode", *firewallDevice.Entity.Label)
7781
assert.Equal(t, linodego.FirewallDeviceType("linode"), firewallDevice.Entity.Type)
7882
assert.Equal(t, "/v4/linode/instances/123", firewallDevice.Entity.URL)
7983
assert.Nil(t, firewallDevice.Entity.ParentEntity)
@@ -106,7 +110,8 @@ func TestFirewallDevice_Create(t *testing.T) {
106110
assert.NotNil(t, firewallDevice.Entity)
107111

108112
assert.Equal(t, 123, firewallDevice.Entity.ID)
109-
assert.Equal(t, "my-linode", firewallDevice.Entity.Label)
113+
require.NotNil(t, firewallDevice.Entity.Label)
114+
assert.Equal(t, "my-linode", *firewallDevice.Entity.Label)
110115
assert.Equal(t, linodego.FirewallDeviceType("linode"), firewallDevice.Entity.Type)
111116
assert.Equal(t, "/v4/linode/instances/123", firewallDevice.Entity.URL)
112117
assert.Nil(t, firewallDevice.Entity.ParentEntity)
@@ -163,12 +168,13 @@ func TestFirewallDevice_Get_WithParentEntity(t *testing.T) {
163168
assert.NotNil(t, device)
164169

165170
assert.Equal(t, linodego.FirewallDeviceLinodeInterface, device.Entity.Type)
166-
assert.Equal(t, device.Entity.Label, "")
171+
assert.Nil(t, device.Entity.Label, nil)
167172

168173
if assert.NotNil(t, device.Entity.ParentEntity) {
169174
assert.Equal(t, 123, device.Entity.ParentEntity.ID)
170175
assert.Equal(t, linodego.FirewallDeviceLinode, device.Entity.ParentEntity.Type)
171-
assert.Equal(t, "my-linode", device.Entity.ParentEntity.Label)
176+
require.NotNil(t, device.Entity.ParentEntity.Label)
177+
assert.Equal(t, "my-linode", *device.Entity.ParentEntity.Label)
172178
assert.Equal(t, "/v4/linode/instances/123", device.Entity.ParentEntity.URL)
173179
}
174180
}

test/unit/firewalls_test.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
"github.com/jarcoal/httpmock"
1010
"github.com/linode/linodego"
1111
"github.com/stretchr/testify/assert"
12+
"github.com/stretchr/testify/require"
1213
)
1314

1415
func TestFirewall_List(t *testing.T) {
@@ -149,7 +150,8 @@ func TestFirewall_Create(t *testing.T) {
149150
assert.NotNil(t, entity.ParentEntity)
150151
assert.Equal(t, 92759172, entity.ParentEntity.ID)
151152
assert.Equal(t, linodego.FirewallDeviceLinode, entity.ParentEntity.Type)
152-
assert.Equal(t, "test-01", entity.ParentEntity.Label)
153+
require.NotNil(t, entity.ParentEntity.Label)
154+
assert.Equal(t, "test-01", *entity.ParentEntity.Label)
153155
assert.Equal(t, "/v4/linode/instances/92759172", entity.ParentEntity.URL)
154156
assert.Nil(t, entity.ParentEntity.ParentEntity)
155157
}

0 commit comments

Comments
 (0)