Files
wehub-resource-sync 9b395f5cc3
E2E Headed Chrome / e2e-headed (macos-15) (push) Has been cancelled
E2E Headed Chrome / e2e-headed (ubuntu-latest) (push) Has been cancelled
E2E Headed Chrome / e2e-headed (windows-latest) (push) Has been cancelled
CI / build (macos-latest) (push) Has been cancelled
CI / build (ubuntu-latest) (push) Has been cancelled
CI / build (windows-latest) (push) Has been cancelled
CI / unit-test (push) Has been cancelled
CI / bun-test (push) Has been cancelled
CI / adapter-test (push) Has been cancelled
CI / smoke-test (macos-latest) (push) Has been cancelled
CI / smoke-test (ubuntu-latest) (push) Has been cancelled
Security Audit / audit (push) Has been cancelled
Build Chrome Extension / build (push) Has been cancelled
Trigger Website Rebuild (Docs Updated) / dispatch (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:39:48 +08:00

46 lines
1.6 KiB
JavaScript

import { describe, expect, it } from 'vitest';
import { getRegistry } from '@jackwener/opencli/registry';
import './ask.js';
import './new.js';
import './send.js';
import './read.js';
import './status.js';
import './model.js';
describe('chatgpt-app desktop command registration', () => {
it('registers the baseline desktop chat commands with localhost scope', () => {
const expectedAccess = {
ask: 'write',
send: 'write',
read: 'read',
new: 'write',
status: 'read',
model: 'read',
};
for (const [name, access] of Object.entries(expectedAccess)) {
const cmd = getRegistry().get(`chatgpt-app/${name}`);
expect(cmd, `chatgpt-app/${name}`).toBeDefined();
expect(cmd.site).toBe('chatgpt-app');
expect(cmd.domain).toBe('localhost');
expect(cmd.strategy).toBe('public');
expect(cmd.browser).toBe(false);
expect(cmd.access).toBe(access);
}
});
it('defines the --temp boolean argument in the new command', () => {
const newCmd = getRegistry().get('chatgpt-app/new');
expect(newCmd.args).toEqual(expect.arrayContaining([
expect.objectContaining({ name: 'temp', type: 'boolean', default: false }),
]));
});
it('defines the --image argument in the ask command', () => {
const askCmd = getRegistry().get('chatgpt-app/ask');
expect(askCmd.args).toEqual(expect.arrayContaining([
expect.objectContaining({ name: 'image', required: false }),
]));
});
});