Skip to content

Commit

Permalink
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
Browse files Browse the repository at this point in the history
…rity-and-recursiveness
  • Loading branch information
olehshh authored Dec 9, 2024
2 parents 6e65d9f + 1f9c864 commit 91958bd
Show file tree
Hide file tree
Showing 19 changed files with 289 additions and 289 deletions.
26 changes: 13 additions & 13 deletions __tests__/commands/categories/create.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import nock from 'nock';
import { describe, beforeAll, afterEach, it, expect } from 'vitest';

import Command from '../../../src/commands/categories/create.js';
import { getAPIV1Mock, getAPIV1MockWithVersionHeader } from '../../helpers/get-api-mock.js';
import { getAPIv1Mock, getAPIv1MockWithVersionHeader } from '../../helpers/get-api-mock.js';
import { runCommandAndReturnResult } from '../../helpers/oclif.js';

const key = 'API_KEY';
Expand Down Expand Up @@ -33,20 +33,20 @@ describe('rdme categories create', () => {
});

it('should create a new category if the title and type do not match and preventDuplicates=true', async () => {
const getMock = getAPIV1MockWithVersionHeader(version)
const getMock = getAPIv1MockWithVersionHeader(version)
.persist()
.get('/api/v1/categories?perPage=20&page=1')
.basicAuth({ user: key })
.reply(200, [{ title: 'Existing Category', slug: 'existing-category', type: 'guide' }], {
'x-total-count': '1',
});

const postMock = getAPIV1MockWithVersionHeader(version)
const postMock = getAPIv1MockWithVersionHeader(version)
.post('/api/v1/categories')
.basicAuth({ user: key })
.reply(201, { title: 'New Category', slug: 'new-category', type: 'guide', id: '123' });

const versionMock = getAPIV1Mock()
const versionMock = getAPIv1Mock()
.get(`/api/v1/version/${version}`)
.basicAuth({ user: key })
.reply(200, { version });
Expand All @@ -61,20 +61,20 @@ describe('rdme categories create', () => {
});

it('should create a new category if the title matches but the type does not match and preventDuplicates=true', async () => {
const getMock = getAPIV1MockWithVersionHeader(version)
const getMock = getAPIv1MockWithVersionHeader(version)
.persist()
.get('/api/v1/categories?perPage=20&page=1')
.basicAuth({ user: key })
.reply(200, [{ title: 'Category', slug: 'category', type: 'guide' }], {
'x-total-count': '1',
});

const postMock = getAPIV1MockWithVersionHeader(version)
const postMock = getAPIv1MockWithVersionHeader(version)
.post('/api/v1/categories')
.basicAuth({ user: key })
.reply(201, { title: 'Category', slug: 'category', type: 'reference', id: '123' });

const versionMock = getAPIV1Mock()
const versionMock = getAPIv1Mock()
.get(`/api/v1/version/${version}`)
.basicAuth({ user: key })
.reply(200, { version });
Expand All @@ -89,12 +89,12 @@ describe('rdme categories create', () => {
});

it('should create a new category if the title and type match and preventDuplicates=false', async () => {
const postMock = getAPIV1MockWithVersionHeader(version)
const postMock = getAPIv1MockWithVersionHeader(version)
.post('/api/v1/categories')
.basicAuth({ user: key })
.reply(201, { title: 'Category', slug: 'category', type: 'reference', id: '123' });

const versionMock = getAPIV1Mock()
const versionMock = getAPIv1Mock()
.get(`/api/v1/version/${version}`)
.basicAuth({ user: key })
.reply(200, { version });
Expand All @@ -108,15 +108,15 @@ describe('rdme categories create', () => {
});

it('should not create a new category if the title and type match and preventDuplicates=true', async () => {
const getMock = getAPIV1MockWithVersionHeader(version)
const getMock = getAPIv1MockWithVersionHeader(version)
.persist()
.get('/api/v1/categories?perPage=20&page=1')
.basicAuth({ user: key })
.reply(200, [{ title: 'Category', slug: 'category', type: 'guide', id: '123' }], {
'x-total-count': '1',
});

const versionMock = getAPIV1Mock()
const versionMock = getAPIv1Mock()
.get(`/api/v1/version/${version}`)
.basicAuth({ user: key })
.reply(200, { version });
Expand All @@ -134,15 +134,15 @@ describe('rdme categories create', () => {
});

it('should not create a new category if the non case sensitive title and type match and preventDuplicates=true', async () => {
const getMock = getAPIV1MockWithVersionHeader(version)
const getMock = getAPIv1MockWithVersionHeader(version)
.persist()
.get('/api/v1/categories?perPage=20&page=1')
.basicAuth({ user: key })
.reply(200, [{ title: 'Category', slug: 'category', type: 'guide', id: '123' }], {
'x-total-count': '1',
});

const versionMock = getAPIV1Mock()
const versionMock = getAPIv1Mock()
.get(`/api/v1/version/${version}`)
.basicAuth({ user: key })
.reply(200, { version });
Expand Down
10 changes: 5 additions & 5 deletions __tests__/commands/categories/index.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import nock from 'nock';
import { describe, beforeAll, afterEach, it, expect } from 'vitest';

import Command from '../../../src/commands/categories/index.js';
import { getAPIV1Mock, getAPIV1MockWithVersionHeader } from '../../helpers/get-api-mock.js';
import { getAPIv1Mock, getAPIv1MockWithVersionHeader } from '../../helpers/get-api-mock.js';
import { runCommandAndReturnResult } from '../../helpers/oclif.js';

const key = 'API_KEY';
Expand All @@ -19,15 +19,15 @@ describe('rdme categories', () => {
afterEach(() => nock.cleanAll());

it('should return all categories for a single page', async () => {
const getMock = getAPIV1MockWithVersionHeader(version)
const getMock = getAPIv1MockWithVersionHeader(version)
.persist()
.get('/api/v1/categories?perPage=20&page=1')
.basicAuth({ user: key })
.reply(200, [{ title: 'One Category', slug: 'one-category', type: 'guide' }], {
'x-total-count': '1',
});

const versionMock = getAPIV1Mock()
const versionMock = getAPIv1Mock()
.get(`/api/v1/version/${version}`)
.basicAuth({ user: key })
.reply(200, { version });
Expand All @@ -41,7 +41,7 @@ describe('rdme categories', () => {
});

it('should return all categories for multiple pages', async () => {
const getMock = getAPIV1MockWithVersionHeader(version)
const getMock = getAPIv1MockWithVersionHeader(version)
.persist()
.get('/api/v1/categories?perPage=20&page=1')
.basicAuth({ user: key })
Expand All @@ -54,7 +54,7 @@ describe('rdme categories', () => {
'x-total-count': '21',
});

const versionMock = getAPIV1Mock()
const versionMock = getAPIv1Mock()
.get(`/api/v1/version/${version}`)
.basicAuth({ user: key })
.reply(200, { version });
Expand Down
26 changes: 13 additions & 13 deletions __tests__/commands/changelogs/index.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import { describe, beforeAll, afterAll, beforeEach, it, expect } from 'vitest';

import Command from '../../../src/commands/changelogs.js';
import { APIv1Error } from '../../../src/lib/apiError.js';
import { getAPIV1Mock } from '../../helpers/get-api-mock.js';
import { getAPIv1Mock } from '../../helpers/get-api-mock.js';
import hashFileContents from '../../helpers/hash-file-contents.js';
import { runCommandAndReturnResult } from '../../helpers/oclif.js';

Expand Down Expand Up @@ -67,15 +67,15 @@ describe('rdme changelogs', () => {
it('should fetch changelog and merge with what is returned', () => {
expect.assertions(1);

const getMocks = getAPIV1Mock()
const getMocks = getAPIv1Mock()
.get('/api/v1/changelogs/simple-doc')
.basicAuth({ user: key })
.reply(200, { slug: simpleDoc.slug, lastUpdatedHash: 'anOldHash' })
.get('/api/v1/changelogs/another-doc')
.basicAuth({ user: key })
.reply(200, { slug: anotherDoc.slug, lastUpdatedHash: 'anOldHash' });

const updateMocks = getAPIV1Mock()
const updateMocks = getAPIv1Mock()
.put('/api/v1/changelogs/simple-doc', {
body: simpleDoc.doc.content,
lastUpdatedHash: simpleDoc.hash,
Expand Down Expand Up @@ -112,7 +112,7 @@ describe('rdme changelogs', () => {
it('should return changelog update info for dry run', () => {
expect.assertions(1);

const getMocks = getAPIV1Mock()
const getMocks = getAPIv1Mock()
.get('/api/v1/changelogs/simple-doc')
.basicAuth({ user: key })
.reply(200, { slug: simpleDoc.slug, lastUpdatedHash: 'anOldHash' })
Expand Down Expand Up @@ -141,7 +141,7 @@ describe('rdme changelogs', () => {
it('should not send requests for changelogs that have not changed', () => {
expect.assertions(1);

const getMocks = getAPIV1Mock()
const getMocks = getAPIv1Mock()
.get('/api/v1/changelogs/simple-doc')
.basicAuth({ user: key })
.reply(200, { slug: simpleDoc.slug, lastUpdatedHash: simpleDoc.hash })
Expand All @@ -164,7 +164,7 @@ describe('rdme changelogs', () => {
it('should adjust "no changes" message if in dry run', () => {
expect.assertions(1);

const getMocks = getAPIV1Mock()
const getMocks = getAPIv1Mock()
.get('/api/v1/changelogs/simple-doc')
.basicAuth({ user: key })
.reply(200, { slug: simpleDoc.slug, lastUpdatedHash: simpleDoc.hash })
Expand Down Expand Up @@ -192,7 +192,7 @@ describe('rdme changelogs', () => {
const doc = frontMatter(fs.readFileSync(path.join(fullFixturesDir, `/new-docs/${slug}.md`)));
const hash = hashFileContents(fs.readFileSync(path.join(fullFixturesDir, `/new-docs/${slug}.md`)));

const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get(`/api/v1/changelogs/${slug}`)
.basicAuth({ user: key })
.reply(404, {
Expand All @@ -202,7 +202,7 @@ describe('rdme changelogs', () => {
help: 'If you need help, email [email protected] and mention log "fake-metrics-uuid".',
});

const postMock = getAPIV1Mock()
const postMock = getAPIv1Mock()
.post('/api/v1/changelogs', { slug, body: doc.content, ...doc.data, lastUpdatedHash: hash })
.basicAuth({ user: key })
.reply(201, { slug, _id: id, body: doc.content, ...doc.data, lastUpdatedHash: hash });
Expand All @@ -219,7 +219,7 @@ describe('rdme changelogs', () => {
const slug = 'new-doc';
const doc = frontMatter(fs.readFileSync(path.join(fullFixturesDir, `/new-docs/${slug}.md`)));

const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get(`/api/v1/changelogs/${slug}`)
.basicAuth({ user: key })
.reply(404, {
Expand Down Expand Up @@ -254,7 +254,7 @@ describe('rdme changelogs', () => {

const hash = hashFileContents(fs.readFileSync(path.join(fullFixturesDir, `/${folder}/${slug}.md`)));

const getMocks = getAPIV1Mock()
const getMocks = getAPIv1Mock()
.get(`/api/v1/changelogs/${slug}`)
.basicAuth({ user: key })
.reply(404, {
Expand All @@ -264,7 +264,7 @@ describe('rdme changelogs', () => {
help: 'If you need help, email [email protected] and mention log "fake-metrics-uuid".',
});

const postMocks = getAPIV1Mock()
const postMocks = getAPIv1Mock()
.post('/api/v1/changelogs', { slug, body: doc.content, ...doc.data, lastUpdatedHash: hash })
.basicAuth({ user: key })
.reply(400, errorObject);
Expand Down Expand Up @@ -292,7 +292,7 @@ describe('rdme changelogs', () => {
const doc = frontMatter(fs.readFileSync(path.join(fullFixturesDir, `/slug-docs/${slug}.md`)));
const hash = hashFileContents(fs.readFileSync(path.join(fullFixturesDir, `/slug-docs/${slug}.md`)));

const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get(`/api/v1/changelogs/${doc.data.slug}`)
.basicAuth({ user: key })
.reply(404, {
Expand All @@ -302,7 +302,7 @@ describe('rdme changelogs', () => {
help: 'If you need help, email [email protected] and mention log "fake-metrics-uuid".',
});

const postMock = getAPIV1Mock()
const postMock = getAPIv1Mock()
.post('/api/v1/changelogs', { slug, body: doc.content, ...doc.data, lastUpdatedHash: hash })
.basicAuth({ user: key })
.reply(201, { slug: doc.data.slug, _id: id, body: doc.content, ...doc.data, lastUpdatedHash: hash });
Expand Down
24 changes: 12 additions & 12 deletions __tests__/commands/changelogs/single.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import { describe, beforeAll, afterAll, beforeEach, it, expect } from 'vitest';

import Command from '../../../src/commands/changelogs.js';
import { APIv1Error } from '../../../src/lib/apiError.js';
import { getAPIV1Mock } from '../../helpers/get-api-mock.js';
import { getAPIv1Mock } from '../../helpers/get-api-mock.js';
import hashFileContents from '../../helpers/hash-file-contents.js';
import { runCommandAndReturnResult } from '../../helpers/oclif.js';

Expand Down Expand Up @@ -49,7 +49,7 @@ describe('rdme changelogs (single)', () => {
const doc = frontMatter(fs.readFileSync(path.join(fullFixturesDir, `/new-docs/${slug}.md`)));
const hash = hashFileContents(fs.readFileSync(path.join(fullFixturesDir, `/new-docs/${slug}.md`)));

const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get(`/api/v1/changelogs/${slug}`)
.basicAuth({ user: key })
.reply(404, {
Expand All @@ -59,7 +59,7 @@ describe('rdme changelogs (single)', () => {
help: 'If you need help, email [email protected] and mention log "fake-metrics-uuid".',
});

const postMock = getAPIV1Mock()
const postMock = getAPIv1Mock()
.post('/api/v1/changelogs', { slug, body: doc.content, ...doc.data, lastUpdatedHash: hash })
.basicAuth({ user: key })
.reply(201, { slug, _id: id, body: doc.content, ...doc.data });
Expand All @@ -76,7 +76,7 @@ describe('rdme changelogs (single)', () => {
const slug = 'new-doc';
const doc = frontMatter(fs.readFileSync(path.join(fullFixturesDir, `/new-docs/${slug}.md`)));

const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get(`/api/v1/changelogs/${slug}`)
.basicAuth({ user: key })
.reply(404, {
Expand Down Expand Up @@ -113,7 +113,7 @@ describe('rdme changelogs (single)', () => {
help: 'If you need help, email [email protected] and mention log "fake-metrics-uuid".',
};

const getMock = getAPIV1Mock().get(`/api/v1/changelogs/${slug}`).basicAuth({ user: key }).reply(500, errorObject);
const getMock = getAPIv1Mock().get(`/api/v1/changelogs/${slug}`).basicAuth({ user: key }).reply(500, errorObject);

const filePath = `./__tests__/${fixturesBaseDir}/failure-docs/${slug}.md`;

Expand All @@ -135,7 +135,7 @@ describe('rdme changelogs (single)', () => {
const doc = frontMatter(fs.readFileSync(path.join(fullFixturesDir, `/slug-docs/${slug}.md`)));
const hash = hashFileContents(fs.readFileSync(path.join(fullFixturesDir, `/slug-docs/${slug}.md`)));

const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get(`/api/v1/changelogs/${doc.data.slug}`)
.basicAuth({ user: key })
.reply(404, {
Expand All @@ -145,7 +145,7 @@ describe('rdme changelogs (single)', () => {
help: 'If you need help, email [email protected] and mention log "fake-metrics-uuid".',
});

const postMock = getAPIV1Mock()
const postMock = getAPIv1Mock()
.post('/api/v1/changelogs', { slug, body: doc.content, ...doc.data, lastUpdatedHash: hash })
.basicAuth({ user: key })
.reply(201, { slug: doc.data.slug, _id: id, body: doc.content, ...doc.data, lastUpdatedHash: hash });
Expand All @@ -172,12 +172,12 @@ describe('rdme changelogs (single)', () => {
});

it('should fetch changelog and merge with what is returned', () => {
const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get('/api/v1/changelogs/simple-doc')
.basicAuth({ user: key })
.reply(200, { slug: simpleDoc.slug, lastUpdatedHash: 'anOldHash' });

const updateMock = getAPIV1Mock()
const updateMock = getAPIv1Mock()
.put('/api/v1/changelogs/simple-doc', {
body: simpleDoc.doc.content,
lastUpdatedHash: simpleDoc.hash,
Expand All @@ -202,7 +202,7 @@ describe('rdme changelogs (single)', () => {
it('should return changelog update info for dry run', () => {
expect.assertions(1);

const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get('/api/v1/changelogs/simple-doc')
.basicAuth({ user: key })
.reply(200, { slug: simpleDoc.slug, lastUpdatedHash: 'anOldHash' });
Expand All @@ -227,7 +227,7 @@ describe('rdme changelogs (single)', () => {
it('should not send requests for changelogs that have not changed', () => {
expect.assertions(1);

const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get('/api/v1/changelogs/simple-doc')
.basicAuth({ user: key })
.reply(200, { slug: simpleDoc.slug, lastUpdatedHash: simpleDoc.hash });
Expand All @@ -240,7 +240,7 @@ describe('rdme changelogs (single)', () => {
});

it('should adjust "no changes" message if in dry run', () => {
const getMock = getAPIV1Mock()
const getMock = getAPIv1Mock()
.get('/api/v1/changelogs/simple-doc')
.basicAuth({ user: key })
.reply(200, { slug: simpleDoc.slug, lastUpdatedHash: simpleDoc.hash });
Expand Down
Loading

0 comments on commit 91958bd

Please sign in to comment.