Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
  • Loading branch information
nithyatsu committed Jan 31, 2025
1 parent e754792 commit 16b0589
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 35 deletions.
29 changes: 12 additions & 17 deletions pkg/cli/cmd/resource/list/list.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ package list

import (
"context"
"strings"

"github.com/radius-project/radius/pkg/cli"
"github.com/radius-project/radius/pkg/cli/clients"
Expand Down Expand Up @@ -74,13 +73,15 @@ rad resource list Applications.Core/containers -a icecream-store

// Runner is the runner implementation for the `rad resource list` command.
type Runner struct {
ConfigHolder *framework.ConfigHolder
ConnectionFactory connections.Factory
Output output.Interface
Workspace *workspaces.Workspace
ApplicationName string
Format string
ResourceType string
ConfigHolder *framework.ConfigHolder
ConnectionFactory connections.Factory
Output output.Interface
Workspace *workspaces.Workspace
ApplicationName string
Format string
ResourceType string
ResourceTypeSuffix string
ResourceProviderNameSpace string
}

// NewRunner creates a new instance of the `rad resource list` runner.
Expand Down Expand Up @@ -117,11 +118,11 @@ func (r *Runner) Validate(cmd *cobra.Command, args []string) error {
}
r.ApplicationName = applicationName

resourceProviderName, resourceTypeName, err := cli.RequireFullyQualifiedResourceType(args)
r.ResourceProviderNameSpace, r.ResourceTypeSuffix, err = cli.RequireFullyQualifiedResourceType(args)
if err != nil {
return err
}
r.ResourceType = resourceProviderName + "/" + resourceTypeName
r.ResourceType = r.ResourceProviderNameSpace + "/" + r.ResourceTypeSuffix

format, err := cli.RequireOutput(cmd)
if err != nil {
Expand All @@ -147,13 +148,7 @@ func (r *Runner) Run(ctx context.Context) error {

var resourceList []generated.GenericResource

parts := strings.Split(r.ResourceType, "/")
if len(parts) != 2 {
return clierrors.Message("Invalid resource type %q. Expected format: '<provider>/<type>'", r.ResourceType)
}
resourceProviderNamespace := parts[0]
resourceTypeSuffix := parts[1]
_, err = common.GetResourceTypeDetails(ctx, resourceProviderNamespace, resourceTypeSuffix, client)
_, err = common.GetResourceTypeDetails(ctx, r.ResourceProviderNameSpace, r.ResourceTypeSuffix, client)
if err != nil {
return err
}
Expand Down
42 changes: 24 additions & 18 deletions pkg/cli/cmd/resource/list/list_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -132,12 +132,14 @@ func Test_Run(t *testing.T) {
outputSink := &output.MockOutput{}

runner := &Runner{
ConnectionFactory: &connections.MockFactory{ApplicationsManagementClient: appManagementClient},
Output: outputSink,
Workspace: &workspaces.Workspace{Name: radcli.TestWorkspaceName},
ApplicationName: "test-app",
ResourceType: "Applications.Core/containers",
Format: "table",
ConnectionFactory: &connections.MockFactory{ApplicationsManagementClient: appManagementClient},
Output: outputSink,
Workspace: &workspaces.Workspace{Name: radcli.TestWorkspaceName},
ApplicationName: "test-app",
ResourceType: "Applications.Core/containers",
Format: "table",
ResourceTypeSuffix: "containers",
ResourceProviderNameSpace: "Applications.Core",
}

err := runner.Run(context.Background())
Expand Down Expand Up @@ -180,12 +182,14 @@ func Test_Run(t *testing.T) {
outputSink := &output.MockOutput{}

runner := &Runner{
ConnectionFactory: &connections.MockFactory{ApplicationsManagementClient: appManagementClient},
Output: outputSink,
Workspace: &workspaces.Workspace{},
ApplicationName: "test-app",
ResourceType: "Applications.Core/containers",
Format: "table",
ConnectionFactory: &connections.MockFactory{ApplicationsManagementClient: appManagementClient},
Output: outputSink,
Workspace: &workspaces.Workspace{},
ApplicationName: "test-app",
ResourceType: "Applications.Core/containers",
Format: "table",
ResourceTypeSuffix: "containers",
ResourceProviderNameSpace: "Applications.Core",
}

err := runner.Run(context.Background())
Expand Down Expand Up @@ -235,12 +239,14 @@ func Test_Run(t *testing.T) {
outputSink := &output.MockOutput{}

runner := &Runner{
ConnectionFactory: &connections.MockFactory{ApplicationsManagementClient: appManagementClient},
Output: outputSink,
Workspace: &workspaces.Workspace{},
ApplicationName: "",
ResourceType: "Applications.Core/containers",
Format: "table",
ConnectionFactory: &connections.MockFactory{ApplicationsManagementClient: appManagementClient},
Output: outputSink,
Workspace: &workspaces.Workspace{},
ApplicationName: "",
ResourceType: "Applications.Core/containers",
Format: "table",
ResourceTypeSuffix: "containers",
ResourceProviderNameSpace: "Applications.Core",
}

err := runner.Run(context.Background())
Expand Down

0 comments on commit 16b0589

Please sign in to comment.