/ clis / douyin / _shared / sts2.test.js
sts2.test.js
 1  import { describe, expect, it } from 'vitest';
 2  import { AuthRequiredError } from '@jackwener/opencli/errors';
 3  import { getSts2Credentials } from './sts2.js';
 4  describe('douyin sts2 credentials', () => {
 5      it('accepts top-level credential fields returned by creator center', async () => {
 6          const page = {
 7              evaluate: async () => ({
 8                  access_key_id: 'ak',
 9                  secret_access_key: 'sk',
10                  session_token: 'token',
11                  expired_time: 1_234_567_890,
12              }),
13          };
14          await expect(getSts2Credentials(page)).resolves.toEqual({
15              access_key_id: 'ak',
16              secret_access_key: 'sk',
17              session_token: 'token',
18              expired_time: 1_234_567_890,
19          });
20      });
21      it('still rejects responses without credential fields', async () => {
22          const page = {
23              evaluate: async () => ({ status_code: 8 }),
24          };
25          await expect(getSts2Credentials(page)).rejects.toBeInstanceOf(AuthRequiredError);
26      });
27  });