diff --git a/test/api/taxonomy.spec.ts b/test/api/taxonomy.spec.ts index 8685073..09a8f29 100644 --- a/test/api/taxonomy.spec.ts +++ b/test/api/taxonomy.spec.ts @@ -1,22 +1,33 @@ /* eslint-disable no-console */ /* eslint-disable promise/always-return */ import { stackInstance } from '../utils/stack-instance'; -import { TTaxonomies } from './types'; +import { TTaxonomies, TTaxonomy } from './types'; import dotenv from 'dotenv'; import { TaxonomyQuery } from '../../src/lib/taxonomy-query'; +import { Taxonomy } from '../../src/lib/taxonomy'; dotenv.config() const stack = stackInstance(); describe('ContentType API test cases', () => { it('should give taxonomies when taxonomies method is called', async () => { - const result = await makeTaxonomy().find(); + const result = await makeTaxonomies().find(); + expect(result).toBeDefined(); + }); + + it('should give a single taxonomy when taxonomy method is called with taxonomyUid', async () => { + const result = await makeTaxonomy('taxonomy_testing').fetch(); expect(result).toBeDefined(); }); }); -function makeTaxonomy(): TaxonomyQuery { - const taxonomy = stack.taxonomy(); +function makeTaxonomies(): TaxonomyQuery { + const taxonomies = stack.taxonomy(); - return taxonomy; + return taxonomies; } + +function makeTaxonomy(taxonomyUid: string): Taxonomy { + const taxonomy = stack.taxonomy(taxonomyUid); + return taxonomy; +} \ No newline at end of file diff --git a/test/unit/taxonomy.spec.ts b/test/unit/taxonomy.spec.ts index 5d37ac4..0c4670e 100644 --- a/test/unit/taxonomy.spec.ts +++ b/test/unit/taxonomy.spec.ts @@ -1,11 +1,13 @@ import { TaxonomyQuery } from '../../src/lib/taxonomy-query'; +import { Taxonomy } from '../../src/lib/taxonomy'; import { AxiosInstance, httpClient } from '@contentstack/core'; import MockAdapter from 'axios-mock-adapter'; import { taxonomyFindResponseDataMock } from '../utils/mocks'; import { MOCK_CLIENT_OPTIONS } from '../utils/constant'; describe('ta class', () => { - let taxonomy: TaxonomyQuery; + let taxonomies: TaxonomyQuery; + let taxonomy: Taxonomy; let client: AxiosInstance; let mockClient: MockAdapter; @@ -15,12 +17,19 @@ describe('ta class', () => { }); beforeEach(() => { - taxonomy = new TaxonomyQuery(client); + taxonomies = new TaxonomyQuery(client); + taxonomy = new Taxonomy(client, 'taxonomy_testing'); }); - it('should return response data when successful', async () => { + it('should return all taxonomies in the response data when successful', async () => { mockClient.onGet('/taxonomy-manager').reply(200, taxonomyFindResponseDataMock); //TODO: change to /taxonomies - const response = await taxonomy.find(); + const response = await taxonomies.find(); expect(response).toEqual(taxonomyFindResponseDataMock); }); + + it('should return single taxonomy in the response data when successful', async () => { + mockClient.onGet('/taxonomy-manager/taxonomy_testing').reply(200, taxonomyFindResponseDataMock.taxonomies[0]); //TODO: change to /taxonomies/taxonomyUid + const response = await taxonomy.fetch(); + expect(response).toEqual(taxonomyFindResponseDataMock.taxonomies[0]); //TODO: change to taxonomyFindResponseDataMock + }); });