refactor services to use Interface and change name to app
This commit is contained in:
@@ -38,17 +38,12 @@ func BaseDetails() taskui.TaskDetails {
|
||||
}
|
||||
}
|
||||
|
||||
func BaseConfig() task.TaskConfig {
|
||||
return task.TaskConfig{
|
||||
IssuePrefix: "pm",
|
||||
WebAddress: ":8080",
|
||||
BeadsDBPath: "./.pm/db.db",
|
||||
StatisticsStoragePath: "./.pm/stats.json",
|
||||
}
|
||||
func BaseConfig() task.Config {
|
||||
return service.BaseConfig
|
||||
}
|
||||
|
||||
func ClearIssues(svc *service.Services) error {
|
||||
return svc.Beads.DeleteIssues()
|
||||
func ClearIssues(app *service.App) error {
|
||||
return app.Issues.DeleteIssues()
|
||||
}
|
||||
|
||||
func BaseQuestions(interfaceType task.InterfaceType) taskui.Questions {
|
||||
|
||||
@@ -23,14 +23,14 @@ Please write your code below this line!
|
||||
`
|
||||
|
||||
type CodingTask struct {
|
||||
svc *service.Services
|
||||
app *service.App
|
||||
}
|
||||
|
||||
func NewCodingTask(svc *service.Services) *CodingTask {
|
||||
return &CodingTask{svc: svc}
|
||||
func NewCodingTask(app *service.App) *CodingTask {
|
||||
return &CodingTask{app: app}
|
||||
}
|
||||
|
||||
func (t *CodingTask) Config() task.TaskConfig {
|
||||
func (t *CodingTask) Config() task.Config {
|
||||
return BaseConfig().WithStatisticsStoragePath("./.pm/coding-task-stats.json")
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ func (t *CodingTask) Questions(interfaceType task.InterfaceType) (questions task
|
||||
}
|
||||
|
||||
func (t *CodingTask) Setup(ctx context.Context) error {
|
||||
if err := ClearIssues(t.svc); err != nil {
|
||||
if err := ClearIssues(t.app); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -71,7 +71,6 @@ func (t *CodingTask) Setup(ctx context.Context) error {
|
||||
}
|
||||
|
||||
func (t *CodingTask) Validate(ctx context.Context) (bool, error) {
|
||||
|
||||
file, err := os.ReadFile("./code.txt")
|
||||
if err != nil {
|
||||
return false, err
|
||||
|
||||
@@ -17,14 +17,14 @@ Assign this task to yourself and start creating the issue.
|
||||
Make sure to fill out all the necessary details, including the title, description, and assignee.`
|
||||
|
||||
type CreateIssueTask struct {
|
||||
svc *service.Services
|
||||
app *service.App
|
||||
}
|
||||
|
||||
func NewCreateIssueTask(svc *service.Services) *CreateIssueTask {
|
||||
return &CreateIssueTask{svc: svc}
|
||||
func NewCreateIssueTask(app *service.App) *CreateIssueTask {
|
||||
return &CreateIssueTask{app: app}
|
||||
}
|
||||
|
||||
func (t *CreateIssueTask) Config() task.TaskConfig {
|
||||
func (t *CreateIssueTask) Config() task.Config {
|
||||
return BaseConfig().WithStatisticsStoragePath("./.pm/create-issue-stats.json")
|
||||
}
|
||||
|
||||
@@ -38,18 +38,18 @@ func (t *CreateIssueTask) Questions(interfaceType task.InterfaceType) taskui.Que
|
||||
|
||||
func (t *CreateIssueTask) Setup(ctx context.Context) error {
|
||||
// Clear existing issues to ensure a clean state for the task
|
||||
if err := ClearIssues(t.svc); err != nil {
|
||||
if err := ClearIssues(t.app); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
issue := models.NewBaseIssue().
|
||||
WithTitle("Create a New Issue").WithDescription(description).Build()
|
||||
|
||||
return t.svc.Beads.CreateIssue(ctx, &issue, "")
|
||||
return t.app.Issues.CreateIssue(ctx, &issue, "")
|
||||
}
|
||||
|
||||
func (t *CreateIssueTask) Validate(ctx context.Context) (bool, error) {
|
||||
issues, err := t.svc.Beads.SearchIssues(ctx, "", models.IssueFilter{})
|
||||
issues, err := t.app.Issues.SearchIssues(ctx, "", models.IssueFilter{})
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user