@natlibfi/melinda-rest-api-commons 4.2.4-alpha.5 → 4.2.4-alpha.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/mongo.js +146 -71
- package/dist/mongo.js.map +1 -1
- package/dist/mongo.spec.js +768 -0
- package/dist/mongo.spec.js.map +1 -0
- package/dist/mongoLog.spec.js.map +1 -1
- package/package.json +6 -6
- package/dist/mongo.spec.js.draft +0 -54
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mongo.spec.js","names":["_chai","require","_fixura","_fixuraMongo","_interopRequireDefault","_fixugen","_mongo","_debug","mongoFixtures","debug","createDebugLogger","generateTests","callback","path","__dirname","recurse","useMetadataFile","fixura","failWhenNotFound","reader","READERS","JSON","mocha","before","initMongofixtures","beforeEach","clear","afterEach","after","close","mongoFixturesFactory","rootPath","gridFS","bucketName","useObjectId","getFixture","functionName","params","expectModificationTime","preFillDb","expectedToThrow","expectedErrorMessage","expectedErrorStatus","contentStream","expectedOpResult","undefined","updateStateBeforeTest","resultIndex","createBulkParams","mongoUri","getUri","mongoOperator","createMongoOperator","expectedResult","populate","stringify","opResult","createPrio","compareToFirstDbEntry","formatDates","error","handleError","stream","components","STREAM","params2","createBulk","correlationId","setState","state","checkAndSetState","expect","to","eql","checkAndSetImportJobState","showParams","query","queryById","formatQueueItem","compareResultIndex","compareToDbEntry","checkTimeOut","createBulkResult","remove","readContent","opResultString","streamToString","readStream","contentType","contentStreamString","TEXT","getOne","getStream","pushIds","pushMessages","setImportJobState","setOperation","setOperations","addBlobSize","setBlobSize","Error","result","dump","foobar","length","dump2","checkModificationTime","formattedResult","modificationTime","not","queueItem","filteredQueueItem","creationTime","errorMessage","message","payload","errorStatus","status","chunks","Promise","resolve","reject","on","chunk","push","Buffer","from","err","concat","toString"],"sources":["../src/mongo.spec.js"],"sourcesContent":["/* eslint-disable max-lines */\n/* eslint-disable no-console */\nimport {expect} from 'chai';\nimport {READERS} from '@natlibfi/fixura';\nimport mongoFixturesFactory from '@natlibfi/fixura-mongo';\nimport generateTests from '@natlibfi/fixugen';\nimport createMongoOperator from './mongo';\nimport createDebugLogger from 'debug';\n\nlet mongoFixtures; // eslint-disable-line functional/no-let\nconst debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:test');\n\ngenerateTests({\n callback,\n path: [__dirname, '..', 'test-fixtures', 'mongo'],\n recurse: false,\n useMetadataFile: true,\n fixura: {\n failWhenNotFound: true,\n reader: READERS.JSON\n },\n mocha: {\n before: async () => {\n //debug(`<< Before`);\n await initMongofixtures();\n },\n beforeEach: async () => {\n //debug(`<< BeforeEach`);\n await mongoFixtures.clear();\n },\n afterEach: async () => {\n //debug(`<< AfterEach`);\n await mongoFixtures.clear();\n },\n after: async () => {\n //debug(`<< After`);\n await mongoFixtures.close();\n }\n }\n});\n\nasync function initMongofixtures() {\n mongoFixtures = await mongoFixturesFactory({\n recurse: false,\n rootPath: [__dirname, '..', 'test-fixtures', 'mongo'],\n gridFS: {bucketName: 'foobar'},\n useObjectId: true\n });\n}\n\n// eslint-disable-next-line max-statements, complexity\nasync function callback({\n getFixture,\n functionName,\n params,\n expectModificationTime = false,\n preFillDb = false,\n expectedToThrow = false,\n expectedErrorMessage = '',\n expectedErrorStatus = '',\n contentStream = false,\n expectedOpResult = undefined,\n updateStateBeforeTest = undefined,\n resultIndex = undefined,\n createBulkParams = undefined\n}) {\n\n const mongoUri = await mongoFixtures.getUri();\n const mongoOperator = await createMongoOperator(mongoUri, 'foobar', '');\n const expectedResult = await getFixture('expectedResult.json');\n // DEVELOP: we could use sama function for most of tests?\n // debug(typeof mongoUri); // eslint-disable-line\n\n if (preFillDb) { // eslint-disable-line functional/no-conditional-statements\n await mongoFixtures.populate(getFixture('dbContents.json'));\n }\n\n //return {createPrio, createBulk, checkAndSetState, checkAndSetImportJobState, query, queryById, remove, readContent, removeContent, getOne, getStream, setState, setImportJobState, pushIds, pushMessages, setOperation, setOperations, addBlobSize, setBlobSize};\n\n if (functionName === 'createPrio') {\n try {\n debug(`CreatePrio`);\n debug(JSON.stringify(params));\n const opResult = await mongoOperator.createPrio(params);\n debug(`createPrio result: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n if (functionName === 'createBulk') {\n try {\n debug(`CreateBulk`);\n debug(JSON.stringify(params));\n //{correlationId, cataloger, oCatalogerIn, operation, contentType, recordLoadParams, stream, operationSettings}\n const stream = contentStream ? await getFixture({components: ['contentStream'], reader: READERS.STREAM}) : params.stream;\n const params2 = {...params, stream};\n const opResult = await mongoOperator.createBulk(params2);\n debug(`createBulkResult: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n if (functionName === 'checkAndSetState') {\n try {\n debug(`checkAndSetState`);\n debug(JSON.stringify(params));\n //{correlationId, state, errorMessage = undefined, errorStatus = undefined})\n // timeout\n\n // eslint-disable-next-line functional/no-conditional-statements\n if (updateStateBeforeTest && params.correlationId) {\n debug(`setState to reset modificationTime`);\n await mongoOperator.setState({correlationId: params.correlationId, state: updateStateBeforeTest});\n }\n const opResult = await mongoOperator.checkAndSetState(params);\n debug(`checkAndSetState result: ${JSON.stringify(opResult)} (it should be: ${JSON.stringify(expectedOpResult)})}`);\n\n // eslint-disable-next-line functional/no-conditional-statements\n if (expectedOpResult !== undefined) {\n expect(opResult).to.eql(expectedOpResult);\n }\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n }\n return;\n }\n\n\n if (functionName === 'checkAndSetImportJobState') {\n try {\n debug(`checkAndSetImportJobState`);\n debug(JSON.stringify(params));\n //{correlationId, operation, importJobState, errorMessage = '', errorStatus = ''}\n // timeout\n // eslint-disable-next-line functional/no-conditional-statements\n if (updateStateBeforeTest && params.correlationId) {\n debug(`setState to reset modificationTime`);\n await mongoOperator.setState({correlationId: params.correlationId, state: updateStateBeforeTest});\n }\n const opResult = await mongoOperator.checkAndSetImportJobState(params);\n debug(`checkAndSetImportJobState result: ${JSON.stringify(opResult)} (it should be: ${JSON.stringify(expectedOpResult)})}`);\n\n // eslint-disable-next-line functional/no-conditional-statements\n if (expectedOpResult !== undefined) {\n expect(opResult).to.eql(expectedOpResult);\n }\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n\n if (functionName === 'query') {\n try {\n debug(`query`);\n debug(JSON.stringify(params));\n //params, showParams = {}\n //params: skip, limit, rest (rest: actual mongo queryParams)\n //showParams: {showAll = 0, showOperations = 0, showOperationSettings = 0, showRecordLoadParams = 0, showImportJobState = 0} = showParams;\n debug(`${JSON.stringify(params.params)}`);\n debug(`${JSON.stringify(params.showParams)}`);\n const opResult = await mongoOperator.query(params.params, params.showParams);\n debug(`query result: ${JSON.stringify(opResult)} (it should be: ${JSON.stringify(expectedOpResult)})}`);\n // eslint-disable-next-line functional/no-conditional-statements\n if (expectedOpResult !== undefined) {\n expect(opResult).to.eql(expectedOpResult);\n }\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n /*\n\n // NOT EXPORTED\n if (functionName === 'createProjection') {\n try {\n debug(`createProjection`);\n debug(JSON.stringify(params));\n //showParams = {}\n //no db\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n*/\n\n if (functionName === 'queryById') {\n try {\n debug(`queryById`);\n debug(JSON.stringify(params));\n //{correlationId, checkModTime = false}\n // eslint-disable-next-line functional/no-conditional-statements\n if (updateStateBeforeTest && params.correlationId) {\n debug(`setState to reset modificationTime`);\n await mongoOperator.setState({correlationId: params.correlationId, state: updateStateBeforeTest});\n }\n const opResult = await mongoOperator.queryById(params);\n debug(`queryById result: ${JSON.stringify(opResult)} (it should be: ${JSON.stringify(expectedOpResult)})}`);\n // eslint-disable-next-line functional/no-conditional-statements\n if (expectedOpResult !== undefined) {\n expect(formatQueueItem(opResult)).to.eql(formatQueueItem(expectedOpResult));\n }\n const compareResultIndex = resultIndex ? resultIndex : 0;\n await compareToDbEntry({expectedResult, resultIndex: compareResultIndex, expectModificationTime, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n\n // only returned for test\n if (functionName === 'checkTimeOut') {\n try {\n debug(`checkTimeOut`);\n debug(JSON.stringify(params));\n //{correlationId}\n // timeout\n // eslint-disable-next-line functional/no-conditional-statements\n if (updateStateBeforeTest && params.correlationId) {\n debug(`setState to reset modificationTime`);\n await mongoOperator.setState({correlationId: params.correlationId, state: updateStateBeforeTest});\n }\n const opResult = await mongoOperator.checkTimeOut(params);\n debug(`checkTimeOut result: ${JSON.stringify(opResult)} (it should be: ${JSON.stringify(expectedOpResult)})}`);\n\n // eslint-disable-next-line functional/no-conditional-statements\n if (expectedOpResult !== undefined) {\n expect(opResult).to.eql(expectedOpResult);\n }\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n\n if (functionName === 'remove') {\n\n try {\n debug(`remove`);\n debug(JSON.stringify(params));\n //params: {correlationId}\n\n // eslint-disable-next-line functional/no-conditional-statements\n if (createBulkParams) {\n const stream = contentStream ? await getFixture({components: ['contentStream'], reader: READERS.STREAM}) : createBulkParams.stream;\n //debug(stream);\n const params2 = {...createBulkParams, stream};\n const createBulkResult = await mongoOperator.createBulk(params2);\n debug(`createBulkResult: ${JSON.stringify(createBulkResult)}`);\n }\n\n const opResult = await mongoOperator.remove(params);\n debug(`remove result: ${JSON.stringify(opResult)}`);\n\n await compareToFirstDbEntry({expectedResult: undefined, expectModificationTime, formatDates: false});\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n if (functionName === 'readContent') {\n try {\n debug(`readContent`);\n debug(JSON.stringify(params));\n //correlationId\n\n // eslint-disable-next-line functional/no-conditional-statements\n if (createBulkParams) {\n const stream = contentStream ? await getFixture({components: ['contentStream'], reader: READERS.STREAM}) : createBulkParams.stream;\n //debug(stream);\n const params2 = {...createBulkParams, stream};\n const createBulkResult = await mongoOperator.createBulk(params2);\n debug(`createBulkResult: ${JSON.stringify(createBulkResult)}`);\n }\n\n const opResult = await mongoOperator.readContent(params);\n const opResultString = await streamToString(opResult.readStream);\n\n // eslint-disable-next-line functional/no-conditional-statements\n if (createBulkParams && createBulkParams.contentType) {\n expect(opResult.contentType).to.eql(createBulkParams.contentType);\n }\n\n if (contentStream) {\n const contentStreamString = await getFixture({components: ['contentStream'], reader: READERS.TEXT});\n //debug(contentStreamString);\n expect(opResultString).to.eql(contentStreamString);\n return;\n }\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n /*\n\n if (functionName === 'removeContent') {\n try {\n debug(`removeContent`);\n debug(JSON.stringify(params));\n //correlationId\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n */\n\n if (functionName === 'getOne') {\n try {\n debug(`getOne`);\n debug(JSON.stringify(params));\n //{queueItemState, importJobState = undefined}\n const opResult = await mongoOperator.getOne(params);\n debug(`getOne result: ${JSON.stringify(opResult)} (it should be: ${JSON.stringify(expectedOpResult)})}`);\n\n expect(opResult).to.eql(expectedOpResult);\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n if (functionName === 'getStream') {\n try {\n debug(`getStream`);\n debug(JSON.stringify(params));\n //correlationId\n\n // eslint-disable-next-line functional/no-conditional-statements\n if (createBulkParams) {\n const stream = contentStream ? await getFixture({components: ['contentStream'], reader: READERS.STREAM}) : createBulkParams.stream;\n //debug(stream);\n const params2 = {...createBulkParams, stream};\n const createBulkResult = await mongoOperator.createBulk(params2);\n debug(`createBulkResult: ${JSON.stringify(createBulkResult)}`);\n }\n //const {correlationId} = params;\n\n const opResult = mongoOperator.getStream(params);\n const opResultString = await streamToString(opResult);\n\n if (contentStream) {\n const contentStreamString = await getFixture({components: ['contentStream'], reader: READERS.TEXT});\n //debug(contentStreamString);\n expect(opResultString).to.eql(contentStreamString);\n return;\n }\n\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n\n if (functionName === 'pushIds') {\n try {\n debug(`pushIds`);\n debug(JSON.stringify(params));\n //{correlationId, handledIds, rejectedIds}\n const opResult = await mongoOperator.pushIds(params);\n debug(`pushIds result: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n if (functionName === 'pushMessages') {\n try {\n debug(`pushMessages`);\n debug(JSON.stringify(params));\n //{correlationId, messages, messageField = 'messages'}\n const opResult = await mongoOperator.pushMessages(params);\n debug(`pushMessages result: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n\n if (functionName === 'setState') {\n try {\n debug(`setState`);\n debug(JSON.stringify(params));\n //{correlationId, state, errorMessage = undefined, errorStatus = undefined}\n const opResult = await mongoOperator.setState(params);\n debug(`setState result: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n if (functionName === 'setImportJobState') {\n try {\n debug(`setImportJobState`);\n debug(JSON.stringify(params));\n //{correlationId, operation, importJobState}\n const opResult = await mongoOperator.setImportJobState(params);\n debug(`setImportJobState result: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n\n if (functionName === 'setOperation') {\n try {\n debug(`setOperation`);\n debug(JSON.stringify(params));\n //{correlationId, operation}\n const opResult = await mongoOperator.setOperation(params);\n debug(`setOperation result: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n if (functionName === 'setOperations') {\n try {\n debug(`setOperations`);\n debug(JSON.stringify(params));\n //{correlationId, addOperation, removeOperation = undefined}\n const opResult = await mongoOperator.setOperations(params);\n debug(`setOperations result: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n if (functionName === 'addBlobSize') {\n try {\n debug(`addBlobSize`);\n debug(JSON.stringify(params));\n //{correlationId}\n const opResult = await mongoOperator.addBlobSize(params);\n debug(`addBlobSize result: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n if (functionName === 'setBlobSize') {\n try {\n debug(`setBlobSize`);\n debug(JSON.stringify(params));\n //{correlationId, blobSize}\n const opResult = await mongoOperator.setBlobSize(params);\n debug(`setBlobSize result: ${JSON.stringify(opResult)}`);\n await compareToFirstDbEntry({expectedResult, expectModificationTime, formatDates: true});\n } catch (error) {\n handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus});\n return;\n }\n return;\n }\n\n throw new Error(`Unknown functionName: ${functionName}`);\n}\n\n\nasync function compareToFirstDbEntry({expectedResult, expectModificationTime = false, formatDates = true}) {\n const result = await compareToDbEntry({expectedResult, resultIndex: 0, expectModificationTime, formatDates});\n return result;\n}\n\nasync function compareToDbEntry({expectedResult, resultIndex = 0, expectModificationTime = false, formatDates = true}) {\n const dump = await mongoFixtures.dump();\n debug(`--- We have ${dump.foobar.length} documents in db`);\n debug(dump.foobar);\n const result = await dump.foobar[resultIndex];\n debug(`db result (document ${resultIndex}): ${JSON.stringify(result)}`);\n const dump2 = await mongoFixtures.dump();\n debug(`--- We have ${dump2.foobar.length} documents in db now`);\n\n checkModificationTime({result, expectModificationTime});\n\n if (formatDates) {\n const formattedResult = formatQueueItem(result);\n expect(formattedResult).to.eql(expectedResult);\n return;\n }\n expect(result).to.eql(expectedResult);\n return;\n}\n\n\nfunction checkModificationTime({result, expectModificationTime}) {\n if (expectModificationTime) {\n debug('Check if modificationTime was edited');\n expect(result.modificationTime).to.not.eql('');\n debug(`OK. We have modified modificationTime`);\n return;\n }\n return;\n}\n\n\nfunction formatQueueItem(queueItem) {\n const filteredQueueItem = {\n ...queueItem,\n creationTime: '',\n modificationTime: ''\n };\n debug(`Formatted result: ${JSON.stringify(filteredQueueItem)}`);\n return filteredQueueItem;\n}\n\nfunction handleError({error, expectedToThrow, expectedErrorMessage, expectedErrorStatus}) {\n debug(error);\n if (expectedToThrow) {\n debug('OK. Expected to throw');\n debug(JSON.stringify(error));\n // eslint-disable-next-line max-lines\n if (expectedErrorMessage !== '' || expectedErrorStatus !== '') {\n const errorMessage = error.message || error.payload.message || error.payload || '';\n debug(errorMessage);\n expect(errorMessage).to.eql(expectedErrorMessage);\n const errorStatus = error.status || '';\n expect(errorStatus).to.eql(expectedErrorStatus);\n return;\n }\n return;\n }\n debug('NOT OK. Not expexted to throw');\n throw error;\n}\n\nfunction streamToString(stream) {\n const chunks = [];\n return new Promise((resolve, reject) => {\n // eslint-disable-next-line functional/immutable-data\n stream.on('data', (chunk) => chunks.push(Buffer.from(chunk)));\n stream.on('error', (err) => reject(err));\n stream.on('end', () => resolve(Buffer.concat(chunks).toString('utf8')));\n });\n}\n"],"mappings":";;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,QAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,MAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,MAAA,GAAAH,sBAAA,CAAAH,OAAA;AAPA;AACA;;AAQA,IAAIO,aAAa,CAAC,CAAC;AACnB,MAAMC,KAAK,GAAG,IAAAC,cAAiB,EAAC,+CAA+C,CAAC;AAEhF,IAAAC,gBAAa,EAAC;EACZC,QAAQ;EACRC,IAAI,EAAE,CAACC,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC;EACjDC,OAAO,EAAE,KAAK;EACdC,eAAe,EAAE,IAAI;EACrBC,MAAM,EAAE;IACNC,gBAAgB,EAAE,IAAI;IACtBC,MAAM,EAAEC,eAAO,CAACC;EAClB,CAAC;EACDC,KAAK,EAAE;IACLC,MAAM,EAAE,MAAAA,CAAA,KAAY;MAClB;MACA,MAAMC,iBAAiB,CAAC,CAAC;IAC3B,CAAC;IACDC,UAAU,EAAE,MAAAA,CAAA,KAAY;MACtB;MACA,MAAMjB,aAAa,CAACkB,KAAK,CAAC,CAAC;IAC7B,CAAC;IACDC,SAAS,EAAE,MAAAA,CAAA,KAAY;MACrB;MACA,MAAMnB,aAAa,CAACkB,KAAK,CAAC,CAAC;IAC7B,CAAC;IACDE,KAAK,EAAE,MAAAA,CAAA,KAAY;MACjB;MACA,MAAMpB,aAAa,CAACqB,KAAK,CAAC,CAAC;IAC7B;EACF;AACF,CAAC,CAAC;AAEF,eAAeL,iBAAiBA,CAAA,EAAG;EACjChB,aAAa,GAAG,MAAM,IAAAsB,oBAAoB,EAAC;IACzCf,OAAO,EAAE,KAAK;IACdgB,QAAQ,EAAE,CAACjB,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC;IACrDkB,MAAM,EAAE;MAACC,UAAU,EAAE;IAAQ,CAAC;IAC9BC,WAAW,EAAE;EACf,CAAC,CAAC;AACJ;;AAEA;AACA,eAAetB,QAAQA,CAAC;EACtBuB,UAAU;EACVC,YAAY;EACZC,MAAM;EACNC,sBAAsB,GAAG,KAAK;EAC9BC,SAAS,GAAG,KAAK;EACjBC,eAAe,GAAG,KAAK;EACvBC,oBAAoB,GAAG,EAAE;EACzBC,mBAAmB,GAAG,EAAE;EACxBC,aAAa,GAAG,KAAK;EACrBC,gBAAgB,GAAGC,SAAS;EAC5BC,qBAAqB,GAAGD,SAAS;EACjCE,WAAW,GAAGF,SAAS;EACvBG,gBAAgB,GAAGH;AACrB,CAAC,EAAE;EAED,MAAMI,QAAQ,GAAG,MAAMzC,aAAa,CAAC0C,MAAM,CAAC,CAAC;EAC7C,MAAMC,aAAa,GAAG,MAAM,IAAAC,cAAmB,EAACH,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC;EACvE,MAAMI,cAAc,GAAG,MAAMlB,UAAU,CAAC,qBAAqB,CAAC;EAC9D;EACA;;EAEA,IAAII,SAAS,EAAE;IAAE;IACf,MAAM/B,aAAa,CAAC8C,QAAQ,CAACnB,UAAU,CAAC,iBAAiB,CAAC,CAAC;EAC7D;;EAEA;;EAEA,IAAIC,YAAY,KAAK,YAAY,EAAE;IACjC,IAAI;MACF3B,KAAK,CAAC,YAAY,CAAC;MACnBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAACM,UAAU,CAACpB,MAAM,CAAC;MACvD5B,KAAK,CAAC,sBAAsBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MACvD,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEM,WAAW,EAAE;MAAI,CAAC,CAAC;IAClE,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,IAAIN,YAAY,KAAK,YAAY,EAAE;IACjC,IAAI;MACF3B,KAAK,CAAC,YAAY,CAAC;MACnBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMyB,MAAM,GAAGnB,aAAa,GAAG,MAAMR,UAAU,CAAC;QAAC4B,UAAU,EAAE,CAAC,eAAe,CAAC;QAAE5C,MAAM,EAAEC,eAAO,CAAC4C;MAAM,CAAC,CAAC,GAAG3B,MAAM,CAACyB,MAAM;MACxH,MAAMG,OAAO,GAAG;QAAC,GAAG5B,MAAM;QAAEyB;MAAM,CAAC;MACnC,MAAMN,QAAQ,GAAG,MAAML,aAAa,CAACe,UAAU,CAACD,OAAO,CAAC;MACxDxD,KAAK,CAAC,qBAAqBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MACtD,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEM,WAAW,EAAE;MAAI,CAAC,CAAC;IAClE,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,IAAIN,YAAY,KAAK,kBAAkB,EAAE;IACvC,IAAI;MACF3B,KAAK,CAAC,kBAAkB,CAAC;MACzBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA;;MAEA;MACA,IAAIS,qBAAqB,IAAIT,MAAM,CAAC8B,aAAa,EAAE;QACjD1D,KAAK,CAAC,oCAAoC,CAAC;QAC3C,MAAM0C,aAAa,CAACiB,QAAQ,CAAC;UAACD,aAAa,EAAE9B,MAAM,CAAC8B,aAAa;UAAEE,KAAK,EAAEvB;QAAqB,CAAC,CAAC;MACnG;MACA,MAAMU,QAAQ,GAAG,MAAML,aAAa,CAACmB,gBAAgB,CAACjC,MAAM,CAAC;MAC7D5B,KAAK,CAAC,4BAA4BY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,mBAAmBnC,IAAI,CAACkC,SAAS,CAACX,gBAAgB,CAAC,IAAI,CAAC;;MAElH;MACA,IAAIA,gBAAgB,KAAKC,SAAS,EAAE;QAClC,IAAA0B,YAAM,EAACf,QAAQ,CAAC,CAACgB,EAAE,CAACC,GAAG,CAAC7B,gBAAgB,CAAC;MAC3C;MACA,MAAMc,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAE1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;IAClF;IACA;EACF;EAGA,IAAIN,YAAY,KAAK,2BAA2B,EAAE;IAChD,IAAI;MACF3B,KAAK,CAAC,2BAA2B,CAAC;MAClCA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA;MACA;MACA,IAAIS,qBAAqB,IAAIT,MAAM,CAAC8B,aAAa,EAAE;QACjD1D,KAAK,CAAC,oCAAoC,CAAC;QAC3C,MAAM0C,aAAa,CAACiB,QAAQ,CAAC;UAACD,aAAa,EAAE9B,MAAM,CAAC8B,aAAa;UAAEE,KAAK,EAAEvB;QAAqB,CAAC,CAAC;MACnG;MACA,MAAMU,QAAQ,GAAG,MAAML,aAAa,CAACuB,yBAAyB,CAACrC,MAAM,CAAC;MACtE5B,KAAK,CAAC,qCAAqCY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,mBAAmBnC,IAAI,CAACkC,SAAS,CAACX,gBAAgB,CAAC,IAAI,CAAC;;MAE3H;MACA,IAAIA,gBAAgB,KAAKC,SAAS,EAAE;QAClC,IAAA0B,YAAM,EAACf,QAAQ,CAAC,CAACgB,EAAE,CAACC,GAAG,CAAC7B,gBAAgB,CAAC;MAC3C;MACA,MAAMc,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAGA,IAAIN,YAAY,KAAK,OAAO,EAAE;IAC5B,IAAI;MACF3B,KAAK,CAAC,OAAO,CAAC;MACdA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA;MACA;MACA5B,KAAK,CAAC,GAAGY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAACA,MAAM,CAAC,EAAE,CAAC;MACzC5B,KAAK,CAAC,GAAGY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAACsC,UAAU,CAAC,EAAE,CAAC;MAC7C,MAAMnB,QAAQ,GAAG,MAAML,aAAa,CAACyB,KAAK,CAACvC,MAAM,CAACA,MAAM,EAAEA,MAAM,CAACsC,UAAU,CAAC;MAC5ElE,KAAK,CAAC,iBAAiBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,mBAAmBnC,IAAI,CAACkC,SAAS,CAACX,gBAAgB,CAAC,IAAI,CAAC;MACvG;MACA,IAAIA,gBAAgB,KAAKC,SAAS,EAAE;QAClC,IAAA0B,YAAM,EAACf,QAAQ,CAAC,CAACgB,EAAE,CAACC,GAAG,CAAC7B,gBAAgB,CAAC;MAC3C;IACF,CAAC,CAAC,OAAOgB,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAIE,IAAIN,YAAY,KAAK,WAAW,EAAE;IAChC,IAAI;MACF3B,KAAK,CAAC,WAAW,CAAC;MAClBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA;MACA,IAAIS,qBAAqB,IAAIT,MAAM,CAAC8B,aAAa,EAAE;QACjD1D,KAAK,CAAC,oCAAoC,CAAC;QAC3C,MAAM0C,aAAa,CAACiB,QAAQ,CAAC;UAACD,aAAa,EAAE9B,MAAM,CAAC8B,aAAa;UAAEE,KAAK,EAAEvB;QAAqB,CAAC,CAAC;MACnG;MACA,MAAMU,QAAQ,GAAG,MAAML,aAAa,CAAC0B,SAAS,CAACxC,MAAM,CAAC;MACtD5B,KAAK,CAAC,qBAAqBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,mBAAmBnC,IAAI,CAACkC,SAAS,CAACX,gBAAgB,CAAC,IAAI,CAAC;MAC3G;MACA,IAAIA,gBAAgB,KAAKC,SAAS,EAAE;QAClC,IAAA0B,YAAM,EAACO,eAAe,CAACtB,QAAQ,CAAC,CAAC,CAACgB,EAAE,CAACC,GAAG,CAACK,eAAe,CAAClC,gBAAgB,CAAC,CAAC;MAC7E;MACA,MAAMmC,kBAAkB,GAAGhC,WAAW,GAAGA,WAAW,GAAG,CAAC;MACxD,MAAMiC,gBAAgB,CAAC;QAAC3B,cAAc;QAAEN,WAAW,EAAEgC,kBAAkB;QAAEzC,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IACtH,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;;EAGA;EACA,IAAIN,YAAY,KAAK,cAAc,EAAE;IACnC,IAAI;MACF3B,KAAK,CAAC,cAAc,CAAC;MACrBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA;MACA;MACA,IAAIS,qBAAqB,IAAIT,MAAM,CAAC8B,aAAa,EAAE;QACjD1D,KAAK,CAAC,oCAAoC,CAAC;QAC3C,MAAM0C,aAAa,CAACiB,QAAQ,CAAC;UAACD,aAAa,EAAE9B,MAAM,CAAC8B,aAAa;UAAEE,KAAK,EAAEvB;QAAqB,CAAC,CAAC;MACnG;MACA,MAAMU,QAAQ,GAAG,MAAML,aAAa,CAAC8B,YAAY,CAAC5C,MAAM,CAAC;MACzD5B,KAAK,CAAC,wBAAwBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,mBAAmBnC,IAAI,CAACkC,SAAS,CAACX,gBAAgB,CAAC,IAAI,CAAC;;MAE9G;MACA,IAAIA,gBAAgB,KAAKC,SAAS,EAAE;QAClC,IAAA0B,YAAM,EAACf,QAAQ,CAAC,CAACgB,EAAE,CAACC,GAAG,CAAC7B,gBAAgB,CAAC;MAC3C;MACA,MAAMc,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAGA,IAAIN,YAAY,KAAK,QAAQ,EAAE;IAE7B,IAAI;MACF3B,KAAK,CAAC,QAAQ,CAAC;MACfA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;;MAEA;MACA,IAAIW,gBAAgB,EAAE;QACpB,MAAMc,MAAM,GAAGnB,aAAa,GAAG,MAAMR,UAAU,CAAC;UAAC4B,UAAU,EAAE,CAAC,eAAe,CAAC;UAAE5C,MAAM,EAAEC,eAAO,CAAC4C;QAAM,CAAC,CAAC,GAAGhB,gBAAgB,CAACc,MAAM;QAClI;QACA,MAAMG,OAAO,GAAG;UAAC,GAAGjB,gBAAgB;UAAEc;QAAM,CAAC;QAC7C,MAAMoB,gBAAgB,GAAG,MAAM/B,aAAa,CAACe,UAAU,CAACD,OAAO,CAAC;QAChExD,KAAK,CAAC,qBAAqBY,IAAI,CAACkC,SAAS,CAAC2B,gBAAgB,CAAC,EAAE,CAAC;MAChE;MAEA,MAAM1B,QAAQ,GAAG,MAAML,aAAa,CAACgC,MAAM,CAAC9C,MAAM,CAAC;MACnD5B,KAAK,CAAC,kBAAkBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MAEnD,MAAME,qBAAqB,CAAC;QAACL,cAAc,EAAER,SAAS;QAAEP,sBAAsB;QAAEqB,WAAW,EAAE;MAAK,CAAC,CAAC;IAEtG,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,IAAIN,YAAY,KAAK,aAAa,EAAE;IAClC,IAAI;MACF3B,KAAK,CAAC,aAAa,CAAC;MACpBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;;MAEA;MACA,IAAIW,gBAAgB,EAAE;QACpB,MAAMc,MAAM,GAAGnB,aAAa,GAAG,MAAMR,UAAU,CAAC;UAAC4B,UAAU,EAAE,CAAC,eAAe,CAAC;UAAE5C,MAAM,EAAEC,eAAO,CAAC4C;QAAM,CAAC,CAAC,GAAGhB,gBAAgB,CAACc,MAAM;QAClI;QACA,MAAMG,OAAO,GAAG;UAAC,GAAGjB,gBAAgB;UAAEc;QAAM,CAAC;QAC7C,MAAMoB,gBAAgB,GAAG,MAAM/B,aAAa,CAACe,UAAU,CAACD,OAAO,CAAC;QAChExD,KAAK,CAAC,qBAAqBY,IAAI,CAACkC,SAAS,CAAC2B,gBAAgB,CAAC,EAAE,CAAC;MAChE;MAEA,MAAM1B,QAAQ,GAAG,MAAML,aAAa,CAACiC,WAAW,CAAC/C,MAAM,CAAC;MACxD,MAAMgD,cAAc,GAAG,MAAMC,cAAc,CAAC9B,QAAQ,CAAC+B,UAAU,CAAC;;MAEhE;MACA,IAAIvC,gBAAgB,IAAIA,gBAAgB,CAACwC,WAAW,EAAE;QACpD,IAAAjB,YAAM,EAACf,QAAQ,CAACgC,WAAW,CAAC,CAAChB,EAAE,CAACC,GAAG,CAACzB,gBAAgB,CAACwC,WAAW,CAAC;MACnE;MAEA,IAAI7C,aAAa,EAAE;QACjB,MAAM8C,mBAAmB,GAAG,MAAMtD,UAAU,CAAC;UAAC4B,UAAU,EAAE,CAAC,eAAe,CAAC;UAAE5C,MAAM,EAAEC,eAAO,CAACsE;QAAI,CAAC,CAAC;QACnG;QACA,IAAAnB,YAAM,EAACc,cAAc,CAAC,CAACb,EAAE,CAACC,GAAG,CAACgB,mBAAmB,CAAC;QAClD;MACF;IAEF,CAAC,CAAC,OAAO7B,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAKE,IAAIN,YAAY,KAAK,QAAQ,EAAE;IAC7B,IAAI;MACF3B,KAAK,CAAC,QAAQ,CAAC;MACfA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAACwC,MAAM,CAACtD,MAAM,CAAC;MACnD5B,KAAK,CAAC,kBAAkBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,mBAAmBnC,IAAI,CAACkC,SAAS,CAACX,gBAAgB,CAAC,IAAI,CAAC;MAExG,IAAA2B,YAAM,EAACf,QAAQ,CAAC,CAACgB,EAAE,CAACC,GAAG,CAAC7B,gBAAgB,CAAC;IAE3C,CAAC,CAAC,OAAOgB,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,IAAIN,YAAY,KAAK,WAAW,EAAE;IAChC,IAAI;MACF3B,KAAK,CAAC,WAAW,CAAC;MAClBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;;MAEA;MACA,IAAIW,gBAAgB,EAAE;QACpB,MAAMc,MAAM,GAAGnB,aAAa,GAAG,MAAMR,UAAU,CAAC;UAAC4B,UAAU,EAAE,CAAC,eAAe,CAAC;UAAE5C,MAAM,EAAEC,eAAO,CAAC4C;QAAM,CAAC,CAAC,GAAGhB,gBAAgB,CAACc,MAAM;QAClI;QACA,MAAMG,OAAO,GAAG;UAAC,GAAGjB,gBAAgB;UAAEc;QAAM,CAAC;QAC7C,MAAMoB,gBAAgB,GAAG,MAAM/B,aAAa,CAACe,UAAU,CAACD,OAAO,CAAC;QAChExD,KAAK,CAAC,qBAAqBY,IAAI,CAACkC,SAAS,CAAC2B,gBAAgB,CAAC,EAAE,CAAC;MAChE;MACA;;MAEA,MAAM1B,QAAQ,GAAGL,aAAa,CAACyC,SAAS,CAACvD,MAAM,CAAC;MAChD,MAAMgD,cAAc,GAAG,MAAMC,cAAc,CAAC9B,QAAQ,CAAC;MAErD,IAAIb,aAAa,EAAE;QACjB,MAAM8C,mBAAmB,GAAG,MAAMtD,UAAU,CAAC;UAAC4B,UAAU,EAAE,CAAC,eAAe,CAAC;UAAE5C,MAAM,EAAEC,eAAO,CAACsE;QAAI,CAAC,CAAC;QACnG;QACA,IAAAnB,YAAM,EAACc,cAAc,CAAC,CAACb,EAAE,CAACC,GAAG,CAACgB,mBAAmB,CAAC;QAClD;MACF;IAGF,CAAC,CAAC,OAAO7B,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAGA,IAAIN,YAAY,KAAK,SAAS,EAAE;IAC9B,IAAI;MACF3B,KAAK,CAAC,SAAS,CAAC;MAChBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAAC0C,OAAO,CAACxD,MAAM,CAAC;MACpD5B,KAAK,CAAC,mBAAmBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MACpD,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAE1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,IAAIN,YAAY,KAAK,cAAc,EAAE;IACnC,IAAI;MACF3B,KAAK,CAAC,cAAc,CAAC;MACrBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAAC2C,YAAY,CAACzD,MAAM,CAAC;MACzD5B,KAAK,CAAC,wBAAwBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MACzD,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAGA,IAAIN,YAAY,KAAK,UAAU,EAAE;IAC/B,IAAI;MACF3B,KAAK,CAAC,UAAU,CAAC;MACjBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAACiB,QAAQ,CAAC/B,MAAM,CAAC;MACrD5B,KAAK,CAAC,oBAAoBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MACrD,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAE1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,IAAIN,YAAY,KAAK,mBAAmB,EAAE;IACxC,IAAI;MACF3B,KAAK,CAAC,mBAAmB,CAAC;MAC1BA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAAC4C,iBAAiB,CAAC1D,MAAM,CAAC;MAC9D5B,KAAK,CAAC,6BAA6BY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MAC9D,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAGA,IAAIN,YAAY,KAAK,cAAc,EAAE;IACnC,IAAI;MACF3B,KAAK,CAAC,cAAc,CAAC;MACrBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAAC6C,YAAY,CAAC3D,MAAM,CAAC;MACzD5B,KAAK,CAAC,wBAAwBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MACzD,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAE1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,IAAIN,YAAY,KAAK,eAAe,EAAE;IACpC,IAAI;MACF3B,KAAK,CAAC,eAAe,CAAC;MACtBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAAC8C,aAAa,CAAC5D,MAAM,CAAC;MAC1D5B,KAAK,CAAC,yBAAyBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MAC1D,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,IAAIN,YAAY,KAAK,aAAa,EAAE;IAClC,IAAI;MACF3B,KAAK,CAAC,aAAa,CAAC;MACpBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAAC+C,WAAW,CAAC7D,MAAM,CAAC;MACxD5B,KAAK,CAAC,uBAAuBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MACxD,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,IAAIN,YAAY,KAAK,aAAa,EAAE;IAClC,IAAI;MACF3B,KAAK,CAAC,aAAa,CAAC;MACpBA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAAClB,MAAM,CAAC,CAAC;MAC7B;MACA,MAAMmB,QAAQ,GAAG,MAAML,aAAa,CAACgD,WAAW,CAAC9D,MAAM,CAAC;MACxD5B,KAAK,CAAC,uBAAuBY,IAAI,CAACkC,SAAS,CAACC,QAAQ,CAAC,EAAE,CAAC;MACxD,MAAME,qBAAqB,CAAC;QAACL,cAAc;QAAEf,sBAAsB;QAAEqB,WAAW,EAAE;MAAI,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,WAAW,CAAC;QAACD,KAAK;QAAEpB,eAAe;QAAEC,oBAAoB;QAAEC;MAAmB,CAAC,CAAC;MAChF;IACF;IACA;EACF;EAEA,MAAM,IAAI0D,KAAK,CAAC,yBAAyBhE,YAAY,EAAE,CAAC;AAC1D;AAGA,eAAesB,qBAAqBA,CAAC;EAACL,cAAc;EAAEf,sBAAsB,GAAG,KAAK;EAAEqB,WAAW,GAAG;AAAI,CAAC,EAAE;EACzG,MAAM0C,MAAM,GAAG,MAAMrB,gBAAgB,CAAC;IAAC3B,cAAc;IAAEN,WAAW,EAAE,CAAC;IAAET,sBAAsB;IAAEqB;EAAW,CAAC,CAAC;EAC5G,OAAO0C,MAAM;AACf;AAEA,eAAerB,gBAAgBA,CAAC;EAAC3B,cAAc;EAAEN,WAAW,GAAG,CAAC;EAAET,sBAAsB,GAAG,KAAK;EAAEqB,WAAW,GAAG;AAAI,CAAC,EAAE;EACrH,MAAM2C,IAAI,GAAG,MAAM9F,aAAa,CAAC8F,IAAI,CAAC,CAAC;EACvC7F,KAAK,CAAC,eAAe6F,IAAI,CAACC,MAAM,CAACC,MAAM,kBAAkB,CAAC;EAC1D/F,KAAK,CAAC6F,IAAI,CAACC,MAAM,CAAC;EAClB,MAAMF,MAAM,GAAG,MAAMC,IAAI,CAACC,MAAM,CAACxD,WAAW,CAAC;EAC7CtC,KAAK,CAAC,uBAAuBsC,WAAW,MAAM1B,IAAI,CAACkC,SAAS,CAAC8C,MAAM,CAAC,EAAE,CAAC;EACvE,MAAMI,KAAK,GAAG,MAAMjG,aAAa,CAAC8F,IAAI,CAAC,CAAC;EACxC7F,KAAK,CAAC,eAAegG,KAAK,CAACF,MAAM,CAACC,MAAM,sBAAsB,CAAC;EAE/DE,qBAAqB,CAAC;IAACL,MAAM;IAAE/D;EAAsB,CAAC,CAAC;EAEvD,IAAIqB,WAAW,EAAE;IACf,MAAMgD,eAAe,GAAG7B,eAAe,CAACuB,MAAM,CAAC;IAC/C,IAAA9B,YAAM,EAACoC,eAAe,CAAC,CAACnC,EAAE,CAACC,GAAG,CAACpB,cAAc,CAAC;IAC9C;EACF;EACA,IAAAkB,YAAM,EAAC8B,MAAM,CAAC,CAAC7B,EAAE,CAACC,GAAG,CAACpB,cAAc,CAAC;EACrC;AACF;AAGA,SAASqD,qBAAqBA,CAAC;EAACL,MAAM;EAAE/D;AAAsB,CAAC,EAAE;EAC/D,IAAIA,sBAAsB,EAAE;IAC1B7B,KAAK,CAAC,sCAAsC,CAAC;IAC7C,IAAA8D,YAAM,EAAC8B,MAAM,CAACO,gBAAgB,CAAC,CAACpC,EAAE,CAACqC,GAAG,CAACpC,GAAG,CAAC,EAAE,CAAC;IAC9ChE,KAAK,CAAC,uCAAuC,CAAC;IAC9C;EACF;EACA;AACF;AAGA,SAASqE,eAAeA,CAACgC,SAAS,EAAE;EAClC,MAAMC,iBAAiB,GAAG;IACxB,GAAGD,SAAS;IACZE,YAAY,EAAE,EAAE;IAChBJ,gBAAgB,EAAE;EACpB,CAAC;EACDnG,KAAK,CAAC,qBAAqBY,IAAI,CAACkC,SAAS,CAACwD,iBAAiB,CAAC,EAAE,CAAC;EAC/D,OAAOA,iBAAiB;AAC1B;AAEA,SAASlD,WAAWA,CAAC;EAACD,KAAK;EAAEpB,eAAe;EAAEC,oBAAoB;EAAEC;AAAmB,CAAC,EAAE;EACxFjC,KAAK,CAACmD,KAAK,CAAC;EACZ,IAAIpB,eAAe,EAAE;IACnB/B,KAAK,CAAC,uBAAuB,CAAC;IAC9BA,KAAK,CAACY,IAAI,CAACkC,SAAS,CAACK,KAAK,CAAC,CAAC;IAC5B;IACA,IAAInB,oBAAoB,KAAK,EAAE,IAAIC,mBAAmB,KAAK,EAAE,EAAE;MAC7D,MAAMuE,YAAY,GAAGrD,KAAK,CAACsD,OAAO,IAAItD,KAAK,CAACuD,OAAO,CAACD,OAAO,IAAItD,KAAK,CAACuD,OAAO,IAAI,EAAE;MAClF1G,KAAK,CAACwG,YAAY,CAAC;MACnB,IAAA1C,YAAM,EAAC0C,YAAY,CAAC,CAACzC,EAAE,CAACC,GAAG,CAAChC,oBAAoB,CAAC;MACjD,MAAM2E,WAAW,GAAGxD,KAAK,CAACyD,MAAM,IAAI,EAAE;MACtC,IAAA9C,YAAM,EAAC6C,WAAW,CAAC,CAAC5C,EAAE,CAACC,GAAG,CAAC/B,mBAAmB,CAAC;MAC/C;IACF;IACA;EACF;EACAjC,KAAK,CAAC,+BAA+B,CAAC;EACtC,MAAMmD,KAAK;AACb;AAEA,SAAS0B,cAAcA,CAACxB,MAAM,EAAE;EAC9B,MAAMwD,MAAM,GAAG,EAAE;EACjB,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC;IACA3D,MAAM,CAAC4D,EAAE,CAAC,MAAM,EAAGC,KAAK,IAAKL,MAAM,CAACM,IAAI,CAACC,MAAM,CAACC,IAAI,CAACH,KAAK,CAAC,CAAC,CAAC;IAC7D7D,MAAM,CAAC4D,EAAE,CAAC,OAAO,EAAGK,GAAG,IAAKN,MAAM,CAACM,GAAG,CAAC,CAAC;IACxCjE,MAAM,CAAC4D,EAAE,CAAC,KAAK,EAAE,MAAMF,OAAO,CAACK,MAAM,CAACG,MAAM,CAACV,MAAM,CAAC,CAACW,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;EACzE,CAAC,CAAC;AACJ","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongoLog.spec.js","names":["_fixura","require","_fixugen","_interopRequireDefault","_fixuraMongo","_chai","_mongoLog","mongoFixtures","generateTests","callback","path","__dirname","recurse","useMetadataFile","fixura","failWhenNotFound","reader","READERS","JSON","mocha","before","initMongofixtures","beforeEach","clear","afterEach","after","close","mongoFixturesFactory","rootPath","gridFS","bucketName","useObjectId","format","creationTime","v","Date","modificationTime","getFixture","functionName","params","preFillDb","mongoUri","getUri","mongoLogOperator","createMongoLogOperator","expectedResult","populate","addLogItem","dump","expect","logs","to","eql","result","getListOfCatalogers","getExpandedListOfLogs","getListOfLogs","Error"],"sources":["../src/mongoLog.spec.js"],"sourcesContent":["// import {expect} from 'chai';\nimport {READERS} from '@natlibfi/fixura';\nimport generateTests from '@natlibfi/fixugen';\nimport mongoFixturesFactory from '@natlibfi/fixura-mongo';\nimport {expect} from 'chai';\nimport createMongoLogOperator from './mongoLog';\n\nlet mongoFixtures; // eslint-disable-line functional/no-let\n\ngenerateTests({\n callback,\n path: [__dirname, '..', 'test-fixtures', 'mongoLog'],\n recurse: false,\n useMetadataFile: true,\n fixura: {\n failWhenNotFound: true,\n reader: READERS.JSON\n },\n mocha: {\n before: async () => {\n await initMongofixtures();\n },\n beforeEach: () => mongoFixtures.clear(),\n afterEach: () => mongoFixtures.clear(),\n after: async () => {\n await mongoFixtures.close();\n }\n }\n});\n\nasync function initMongofixtures() {\n mongoFixtures = await mongoFixturesFactory({\n rootPath: [__dirname, '..', 'test-fixtures', 'mongoLog'],\n gridFS: {bucketName: 'blobs'},\n useObjectId: true,\n format: {\n creationTime: v => new Date(v),\n modificationTime: v => new Date(v)\n }\n });\n}\n\nasync function callback({\n getFixture,\n functionName,\n params,\n preFillDb = false\n}) {\n const mongoUri = await mongoFixtures.getUri();\n const mongoLogOperator = await createMongoLogOperator(mongoUri, '');\n const expectedResult = await getFixture('expectedResult.json');\n // console.log(typeof mongoUri); // eslint-disable-line\n\n if (preFillDb) { // eslint-disable-line functional/no-conditional-statements\n await mongoFixtures.populate(getFixture('dbContents.json'));\n }\n\n if (functionName === 'addLogItem') {\n await mongoLogOperator.addLogItem(params);\n const dump = await mongoFixtures.dump();\n
|
|
1
|
+
{"version":3,"file":"mongoLog.spec.js","names":["_fixura","require","_fixugen","_interopRequireDefault","_fixuraMongo","_chai","_mongoLog","mongoFixtures","generateTests","callback","path","__dirname","recurse","useMetadataFile","fixura","failWhenNotFound","reader","READERS","JSON","mocha","before","initMongofixtures","beforeEach","clear","afterEach","after","close","mongoFixturesFactory","rootPath","gridFS","bucketName","useObjectId","format","creationTime","v","Date","modificationTime","getFixture","functionName","params","preFillDb","mongoUri","getUri","mongoLogOperator","createMongoLogOperator","expectedResult","populate","addLogItem","dump","expect","logs","to","eql","result","getListOfCatalogers","getExpandedListOfLogs","getListOfLogs","Error"],"sources":["../src/mongoLog.spec.js"],"sourcesContent":["// import {expect} from 'chai';\nimport {READERS} from '@natlibfi/fixura';\nimport generateTests from '@natlibfi/fixugen';\nimport mongoFixturesFactory from '@natlibfi/fixura-mongo';\nimport {expect} from 'chai';\nimport createMongoLogOperator from './mongoLog';\n\nlet mongoFixtures; // eslint-disable-line functional/no-let\n\ngenerateTests({\n callback,\n path: [__dirname, '..', 'test-fixtures', 'mongoLog'],\n recurse: false,\n useMetadataFile: true,\n fixura: {\n failWhenNotFound: true,\n reader: READERS.JSON\n },\n mocha: {\n before: async () => {\n await initMongofixtures();\n },\n beforeEach: () => mongoFixtures.clear(),\n afterEach: () => mongoFixtures.clear(),\n after: async () => {\n await mongoFixtures.close();\n }\n }\n});\n\nasync function initMongofixtures() {\n mongoFixtures = await mongoFixturesFactory({\n rootPath: [__dirname, '..', 'test-fixtures', 'mongoLog'],\n gridFS: {bucketName: 'blobs'},\n useObjectId: true,\n format: {\n creationTime: v => new Date(v),\n modificationTime: v => new Date(v)\n }\n });\n}\n\nasync function callback({\n getFixture,\n functionName,\n params,\n preFillDb = false\n}) {\n const mongoUri = await mongoFixtures.getUri();\n const mongoLogOperator = await createMongoLogOperator(mongoUri, '');\n const expectedResult = await getFixture('expectedResult.json');\n // console.log(typeof mongoUri); // eslint-disable-line\n\n if (preFillDb) { // eslint-disable-line functional/no-conditional-statements\n await mongoFixtures.populate(getFixture('dbContents.json'));\n }\n\n if (functionName === 'addLogItem') {\n await mongoLogOperator.addLogItem(params);\n const dump = await mongoFixtures.dump();\n return expect(dump.logs[0]['0']).to.eql(expectedResult);\n }\n\n if (functionName === 'getListOfCatalogers') {\n const result = await mongoLogOperator.getListOfCatalogers();\n // console.log(result); // eslint-disable-line\n\n return expect(result).to.eql(expectedResult);\n }\n\n if (functionName === 'getExpandedListOfLogs') {\n const result = await mongoLogOperator.getExpandedListOfLogs(params);\n // console.log(result); // eslint-disable-line\n\n return expect(result).to.eql(expectedResult);\n }\n\n if (functionName === 'getListOfLogs') {\n const result = await mongoLogOperator.getListOfLogs(params);\n // console.log(result); // eslint-disable-line\n return expect(result).to.eql(expectedResult);\n }\n throw new Error(`Unknown functionName: ${functionName}`);\n}\n\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"url": "git@github.com:natlibfi/melinda-rest-api-commons.git"
|
|
15
15
|
},
|
|
16
16
|
"license": "MIT",
|
|
17
|
-
"version": "4.2.4-alpha.
|
|
17
|
+
"version": "4.2.4-alpha.7",
|
|
18
18
|
"main": "./dist/index.js",
|
|
19
19
|
"engines": {
|
|
20
20
|
"node": ">=18"
|
|
@@ -36,12 +36,12 @@
|
|
|
36
36
|
"dev:debug": "cross-env LOG_LEVEL=debug DEBUG=@natlibfi/* NODE_ENV=test nodemon"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@natlibfi/marc-record": "^9.1.
|
|
39
|
+
"@natlibfi/marc-record": "^9.1.3",
|
|
40
40
|
"@natlibfi/marc-record-serializers": "^10.1.5",
|
|
41
41
|
"@natlibfi/marc-record-validate": "^8.0.12",
|
|
42
42
|
"@natlibfi/marc-record-validators-melinda": "^11.5.3",
|
|
43
43
|
"@natlibfi/melinda-backend-commons": "^2.3.6",
|
|
44
|
-
"@natlibfi/melinda-commons": "^13.0.
|
|
44
|
+
"@natlibfi/melinda-commons": "^13.0.19",
|
|
45
45
|
"amqplib": "^0.10.5",
|
|
46
46
|
"debug": "^4.4.0",
|
|
47
47
|
"http-status": "^2.1.0",
|
|
@@ -51,9 +51,9 @@
|
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@babel/cli": "^7.26.4",
|
|
54
|
-
"@babel/core": "^7.26.
|
|
54
|
+
"@babel/core": "^7.26.7",
|
|
55
55
|
"@babel/plugin-transform-runtime": "^7.25.9",
|
|
56
|
-
"@babel/preset-env": "^7.26.
|
|
56
|
+
"@babel/preset-env": "^7.26.7",
|
|
57
57
|
"@babel/register": "^7.25.9",
|
|
58
58
|
"@natlibfi/eslint-config-melinda-backend": "^3.0.5",
|
|
59
59
|
"@natlibfi/fixugen": "^2.0.12",
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
"chai": "^4.5.0",
|
|
65
65
|
"cross-env": "^7.0.3",
|
|
66
66
|
"eslint": "^8.57.1",
|
|
67
|
-
"mocha": "^11.0
|
|
67
|
+
"mocha": "^11.1.0",
|
|
68
68
|
"nodemon": "^3.1.9",
|
|
69
69
|
"nyc": "^17.1.0"
|
|
70
70
|
},
|
package/dist/mongo.spec.js.draft
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import {expect} from 'chai';
|
|
2
|
-
import {READERS} from '@natlibfi/fixura';
|
|
3
|
-
import mongoFixturesFactory from '@natlibfi/fixura-mongo';
|
|
4
|
-
import generateTests from '@natlibfi/fixugen';
|
|
5
|
-
|
|
6
|
-
let mongoFixtures; // eslint-disable-line functional/no-let
|
|
7
|
-
|
|
8
|
-
generateTests({
|
|
9
|
-
callback,
|
|
10
|
-
path: [__dirname, '..', '..', 'test-fixtures', 'xxx'],
|
|
11
|
-
recurse: false,
|
|
12
|
-
useMetadataFile: true,
|
|
13
|
-
fixura: {
|
|
14
|
-
failWhenNotFound: true,
|
|
15
|
-
reader: READERS.JSON
|
|
16
|
-
},
|
|
17
|
-
mocha: {
|
|
18
|
-
before: async () => {
|
|
19
|
-
mongoFixtures = await mongoFixturesFactory({
|
|
20
|
-
rootPath: [__dirname, '..', '..', 'test-fixtures', 'xxx'],
|
|
21
|
-
gridFS: {bucketName: 'blobs'},
|
|
22
|
-
useObjectId: true,
|
|
23
|
-
format: {
|
|
24
|
-
blobmetadatas: {
|
|
25
|
-
creationTime: v => new Date(v),
|
|
26
|
-
modificationTime: v => new Date(v)
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
await MONGOCONNECTION.connect();
|
|
31
|
-
},
|
|
32
|
-
beforeEach: async () => {
|
|
33
|
-
await mongoFixtures.clear();
|
|
34
|
-
},
|
|
35
|
-
afterEach: async () => {
|
|
36
|
-
await mongoFixtures.clear();
|
|
37
|
-
},
|
|
38
|
-
after: async () => {
|
|
39
|
-
await MONGOCONNECTION.disconnect();
|
|
40
|
-
await mongoFixtures.close();
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
async function callback({
|
|
46
|
-
getFixture
|
|
47
|
-
}) {
|
|
48
|
-
try {
|
|
49
|
-
expect().to.eql();
|
|
50
|
-
} catch (error) {
|
|
51
|
-
console.log(error); // eslint-disable-line
|
|
52
|
-
throw error;
|
|
53
|
-
}
|
|
54
|
-
}
|