• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

UiPath / uipathcli / 22829811383

08 Mar 2026 09:02PM UTC coverage: 90.055% (-0.9%) from 90.914%
22829811383

Pull #212

github

Chibi Vikram
Fix pack file size reporting by flushing zip before stat

Close zip writer and file before os.Stat to ensure all data
is flushed to disk, fixing TestPackReportsFileSize on all platforms.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Pull Request #212: Add studio solution commands, skill, and agents.md

543 of 674 new or added lines in 16 files covered. (80.56%)

3 existing lines in 1 file now uncovered.

7317 of 8125 relevant lines covered (90.06%)

1.01 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

92.59
/plugin/studio/solution/list/solution_list_command.go
1
// Package list implements the command plugin for listing solutions
2
// from UiPath Studio Web.
3
package list
4

5
import (
6
        "bytes"
7
        "encoding/json"
8
        "errors"
9
        "fmt"
10
        "net/http"
11

12
        "github.com/UiPath/uipathcli/log"
13
        "github.com/UiPath/uipathcli/output"
14
        "github.com/UiPath/uipathcli/plugin"
15
        "github.com/UiPath/uipathcli/utils/api"
16
)
17

18
// The SolutionListCommand lists solutions from Studio Web.
19
type SolutionListCommand struct{}
20

21
func (c SolutionListCommand) Command() plugin.Command {
1✔
22
        return *plugin.NewCommand("studio").
1✔
23
                WithCategory("solution", "UiPath Solution management", "Pack, unpack, push and pull UiPath Maestro solutions.").
1✔
24
                WithOperation("list", "List Solutions", "Lists solutions from UiPath Studio Web")
1✔
25
}
1✔
26

27
func (c SolutionListCommand) Execute(ctx plugin.ExecutionContext, writer output.OutputWriter, logger log.Logger) error {
1✔
28
        if ctx.Organization == "" {
2✔
29
                return errors.New("Organization is not set")
1✔
30
        }
1✔
31

32
        client := api.NewStudioClient(ctx.BaseUri, ctx.Organization, ctx.Auth.Token, ctx.Debug, ctx.Settings, logger)
1✔
33
        solutions, err := client.ListSolutions()
1✔
34
        if err != nil {
2✔
35
                return err
1✔
36
        }
1✔
37

38
        result := solutionListResult{
1✔
39
                Status:    "Succeeded",
1✔
40
                Solutions: solutions,
1✔
41
        }
1✔
42

1✔
43
        jsonData, err := json.Marshal(result)
1✔
44
        if err != nil {
1✔
NEW
45
                return fmt.Errorf("List command failed: %w", err)
×
NEW
46
        }
×
47
        return writer.WriteResponse(*output.NewResponseInfo(http.StatusOK, "200 OK", "HTTP/1.1", map[string][]string{}, bytes.NewReader(jsonData)))
1✔
48
}
49

50
func NewSolutionListCommand() *SolutionListCommand {
1✔
51
        return &SolutionListCommand{}
1✔
52
}
1✔
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc