-- Fixture for refusing a rename onto a path a draft already occupies. -- -- A deployed script at `u/test-user/mvtaken_a` (hash 7010 = 0x1b62), and a -- never-deployed draft of test-user's own at `u/test-user/mvtaken_b`, the path -- the rename will target. Nothing deployed lives at the target, so only the -- draft can refuse the move. INSERT INTO script (workspace_id, hash, path, content, language, kind, created_by, schema, summary, description, lock, extra_perms) VALUES ('test-workspace', 7010, 'u/test-user/mvtaken_a', 'export function main() { return 1 }', 'deno', 'script', 'test-user', '{}', 'A', '', '', '{}'); INSERT INTO draft (workspace_id, path, typ, value, email) VALUES ('test-workspace', 'u/test-user/mvtaken_b', 'script', '{"path": "u/test-user/mvtaken_b", "summary": "B", "content": ""}', 'test@windmill.dev'); -- An ownerless (pre per-user drafts) row at a third path: a deploy there deletes it -- together with the caller's, so it occupies the path just as an own draft does. INSERT INTO draft (workspace_id, path, typ, value, email) VALUES ('test-workspace', 'u/test-user/mvtaken_legacy', 'script', '{"path": "u/test-user/mvtaken_legacy", "summary": "legacy", "content": ""}', NULL); -- A draft-only classic app and a draft-only raw app of the same owner. They share -- the `app` table, so one occupies the other's path. The third is another user's raw -- app: a different item at its own path, not a second copy of anyone's. INSERT INTO draft (workspace_id, path, typ, value, email) VALUES ('test-workspace', 'u/test-user/mvtaken_app', 'app', '{"summary": "classic", "value": {}}', 'test@windmill.dev'), ('test-workspace', 'u/test-user/mvtaken_raw', 'raw_app', '{"summary": "raw", "files": {}}', 'test@windmill.dev'), ('test-workspace', 'u/test-user/mvtaken_theirs', 'raw_app', '{"summary": "theirs", "files": {}}', 'test2@windmill.dev'), ('test-workspace', 'u/test-user/mvtaken_app_theirs', 'app', '{"summary": "theirs", "value": {}}', 'test2@windmill.dev');