From cf15e4f8c1fdd7315350e8475ef25cacfb5a7b3d Mon Sep 17 00:00:00 2001 From: Marvin Zhang Date: Fri, 22 Nov 2024 10:29:19 +0800 Subject: [PATCH] test: fix test cases --- core/task/handler/runner.go | 10 ++++++---- core/task/handler/runner_test.go | 17 ++++++++++++++--- 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/core/task/handler/runner.go b/core/task/handler/runner.go index f45b7bf3..297e654b 100644 --- a/core/task/handler/runner.go +++ b/core/task/handler/runner.go @@ -277,13 +277,15 @@ func (r *Runner) configureCmd() (err error) { // Configure pipes for IPC r.stdinPipe, err = r.cmd.StdinPipe() if err != nil { - return trace.TraceError(err) + log.Errorf("error creating stdin pipe: %v", err) + return err } // Add stdout pipe for IPC r.stdoutPipe, err = r.cmd.StdoutPipe() if err != nil { - return trace.TraceError(err) + log.Errorf("error creating stdout pipe: %v", err) + return err } // Initialize IPC channel @@ -928,13 +930,13 @@ func newTaskRunner(id primitive.ObjectID, svc *Service) (r *Runner, err error) { // task r.t, err = svc.GetTaskById(id) if err != nil { - return nil, err + return r, err } // spider r.s, err = svc.GetSpiderById(r.t.SpiderId) if err != nil { - return nil, err + return r, err } // task fs service diff --git a/core/task/handler/runner_test.go b/core/task/handler/runner_test.go index 28ea374e..8acd8b83 100644 --- a/core/task/handler/runner_test.go +++ b/core/task/handler/runner_test.go @@ -12,12 +12,17 @@ import ( "github.com/crawlab-team/crawlab/core/constants" "github.com/crawlab-team/crawlab/core/models/models" "github.com/crawlab-team/crawlab/core/models/service" + "github.com/spf13/viper" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "go.mongodb.org/mongo-driver/bson/primitive" ) func setupTest(t *testing.T) *Runner { + // Mock IsMaster function by setting viper config + viper.Set("node.master", true) + defer viper.Set("node.master", nil) // cleanup after test + // Create a test spider spider := &models.Spider{ Name: "Test Spider", @@ -39,12 +44,18 @@ func setupTest(t *testing.T) *Runner { require.NoError(t, err) task.Id = taskId - // Create a test runner + // Create a task handler service svc := newTaskHandlerService() + + // Create a task runner runner, _ := newTaskRunner(task.Id, svc) require.NotNil(t, runner) - err = runner.updateTask("", nil) - require.Nil(t, err) + + // Set task and spider + runner.t = task + runner.s = spider + + // Initialize runner _ = runner.Init() err = runner.configureCmd() require.Nil(t, err)