From fc8c5fdce62fb229202659408798a7b6c98f6e8b Mon Sep 17 00:00:00 2001 From: 简律纯 Date: Fri, 28 Apr 2023 01:36:55 +0800 Subject: --- cli/internal/core/engine_test.go | 88 ---------------------------------------- 1 file changed, 88 deletions(-) delete mode 100644 cli/internal/core/engine_test.go (limited to 'cli/internal/core/engine_test.go') diff --git a/cli/internal/core/engine_test.go b/cli/internal/core/engine_test.go deleted file mode 100644 index a92264d..0000000 --- a/cli/internal/core/engine_test.go +++ /dev/null @@ -1,88 +0,0 @@ -package core - -import ( - "errors" - "testing" - - "github.com/vercel/turbo/cli/internal/fs" - "github.com/vercel/turbo/cli/internal/graph" - "github.com/vercel/turbo/cli/internal/workspace" - "gotest.tools/v3/assert" - - "github.com/pyr-sh/dag" -) - -func TestShortCircuiting(t *testing.T) { - var workspaceGraph dag.AcyclicGraph - workspaceGraph.Add("a") - workspaceGraph.Add("b") - workspaceGraph.Add("c") - // Dependencies: a -> b -> c - workspaceGraph.Connect(dag.BasicEdge("a", "b")) - workspaceGraph.Connect(dag.BasicEdge("b", "c")) - - buildTask := &fs.BookkeepingTaskDefinition{} - err := buildTask.UnmarshalJSON([]byte("{\"dependsOn\": [\"^build\"]}")) - assert.NilError(t, err, "BookkeepingTaskDefinition unmarshall") - - pipeline := map[string]fs.BookkeepingTaskDefinition{ - "build": *buildTask, - } - - p := NewEngine(&graph.CompleteGraph{ - WorkspaceGraph: workspaceGraph, - Pipeline: pipeline, - TaskDefinitions: map[string]*fs.TaskDefinition{}, - WorkspaceInfos: workspace.Catalog{ - PackageJSONs: map[string]*fs.PackageJSON{ - "//": {}, - "a": {}, - "b": {}, - "c": {}, - }, - TurboConfigs: map[string]*fs.TurboJSON{ - "//": { - Pipeline: pipeline, - }, - }, - }, - }, false) - - p.AddTask("build") - - err = p.Prepare(&EngineBuildingOptions{ - Packages: []string{"a", "b", "c"}, - TaskNames: []string{"build"}, - TasksOnly: false, - }) - - if err != nil { - t.Fatalf("%v", err) - } - - executed := map[string]bool{ - "a#build": false, - "b#build": false, - "c#build": false, - } - expectedErr := errors.New("an error occurred") - // b#build is going to error, we expect to not execute a#build, which depends on b - testVisitor := func(taskID string) error { - println(taskID) - executed[taskID] = true - if taskID == "b#build" { - return expectedErr - } - return nil - } - - errs := p.Execute(testVisitor, EngineExecutionOptions{ - Concurrency: 10, - }) - assert.Equal(t, len(errs), 1) - assert.Equal(t, errs[0], expectedErr) - - assert.Equal(t, executed["c#build"], true) - assert.Equal(t, executed["b#build"], true) - assert.Equal(t, executed["a#build"], false) -} -- cgit v1.2.3-70-g09d2