## Description Regex update to make it compatible to extract identifiers for both Mongo ObjectIds and UUIDs. This will help us to keep the unified logic required in `pg` branch. ## Automation /ok-to-test tags="@tag.Datasource, @tag.GenerateCRUD, @tag.ImportExport, @tag.Fork, @tag.Workspace, @tag.Sanity" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9405554200> > Commit: 3959703aab1d10e28d3b80057793476467126929 > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9405554200&attempt=2" target="_blank">Click here!</a> <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced URL path handling to support both UUID and Mongo ObjectIds. - **Refactor** - Replaced hardcoded page IDs with dynamic variables across multiple test files for improved maintainability and flexibility. - **Tests** - Updated test cases to use dynamic page IDs, ensuring consistency and easier updates in the future. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
76 lines
1.7 KiB
TypeScript
76 lines
1.7 KiB
TypeScript
import * as Factory from "factory.ts";
|
|
import type { ApiAction } from "entities/Action";
|
|
import { PaginationType, PluginPackageName, PluginType } from "entities/Action";
|
|
import { PluginIDs } from "test/factories/MockPluginsState";
|
|
|
|
const pageId = "0123456789abcdef00000000";
|
|
export const APIFactory = Factory.Sync.makeFactory<ApiAction>({
|
|
name: Factory.each((i) => `Api${i + 1}`),
|
|
id: "api_id",
|
|
pageId: pageId,
|
|
pluginId: PluginIDs[PluginPackageName.REST_API],
|
|
pluginType: PluginType.API,
|
|
workspaceId: "workspaceId",
|
|
actionConfiguration: {
|
|
timeoutInMillisecond: 10000,
|
|
paginationType: PaginationType.NONE,
|
|
headers: [
|
|
{
|
|
key: "",
|
|
value: "",
|
|
},
|
|
{
|
|
key: "",
|
|
value: "",
|
|
},
|
|
],
|
|
encodeParamsToggle: true,
|
|
queryParameters: [
|
|
{
|
|
key: "",
|
|
value: "",
|
|
},
|
|
{
|
|
key: "",
|
|
value: "",
|
|
},
|
|
],
|
|
body: "",
|
|
bodyFormData: [],
|
|
httpMethod: "GET",
|
|
httpVersion: "HTTP11",
|
|
pluginSpecifiedTemplates: [
|
|
{
|
|
value: true,
|
|
},
|
|
],
|
|
formData: {
|
|
apiContentType: "none",
|
|
},
|
|
},
|
|
cacheResponse: "",
|
|
datasource: {
|
|
userPermissions: [],
|
|
name: "DEFAULT_REST_DATASOURCE",
|
|
pluginId: PluginIDs[PluginPackageName.REST_API],
|
|
workspaceId: "workspaceId",
|
|
invalids: [],
|
|
messages: [],
|
|
isValid: true,
|
|
datasourceConfiguration: { url: "www.mock-api.appsmith.com" },
|
|
},
|
|
dynamicBindingPathList: [],
|
|
executeOnLoad: false,
|
|
invalids: [],
|
|
isValid: true,
|
|
jsonPathKeys: [],
|
|
messages: [],
|
|
userPermissions: [
|
|
"read:actions",
|
|
"delete:actions",
|
|
"execute:actions",
|
|
"manage:actions",
|
|
],
|
|
confirmBeforeExecute: false,
|
|
});
|