github.com/databricks/cli@v0.203.0/bundle/run/output/task_test.go (about) 1 package output 2 3 import ( 4 "fmt" 5 "testing" 6 7 "github.com/databricks/databricks-sdk-go/service/jobs" 8 "github.com/stretchr/testify/assert" 9 "github.com/stretchr/testify/require" 10 ) 11 12 func TestNotebookOutputToString(t *testing.T) { 13 taskFoo := NotebookOutput{ 14 Result: "foo", 15 Truncated: true, 16 } 17 taskBar := NotebookOutput{ 18 Result: "bar", 19 Truncated: false, 20 } 21 22 actualFoo, err := taskFoo.String() 23 require.NoError(t, err) 24 assert.Equal(t, "foo\n[truncated...]\n", actualFoo) 25 26 actualBar, err := taskBar.String() 27 require.NoError(t, err) 28 assert.Equal(t, "bar", actualBar) 29 } 30 31 func TestLogsOutputToString(t *testing.T) { 32 taskFoo := LogsOutput{ 33 Logs: "foo", 34 LogsTruncated: true, 35 } 36 taskBar := LogsOutput{ 37 Logs: "bar", 38 LogsTruncated: false, 39 } 40 41 actualFoo, err := taskFoo.String() 42 require.NoError(t, err) 43 assert.Equal(t, "foo\n[truncated...]\n", actualFoo) 44 45 actualBar, err := taskBar.String() 46 require.NoError(t, err) 47 assert.Equal(t, "bar", actualBar) 48 } 49 50 func TestDbtOutputToString(t *testing.T) { 51 task := DbtOutput{ 52 ArtifactsHeaders: map[string]string{"a": "b", "c": "d"}, 53 ArtifactsLink: "my_link", 54 } 55 56 actual, err := task.String() 57 expected := `Dbt Task Output: 58 { 59 "artifacts_headers": { 60 "a": "b", 61 "c": "d" 62 }, 63 "artifacts_link": "my_link" 64 }` 65 require.NoError(t, err) 66 assert.Equal(t, expected, actual) 67 } 68 69 func TestSqlOutputToString(t *testing.T) { 70 task := SqlOutput{ 71 QueryOutput: &jobs.SqlQueryOutput{ 72 OutputLink: "a", 73 QueryText: "b", 74 WarehouseId: "d", 75 }, 76 } 77 78 actual, err := task.String() 79 expected := `SQL Task Output: 80 { 81 "query_output": { 82 "output_link": "a", 83 "query_text": "b", 84 "warehouse_id": "d" 85 } 86 }` 87 require.NoError(t, err) 88 fmt.Println("[DEBUG] actual: ", actual) 89 assert.Equal(t, expected, actual) 90 }