diff --git a/internal/agent/component/data_operations.go b/internal/agent/component/data_operations.go index 939ce1042c..a740dfdbe0 100644 --- a/internal/agent/component/data_operations.go +++ b/internal/agent/component/data_operations.go @@ -279,7 +279,7 @@ func (d *DataOperationsComponent) GetInputForm() map[string]any { } } } - return map[string]any{} + return res } // Outputs returns the transformed payload. diff --git a/internal/agent/component/data_operations_test.go b/internal/agent/component/data_operations_test.go index 7bbd8ef68f..663c7311a9 100644 --- a/internal/agent/component/data_operations_test.go +++ b/internal/agent/component/data_operations_test.go @@ -24,6 +24,34 @@ import ( "ragflow/internal/agent/canvas" ) +func TestDataOperations_GetInputForm(t *testing.T) { + c, err := NewDataOperationsComponent(map[string]any{ + "query": []string{ + "{{sys.query}}", + "{{CodeExec:Run@result}}", + "{{sys.query}}", + }, + }) + if err != nil { + t.Fatalf("NewDataOperationsComponent: %v", err) + } + + got := c.(*DataOperationsComponent).GetInputForm() + want := map[string]any{ + "sys.query": map[string]any{ + "name": "sys.query", + "type": "line", + }, + "CodeExec:Run@result": map[string]any{ + "name": "CodeExec:Run@result", + "type": "line", + }, + } + if !reflect.DeepEqual(got, want) { + t.Errorf("GetInputForm = %#v, want %#v", got, want) + } +} + // TestDataOperations_SelectKeys: keep only specified keys. func TestDataOperations_SelectKeys(t *testing.T) { c, err := NewDataOperationsComponent(map[string]any{