Skip to content

Commit

Permalink
test: modifying fake to only initialize the query once
Browse files Browse the repository at this point in the history
  • Loading branch information
Bryce-Soghigian committed Jan 28, 2025
1 parent 9d49d25 commit 38666ed
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 9 deletions.
18 changes: 16 additions & 2 deletions pkg/fake/azureresourcegraphapi.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,23 @@ type AzureResourceGraphBehavior struct {
var _ instance.AzureResourceGraphAPI = &AzureResourceGraphAPI{}

type AzureResourceGraphAPI struct {
vmListQuery string
nicListQuery string
AzureResourceGraphBehavior
}

func NewAzureResourceGraphAPI(resourceGroup string, virtualMachinesAPI *VirtualMachinesAPI, networkInterfacesAPI *NetworkInterfacesAPI) *AzureResourceGraphAPI {
return &AzureResourceGraphAPI{
vmListQuery: instance.GetVMListQueryBuilder(resourceGroup).String(),
nicListQuery: instance.GetNICListQueryBuilder(resourceGroup).String(),
AzureResourceGraphBehavior: AzureResourceGraphBehavior{
VirtualMachinesAPI: virtualMachinesAPI,
NetworkInterfacesAPI: networkInterfacesAPI,
ResourceGroup: resourceGroup,
},
}
}

// Reset must be called between tests otherwise tests will pollute each other.
func (c *AzureResourceGraphAPI) Reset() {}

Expand All @@ -68,7 +82,7 @@ func (c *AzureResourceGraphAPI) Resources(_ context.Context, query armresourcegr

func (c *AzureResourceGraphAPI) getResourceList(query string) []interface{} {
switch query {
case instance.GetVMListQueryBuilder(c.ResourceGroup).String():
case c.vmListQuery:
vmList := lo.Filter(c.loadVMObjects(), func(vm armcompute.VirtualMachine, _ int) bool {
return vm.Tags != nil && vm.Tags[instance.NodePoolTagKey] != nil
})
Expand All @@ -77,7 +91,7 @@ func (c *AzureResourceGraphAPI) getResourceList(query string) []interface{} {
return convertBytesToInterface(b)
})
return resourceList
case instance.GetNICListQueryBuilder(c.ResourceGroup).String():
case c.nicListQuery:
nicList := lo.Filter(c.loadNicObjects(), func(nic armnetwork.Interface, _ int) bool {
return nic.Tags != nil && nic.Tags[instance.NodePoolTagKey] != nil
})
Expand Down
2 changes: 1 addition & 1 deletion pkg/fake/azureresourcegraphapi_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ func TestAzureResourceGraphAPI_Resources_VM(t *testing.T) {
resourceGroup := "test_managed_cluster_rg"
subscriptionID := "test_sub"
virtualMachinesAPI := &VirtualMachinesAPI{}
azureResourceGraphAPI := &AzureResourceGraphAPI{AzureResourceGraphBehavior{VirtualMachinesAPI: virtualMachinesAPI, ResourceGroup: resourceGroup}}
azureResourceGraphAPI := NewAzureResourceGraphAPI(resourceGroup, virtualMachinesAPI, nil)
cases := []struct {
testName string
vmNames []string
Expand Down
7 changes: 1 addition & 6 deletions pkg/test/environment.go
Original file line number Diff line number Diff line change
Expand Up @@ -101,12 +101,7 @@ func NewRegionalEnvironment(ctx context.Context, env *coretest.Environment, regi
loadBalancersAPI := &fake.LoadBalancersAPI{}
nodeImageVersionsAPI := &fake.NodeImageVersionsAPI{}

azureResourceGraphAPI := &fake.AzureResourceGraphAPI{
AzureResourceGraphBehavior: fake.AzureResourceGraphBehavior{
VirtualMachinesAPI: virtualMachinesAPI,
NetworkInterfacesAPI: networkInterfacesAPI,
ResourceGroup: resourceGroup,
}}
azureResourceGraphAPI := fake.NewAzureResourceGraphAPI(resourceGroup, virtualMachinesAPI, networkInterfacesAPI)
// Cache
kubernetesVersionCache := cache.New(azurecache.KubernetesVersionTTL, azurecache.DefaultCleanupInterval)
instanceTypeCache := cache.New(instancetype.InstanceTypesCacheTTL, azurecache.DefaultCleanupInterval)
Expand Down

0 comments on commit 38666ed

Please sign in to comment.