/ clis / wanfang / search.test.js
search.test.js
 1  import { describe, expect, it, vi } from 'vitest';
 2  import { getRegistry } from '@jackwener/opencli/registry';
 3  import './search.js';
 4  
 5  describe('wanfang search command', () => {
 6      const command = getRegistry().get('wanfang/search');
 7  
 8      it('registers as a public browser command', () => {
 9          expect(command).toBeDefined();
10          expect(command.site).toBe('wanfang');
11          expect(command.strategy).toBe('public');
12          expect(command.browser).toBe(true);
13      });
14  
15      it('rejects empty queries before browser navigation', async () => {
16          const page = { goto: vi.fn() };
17          await expect(command.func(page, { query: '   ' })).rejects.toMatchObject({
18              name: 'ArgumentError',
19              code: 'ARGUMENT',
20          });
21          expect(page.goto).not.toHaveBeenCalled();
22      });
23  });