diff --git a/test/definitions/3.0.0/definitions.suite.mjs b/test/definitions/3.0.0/definitions.suite.mjs index 3da6efda..ce4323ce 100644 --- a/test/definitions/3.0.0/definitions.suite.mjs +++ b/test/definitions/3.0.0/definitions.suite.mjs @@ -1,5 +1,6 @@ import {describe} from 'vitest'; describe('AsyncAPI 3.0.0 Test Suite', async () => { + await import('./models/index.mjs'); await import('./security/index.mjs'); }) \ No newline at end of file diff --git a/test/definitions/3.0.0/models/channel/index.mjs b/test/definitions/3.0.0/models/channel/index.mjs index a698063c..b2ce3177 100644 --- a/test/definitions/3.0.0/models/channel/index.mjs +++ b/test/definitions/3.0.0/models/channel/index.mjs @@ -1,7 +1,7 @@ -import {describe, test} from 'vitest'; +import {describe} from 'vitest'; -describe('Channel test suite', () => { - test('Channel', require('./channel')); - test('Message', require('./message')); - test('Parameter', require('./parameter')); +describe('Channel Test Suite', async () => { + await import('./channel'); + await import('./message'); + await import('./parameter'); }); diff --git a/test/definitions/3.0.0/models/channel/message/index.mjs b/test/definitions/3.0.0/models/channel/message/index.mjs index 6a6233b7..28bee9d9 100644 --- a/test/definitions/3.0.0/models/channel/message/index.mjs +++ b/test/definitions/3.0.0/models/channel/message/index.mjs @@ -1,8 +1,8 @@ -import {describe, test} from 'vitest'; +import {describe} from 'vitest'; -describe('Message test suite', () => { - test('Correlation Id', require('./correlationId')); - test('Message', require('./message')); - test('Message Example', require('./messageExample')); - test('Message Trait', require('./messageTrait')); +describe('Message Test Suite', async () => { + await import('./correlationId'); + await import('./message'); + await import('./messageExample'); + await import('./messageTrait'); }); diff --git a/test/definitions/3.0.0/models/index.mjs b/test/definitions/3.0.0/models/index.mjs new file mode 100644 index 00000000..323d0932 --- /dev/null +++ b/test/definitions/3.0.0/models/index.mjs @@ -0,0 +1,10 @@ +import {describe} from 'vitest'; + +describe('Models Test Suite', async () => { + await import('./channel'); + await import('./info'); + await import('./operation'); + await import('./reference'); + await import('./server'); + await import('./tag'); +}); diff --git a/test/definitions/3.0.0/models/info/index.mjs b/test/definitions/3.0.0/models/info/index.mjs index 90ea970f..d7c0a2ab 100644 --- a/test/definitions/3.0.0/models/info/index.mjs +++ b/test/definitions/3.0.0/models/info/index.mjs @@ -1,8 +1,8 @@ import {describe} from 'vitest'; -describe('Info Test Suite', () => { - test('Info', require('./info')); - test('Info Extensions', require('./info extensions')); - test('Contact', require('./contact')); - test('License', require('./license')); +describe('Info Test Suite', async () => { + await import('./info'); + await import('./info extensions'); + await import('./contact'); + await import('./license'); }); diff --git a/test/definitions/3.0.0/models/operation/index.mjs b/test/definitions/3.0.0/models/operation/index.mjs index 5b7adf70..c676db7d 100644 --- a/test/definitions/3.0.0/models/operation/index.mjs +++ b/test/definitions/3.0.0/models/operation/index.mjs @@ -1,8 +1,8 @@ import {describe} from 'vitest'; -describe('Operation test suite', () => { - test('Operation', require('./operation')); - test('Operation Reply', require('./operationReply')); - test('Operation Reply Address', require('./operationReplyAddress')); - test('Operation Operation Trait', require('./operationTrait')); +describe('Operation Test Suite', async () => { + await import('./operation'); + await import('./operationReply'); + await import('./operationReplyAddress'); + await import('./operationTrait'); }); diff --git a/test/definitions/3.0.0/models/reference/index.mjs b/test/definitions/3.0.0/models/reference/index.mjs index 6821e9ed..ec55a2e8 100644 --- a/test/definitions/3.0.0/models/reference/index.mjs +++ b/test/definitions/3.0.0/models/reference/index.mjs @@ -1,38 +1,6 @@ -import path from 'path'; -import TestHelper from '@test/test-helper.js'; +import {describe} from 'vitest'; -const jsonSchema = require('@definitions/3.0.0/Reference.json'); - -describe('Reference', () => { - it('example', () => TestHelper.objectIsValid( - jsonSchema, - path.resolve(__dirname, './example.json'), - )); - - it('empty', () => TestHelper.objectIsNotValid( - jsonSchema, - path.resolve(__dirname, './empty.json'), - ['must have required property \'$ref\''] - )); - - it('without required properties', () => TestHelper.objectIsNotValid( - jsonSchema, - path.resolve(__dirname, './without required properties.json'), - ['must have required property \'$ref\''] - )); - - it('only required properties', () => () => TestHelper.objectIsValid( - jsonSchema, - path.resolve(__dirname, './only required properties.json.json'), - )); - - it.skip('extended. Reason: schema doesn\'t check for extensions', () => TestHelper.objectIsValid( - jsonSchema, - path.resolve(__dirname, '../../../extended.json') - )); - - it.skip('wrongly extended. Reason: schema doesn\'t check for extensions', () => TestHelper.wronglyExtended( - jsonSchema, - path.resolve(__dirname, '../../../../wrongly extended.json') - )); -}); +describe('Reference Test Suite', async () => { + await import('./reference'); + await import('./reference object'); +}); \ No newline at end of file diff --git a/test/definitions/3.0.0/models/reference object/array.json b/test/definitions/3.0.0/models/reference/reference object/array.json similarity index 100% rename from test/definitions/3.0.0/models/reference object/array.json rename to test/definitions/3.0.0/models/reference/reference object/array.json diff --git a/test/definitions/3.0.0/models/reference object/boolean.json b/test/definitions/3.0.0/models/reference/reference object/boolean.json similarity index 100% rename from test/definitions/3.0.0/models/reference object/boolean.json rename to test/definitions/3.0.0/models/reference/reference object/boolean.json diff --git a/test/definitions/3.0.0/models/reference object/empty.json b/test/definitions/3.0.0/models/reference/reference object/empty.json similarity index 100% rename from test/definitions/3.0.0/models/reference object/empty.json rename to test/definitions/3.0.0/models/reference/reference object/empty.json diff --git a/test/definitions/3.0.0/models/reference object/index.mjs b/test/definitions/3.0.0/models/reference/reference object/index.mjs similarity index 100% rename from test/definitions/3.0.0/models/reference object/index.mjs rename to test/definitions/3.0.0/models/reference/reference object/index.mjs diff --git a/test/definitions/3.0.0/models/reference object/null.json b/test/definitions/3.0.0/models/reference/reference object/null.json similarity index 100% rename from test/definitions/3.0.0/models/reference object/null.json rename to test/definitions/3.0.0/models/reference/reference object/null.json diff --git a/test/definitions/3.0.0/models/reference object/number.json b/test/definitions/3.0.0/models/reference/reference object/number.json similarity index 100% rename from test/definitions/3.0.0/models/reference object/number.json rename to test/definitions/3.0.0/models/reference/reference object/number.json diff --git a/test/definitions/3.0.0/models/reference object/object.json b/test/definitions/3.0.0/models/reference/reference object/object.json similarity index 100% rename from test/definitions/3.0.0/models/reference object/object.json rename to test/definitions/3.0.0/models/reference/reference object/object.json diff --git a/test/definitions/3.0.0/models/reference object/string.json b/test/definitions/3.0.0/models/reference/reference object/string.json similarity index 100% rename from test/definitions/3.0.0/models/reference object/string.json rename to test/definitions/3.0.0/models/reference/reference object/string.json diff --git a/test/definitions/3.0.0/models/reference object/uri.json b/test/definitions/3.0.0/models/reference/reference object/uri.json similarity index 100% rename from test/definitions/3.0.0/models/reference object/uri.json rename to test/definitions/3.0.0/models/reference/reference object/uri.json diff --git a/test/definitions/3.0.0/models/reference/empty.json b/test/definitions/3.0.0/models/reference/reference/empty.json similarity index 100% rename from test/definitions/3.0.0/models/reference/empty.json rename to test/definitions/3.0.0/models/reference/reference/empty.json diff --git a/test/definitions/3.0.0/models/reference/example.json b/test/definitions/3.0.0/models/reference/reference/example.json similarity index 100% rename from test/definitions/3.0.0/models/reference/example.json rename to test/definitions/3.0.0/models/reference/reference/example.json diff --git a/test/definitions/3.0.0/models/reference/reference/index.mjs b/test/definitions/3.0.0/models/reference/reference/index.mjs new file mode 100644 index 00000000..6821e9ed --- /dev/null +++ b/test/definitions/3.0.0/models/reference/reference/index.mjs @@ -0,0 +1,38 @@ +import path from 'path'; +import TestHelper from '@test/test-helper.js'; + +const jsonSchema = require('@definitions/3.0.0/Reference.json'); + +describe('Reference', () => { + it('example', () => TestHelper.objectIsValid( + jsonSchema, + path.resolve(__dirname, './example.json'), + )); + + it('empty', () => TestHelper.objectIsNotValid( + jsonSchema, + path.resolve(__dirname, './empty.json'), + ['must have required property \'$ref\''] + )); + + it('without required properties', () => TestHelper.objectIsNotValid( + jsonSchema, + path.resolve(__dirname, './without required properties.json'), + ['must have required property \'$ref\''] + )); + + it('only required properties', () => () => TestHelper.objectIsValid( + jsonSchema, + path.resolve(__dirname, './only required properties.json.json'), + )); + + it.skip('extended. Reason: schema doesn\'t check for extensions', () => TestHelper.objectIsValid( + jsonSchema, + path.resolve(__dirname, '../../../extended.json') + )); + + it.skip('wrongly extended. Reason: schema doesn\'t check for extensions', () => TestHelper.wronglyExtended( + jsonSchema, + path.resolve(__dirname, '../../../../wrongly extended.json') + )); +}); diff --git a/test/definitions/3.0.0/models/reference/only required properties.json b/test/definitions/3.0.0/models/reference/reference/only required properties.json similarity index 100% rename from test/definitions/3.0.0/models/reference/only required properties.json rename to test/definitions/3.0.0/models/reference/reference/only required properties.json diff --git a/test/definitions/3.0.0/models/reference/without required properties.json b/test/definitions/3.0.0/models/reference/reference/without required properties.json similarity index 100% rename from test/definitions/3.0.0/models/reference/without required properties.json rename to test/definitions/3.0.0/models/reference/reference/without required properties.json diff --git a/test/definitions/3.0.0/models/server/index.mjs b/test/definitions/3.0.0/models/server/index.mjs index 9e1438ff..845c2a6c 100644 --- a/test/definitions/3.0.0/models/server/index.mjs +++ b/test/definitions/3.0.0/models/server/index.mjs @@ -1,6 +1,6 @@ -import {describe, it} from 'vitest'; +import {describe} from 'vitest'; -describe('Server test suite', () => { - it('Server', () => require('./server')); - it('Server Variable', () => require('./serverVariable')); +describe('Server Test Suite', async () => { + await import('./server'); + await import('./serverVariable'); }); diff --git a/test/index.test.mjs b/test/index.test.mjs index 604b979c..0467f425 100644 --- a/test/index.test.mjs +++ b/test/index.test.mjs @@ -5,15 +5,6 @@ const fs = require('fs'); const path = require('path'); suite('AsyncAPI: 3.0.0', () => { - suite('Models', () => { - test('Info Test Suite', () => require('./definitions/3.0.0/models/info')); - test('Channel Test Suite', () => require('./definitions/3.0.0/models/channel')); - test('Operation Test Suite', () => require('./definitions/3.0.0/models/operation')); - test('Server Test Suite', () => require('./definitions/3.0.0/models/server')); - test('Tag Test Suite', () => require('./definitions/3.0.0/models/tag')); - test('Reference Test Suite', () => require('./definitions/3.0.0/models/reference')); - test('Reference Object Test Suite', () => require('./definitions/3.0.0/models/reference object')); - }); suite('Bundler', () => { test('Validator Test Suite', () => require('@test/schemas.mjs')); })