diff --git a/web/src/components/CreateTestPlugins/Curl/steps/ImportCommand/ImportCommand.tsx b/web/src/components/CreateTestPlugins/Curl/steps/ImportCommand/ImportCommand.tsx index b674732abb..ee394c856d 100644 --- a/web/src/components/CreateTestPlugins/Curl/steps/ImportCommand/ImportCommand.tsx +++ b/web/src/components/CreateTestPlugins/Curl/steps/ImportCommand/ImportCommand.tsx @@ -20,26 +20,16 @@ const ImportCommand = () => { [onNext] ); - const onRefreshData = useCallback(async () => { + useEffect(() => { const {command} = draftTest as ICurlValues; form.setFieldsValue({command}); - - try { - form.validateFields(); - onIsFormValid(true); - } catch (err) { - onIsFormValid(false); - } + onIsFormValid(CurlService.getIsValidCommand(command)); }, [draftTest, form, onIsFormValid]); - useEffect(() => { - onRefreshData(); - }, [onRefreshData]); - return ( - Paste the CURL command + CURL command id={ComponentNames.ImportCommand} autoComplete="off" diff --git a/web/src/components/CreateTestPlugins/Curl/steps/ImportCommand/ImportCommandForm.tsx b/web/src/components/CreateTestPlugins/Curl/steps/ImportCommand/ImportCommandForm.tsx index 48f13dfe6c..042a81b518 100644 --- a/web/src/components/CreateTestPlugins/Curl/steps/ImportCommand/ImportCommandForm.tsx +++ b/web/src/components/CreateTestPlugins/Curl/steps/ImportCommand/ImportCommandForm.tsx @@ -10,14 +10,17 @@ const ImportCommandForm = () => { return ( { - if (!CurlService.getIsValidCommand(command)) throw new Error('Invalid command'); + if (!CurlService.getIsValidCommand(command)) { + return Promise.reject(new Error('Invalid CURL command')); + } - return Promise.resolve(true); + return Promise.resolve(); }, message: 'Invalid CURL command', }, diff --git a/web/src/components/Editor/CurlCommand/CurlCommand.tsx b/web/src/components/Editor/CurlCommand/CurlCommand.tsx index be8cda6a6d..a7f37f8f19 100644 --- a/web/src/components/Editor/CurlCommand/CurlCommand.tsx +++ b/web/src/components/Editor/CurlCommand/CurlCommand.tsx @@ -12,7 +12,7 @@ const CurlCommand = ({value, onChange}: IEditorProps) => { basicSetup={{lineNumbers: true, indentOnInput: true}} extensions={[StreamLanguage.define(shell)]} spellCheck={false} - placeholder="Enter a curl command" + placeholder="curl -X POST http://site.com" /> ); }; diff --git a/web/src/services/Triggers/Curl.service.ts b/web/src/services/Triggers/Curl.service.ts index 3446165459..e6f7af144b 100644 --- a/web/src/services/Triggers/Curl.service.ts +++ b/web/src/services/Triggers/Curl.service.ts @@ -18,7 +18,7 @@ const CurlTriggerService = (): ICurlTriggerService => ({ async validateDraft(draft) { const {url, method} = draft as ICurlValues; - return Validator.required(url) && Validator.required(method) && Validator.url(url); + return Validator.required(url) && Validator.required(method); }, getRequestFromCommand(command) {