@sprucelabs/spruce-cli 14.29.29 → 14.29.30
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/CHANGELOG.md +8 -0
- package/build/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.js +3 -3
- package/build/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
- package/build/__tests__/implementation/PkgService.test.js +2 -2
- package/build/__tests__/implementation/PkgService.test.js.map +1 -1
- package/package.json +20 -20
- package/src/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.ts +3 -3
- package/src/__tests__/implementation/PkgService.test.ts +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [14.29.30](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v14.29.29...v14.29.30) (2022-01-12)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [14.29.29](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v14.29.28...v14.29.29) (2022-01-12)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
@@ -55,7 +55,7 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
55
55
|
|
|
56
56
|
var LOCAL_NAMESPACE = 'TestingSchemas';
|
|
57
57
|
var REMOTE_NAMESPACE = 'RemoteSchemas';
|
|
58
|
-
var REMOTE_MODULE = '@sprucelabs/
|
|
58
|
+
var REMOTE_MODULE = '@sprucelabs/calendar-utils';
|
|
59
59
|
var REMOTE_MODULE2 = '@sprucelabs/spruce-templates';
|
|
60
60
|
var SettingUpSchemasForModuleDistributionTest = (_dec = (0, _test.test)('can specify importFromModuleWhenRemote 1', 'CalendarEvent', REMOTE_MODULE, '1'), _dec2 = (0, _test.test)('can specify importFromModuleWhenRemote 2', 'CalendarEvent2', REMOTE_MODULE2, '2'), _dec3 = (0, _test.test)(), _dec4 = (0, _test.test)(), _dec5 = (0, _test.test)('should ask about missing module and cancel install', ['schema1'], [REMOTE_MODULE], false), _dec6 = (0, _test.test)('should ask about missing module and do install', ['schema1'], [REMOTE_MODULE], true), _dec7 = (0, _test.test)('should ask about missing module and do install', ['schema1', 'schema2'], [REMOTE_MODULE, REMOTE_MODULE2], true), _dec8 = (0, _test.test)('does not return the same module twice', ['schema1', 'schema1b', 'schema2'], [REMOTE_MODULE, REMOTE_MODULE2], true), _dec9 = (0, _test.test)('schemas are imported from one module', ['schema1']), _dec10 = (0, _test.test)('schemas are imported from two modules', ['schema1', 'schema2']), _dec11 = (0, _test.test)('can reference impored from another module', ["import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'"]), _dec12 = (0, _test.test)('can reference impored from another module with two importsWhenLocal', ["import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'", "import * as HeartwoodTypesLocal2 from '@sprucelabs/heartwood-view-controllers'"]), _dec13 = (0, _test.test)(), _dec14 = (0, _test.test)(), _dec15 = (0, _test.test)(), (_class = (_temp = _class2 = /*#__PURE__*/function (_AbstractSkillTest) {
|
|
61
61
|
(0, _inherits2["default"])(SettingUpSchemasForModuleDistributionTest, _AbstractSkillTest);
|
|
@@ -797,7 +797,7 @@ var SettingUpSchemasForModuleDistributionTest = (_dec = (0, _test.test)('can spe
|
|
|
797
797
|
imported = _test2["default"].assertFileByNameInGeneratedFiles('calendarEvent.schema.ts', results.files);
|
|
798
798
|
calendarEventContents = _spruceSkillUtils.diskUtil.readFile(imported);
|
|
799
799
|
|
|
800
|
-
_test.assert.isEqual(calendarEventContents.trim(), "export { calendarEventSchema as default } from '@sprucelabs/
|
|
800
|
+
_test.assert.isEqual(calendarEventContents.trim(), "export { calendarEventSchema as default } from '@sprucelabs/calendar-utils'");
|
|
801
801
|
|
|
802
802
|
case 4:
|
|
803
803
|
case "end":
|
|
@@ -874,7 +874,7 @@ var SettingUpSchemasForModuleDistributionTest = (_dec = (0, _test.test)('can spe
|
|
|
874
874
|
version: 'v2021_09_20',
|
|
875
875
|
namespace: 'TestingSchemas',
|
|
876
876
|
name: 'Schema imported as module',
|
|
877
|
-
moduleToImportFromWhenRemote: '@sprucelabs/
|
|
877
|
+
moduleToImportFromWhenRemote: '@sprucelabs/calendar-utils',
|
|
878
878
|
fields: {
|
|
879
879
|
fieldName1: {
|
|
880
880
|
label: 'First Field',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.ts"],"names":["LOCAL_NAMESPACE","REMOTE_NAMESPACE","REMOTE_MODULE","REMOTE_MODULE2","SettingUpSchemasForModuleDistributionTest","namePascal","remoteModule","count","nameCamel","namesUtil","toCamel","promise","Action","execute","nameReadable","moduleToImportFromWhenRemote","wait","ui","isWaitingForInput","sendInput","versionUtil","generateVersion","constValue","results","assert","isFalsy","errors","builderFile","testUtil","assertFileByNameInGeneratedFiles","files","Service","importDefault","builder","isEqual","schemaFile","schema","id","templateItems","generateTemplateItems","templateItem","importFrom","isFalse","schemaNames","expectedModules","shouldConfirmInstall","reInstallSkill","Store","setCurrentSkillsNamespace","schemas","map","name","getEmitter","on","SyncAction","waitForInput","secondToLast","invocations","length","options","headline","expected","doesInclude","lines","pkg","isTrue","isInstalled","isTruthy","errorAssertUtil","assertError","push","shouldInstallMissingDependencies","assertCalendarEventSchemaIsImported","doesThrow","importsWhenRemote","mySchema","fields","calendarEvent","type","schema1","namespace","version","localSchemaFile","localSchema","isEqualDeep","assertValidTypesFileWhenAddingRemoteImport","importGeneratedFile","completedFormBuilder","isRequired","personId","values","isArray","valueType","builderForm","dateDeleted","schemaId","itemBuilder","SchemaTemplateItemBuilder","buildTemplateItems","TestSkill","find","r","schemaIds","dirValue","schema2","schemaTypesFile","check","optionOverrides","fileName","imported","calendarEventContents","diskUtil","readFile","trim","builder1","nestedSchema","firstName","resolveHashSprucePath","typesContent","writeFile","AbstractSkillTest","fieldName1","label","fieldName2","hint"],"mappings":"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","sourcesContent":["import { Schema, SchemaTemplateItem } from '@sprucelabs/schema'\nimport {\n\tdiskUtil,\n\tnamesUtil,\n\tversionUtil,\n} from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssertUtil } from '@sprucelabs/test-utils'\nimport { FeatureActionResponse } from '../../features/features.types'\nimport SchemaTemplateItemBuilder from '../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nconst LOCAL_NAMESPACE = 'TestingSchemas'\nconst REMOTE_NAMESPACE = 'RemoteSchemas'\n\nconst REMOTE_MODULE = '@sprucelabs/spruce-calendar-utils'\nconst REMOTE_MODULE2 = '@sprucelabs/spruce-templates'\n\nexport default class SettingUpSchemasForModuleDistributionTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'schemas'\n\tprivate static builder1: Schema\n\tprivate static schema1: Schema = {\n\t\tid: 'calendarEvent',\n\t\tversion: 'v2021_09_20',\n\t\tnamespace: 'TestingSchemas',\n\t\tname: 'Schema imported as module',\n\t\tmoduleToImportFromWhenRemote: '@sprucelabs/spruce-calendar-utils',\n\t\tfields: {\n\t\t\tfieldName1: { label: 'First Field', type: 'text', isRequired: true },\n\t\t\tfieldName2: {\n\t\t\t\tlabel: 'Second Field',\n\t\t\t\ttype: 'number',\n\t\t\t\tisRequired: true,\n\t\t\t\thint: 'A hint',\n\t\t\t},\n\t\t},\n\t}\n\t//@ts-ignore\n\tprivate static schema1b: Schema\n\tprivate static schema2: Schema = {\n\t\tid: 'calendarEvent2',\n\t\tversion: 'v2021_09_20',\n\t\tnamespace: 'TestingSchemas',\n\t\tname: 'Schema imported as module',\n\t\tmoduleToImportFromWhenRemote: '@sprucelabs/spruce-templates',\n\t\tfields: {\n\t\t\tfieldName1: { label: 'First Field', type: 'text', isRequired: true },\n\t\t\tfieldName2: {\n\t\t\t\tlabel: 'Second Field',\n\t\t\t\ttype: 'number',\n\t\t\t\tisRequired: true,\n\t\t\t\thint: 'A hint',\n\t\t\t},\n\t\t},\n\t}\n\n\t@test(\n\t\t'can specify importFromModuleWhenRemote 1',\n\t\t'CalendarEvent',\n\t\tREMOTE_MODULE,\n\t\t'1'\n\t)\n\t@test(\n\t\t'can specify importFromModuleWhenRemote 2',\n\t\t'CalendarEvent2',\n\t\tREMOTE_MODULE2,\n\t\t'2'\n\t)\n\tprotected static async canSpecifyModuleToImportFromWhenRemote(\n\t\tnamePascal: string,\n\t\tremoteModule: string,\n\t\tcount: '1' | '2'\n\t) {\n\t\tconst nameCamel = namesUtil.toCamel(namePascal)\n\t\tconst promise = this.Action('schema', 'create').execute({\n\t\t\tnameReadable: 'Schema imported as module',\n\t\t\tnamePascal,\n\t\t\tnameCamel,\n\t\t\tmoduleToImportFromWhenRemote: remoteModule,\n\t\t})\n\n\t\tawait this.wait(10)\n\n\t\tif (this.ui.isWaitingForInput()) {\n\t\t\tawait this.ui.sendInput(versionUtil.generateVersion().constValue)\n\t\t}\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst builderFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}.builder.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tconst builder = await this.Service('import').importDefault(builderFile)\n\t\tassert.isEqual(builder.moduleToImportFromWhenRemote, remoteModule)\n\n\t\t//@ts-ignore\n\t\tthis[`builder${count}`] = builder\n\n\t\tconst schemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}.schema.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tconst schema = await this.Service('import').importDefault(schemaFile)\n\t\tassert.isEqual(schema.moduleToImportFromWhenRemote, remoteModule)\n\n\t\t//@ts-ignore\n\t\tthis[`schema${count}`] = schema\n\t\t//@ts-ignore\n\t\tthis[`schema${count}b`] = { ...schema, id: `schema${count}B` }\n\t}\n\n\t@test()\n\tprotected static async templateItemGeneratorHonorsModuleToImportWhenRemoteWhenInRemoteNamespace() {\n\t\tconst templateItems = this.generateTemplateItems(REMOTE_NAMESPACE)\n\n\t\tfor (const templateItem of templateItems) {\n\t\t\tassert.isEqual(\n\t\t\t\ttemplateItem.schema.moduleToImportFromWhenRemote,\n\t\t\t\tREMOTE_MODULE\n\t\t\t)\n\t\t\tassert.isEqual(templateItem.importFrom, REMOTE_MODULE)\n\t\t}\n\t}\n\n\t@test()\n\tprotected static async moduleToImportWhenRemoteIgnoredWhenInSameNamespace() {\n\t\tconst templateItems = this.generateTemplateItems(LOCAL_NAMESPACE)\n\t\tfor (const templateItem of templateItems) {\n\t\t\tassert.isEqual(\n\t\t\t\ttemplateItem.schema.moduleToImportFromWhenRemote,\n\t\t\t\tREMOTE_MODULE\n\t\t\t)\n\t\t\tassert.isFalse('importFrom' in templateItem)\n\t\t}\n\t}\n\n\t@test(\n\t\t'should ask about missing module and cancel install',\n\t\t['schema1'],\n\t\t[REMOTE_MODULE],\n\t\tfalse\n\t)\n\t@test(\n\t\t'should ask about missing module and do install',\n\t\t['schema1'],\n\t\t[REMOTE_MODULE],\n\t\ttrue\n\t)\n\t@test(\n\t\t'should ask about missing module and do install',\n\t\t['schema1', 'schema2'],\n\t\t[REMOTE_MODULE, REMOTE_MODULE2],\n\t\ttrue\n\t)\n\t@test(\n\t\t'does not return the same module twice',\n\t\t['schema1', 'schema1b', 'schema2'],\n\t\t[REMOTE_MODULE, REMOTE_MODULE2],\n\t\ttrue\n\t)\n\tprotected static async asksIfModuleShouldBeInstalled(\n\t\tschemaNames: ('schema1' | 'schema2')[],\n\t\texpectedModules: string[],\n\t\tshouldConfirmInstall: boolean\n\t) {\n\t\tawait this.reInstallSkill()\n\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schemas = schemaNames.map((name) => this[name])\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas,\n\t\t\t}\n\t\t})\n\n\t\tconst promise = this.SyncAction().execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst secondToLast = this.ui.invocations[this.ui.invocations.length - 2]\n\n\t\tassert.isEqual(\n\t\t\tsecondToLast.options.headline,\n\t\t\t`Missing ${expectedModules.length} module${\n\t\t\t\texpectedModules.length === 1 ? '' : 's'\n\t\t\t}`\n\t\t)\n\n\t\tfor (const expected of expectedModules) {\n\t\t\tassert.doesInclude(secondToLast.options.lines, expected)\n\t\t}\n\n\t\tawait this.ui.sendInput(shouldConfirmInstall ? 'y' : 'n')\n\n\t\tconst results = await promise\n\n\t\tif (shouldConfirmInstall) {\n\t\t\tassert.isFalsy(results.errors)\n\t\t\tconst pkg = this.Service('pkg')\n\t\t\tfor (const expected of expectedModules) {\n\t\t\t\tassert.isTrue(pkg.isInstalled(expected))\n\t\t\t}\n\t\t} else {\n\t\t\tassert.isTruthy(results.errors)\n\t\t\terrorAssertUtil.assertError(results.errors[0], 'ACTION_CANCELLED')\n\t\t}\n\t}\n\n\t@test('schemas are imported from one module', ['schema1'])\n\t@test('schemas are imported from two modules', ['schema1', 'schema2'])\n\tprotected static async schemasAreImportedFromModuleWhenSyncedFromDifferentNamespace(\n\t\tschemaNames: ('schema1' | 'schema2')[]\n\t) {\n\t\tawait this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schemas: Schema[] = []\n\n\t\tfor (const name of schemaNames) {\n\t\t\tschemas.push(this[name])\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas,\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tawait this.assertCalendarEventSchemaIsImported(results)\n\n\t\tassert.doesThrow(() =>\n\t\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t\t'schemas.types.ts',\n\t\t\t\tresults.files\n\t\t\t)\n\t\t)\n\t}\n\n\t@test('can reference impored from another module', [\n\t\t`import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'`,\n\t])\n\t@test('can reference impored from another module with two importsWhenLocal', [\n\t\t`import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'`,\n\t\t`import * as HeartwoodTypesLocal2 from '@sprucelabs/heartwood-view-controllers'`,\n\t])\n\tprotected static async canReferenceSchemaImportedFromAnotherModule(\n\t\timportsWhenRemote: string[]\n\t) {\n\t\tawait this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst mySchema = {\n\t\t\tid: 'localSchema',\n\t\t\timportsWhenRemote,\n\t\t\tfields: {\n\t\t\t\tcalendarEvent: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t...this.schema1,\n\t\t\t\t\t\t\tnamespace: 'CalendarUtils',\n\t\t\t\t\t\t\tversion: 'v2021_05_19',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas: [mySchema],\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tconst localSchemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'localSchema.schema.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst localSchema = await this.Service('import').importDefault(\n\t\t\tlocalSchemaFile\n\t\t)\n\n\t\tassert.isEqualDeep(localSchema.importsWhenRemote, importsWhenRemote)\n\n\t\tawait this.assertCalendarEventSchemaIsImported(results)\n\t\tawait this.assertValidTypesFileWhenAddingRemoteImport(results)\n\t}\n\n\t@test()\n\tprotected static async canSetImportFromModuleWithNestedSchemasWhenRemoteWhenSyncing() {\n\t\tawait this.reInstallSkill()\n\n\t\tawait this.Action('schema', 'create').execute({\n\t\t\tnameReadable: 'Schema imported as module',\n\t\t\tnamePascal: 'CalandarEvent',\n\t\t\tnameCamel: 'calendarEvent',\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tmoduleToImportFromWhenRemote: REMOTE_MODULE,\n\t\t})\n\n\t\tthis.schema1 = (await this.importGeneratedFile(\n\t\t\tresults,\n\t\t\t`calendarEvent.schema.ts`\n\t\t)) as Schema\n\n\t\tassert.isEqual(this.schema1.moduleToImportFromWhenRemote, REMOTE_MODULE)\n\t}\n\n\t@test()\n\tprotected static async canHandleFormBuilderImportExportObject() {\n\t\tconst version = versionUtil.generateVersion().constValue\n\n\t\tconst completedFormBuilder = {\n\t\t\tid: 'fullCompletedForm',\n\t\t\tversion,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst builderForm = {\n\t\t\tid: 'builtForm',\n\t\t\tversion,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tdateDeleted: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t},\n\t\t\t\tcompletedFormBuilder: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaId: {\n\t\t\t\t\t\t\tversion,\n\t\t\t\t\t\t\tid: 'fullCompletedForm',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst itemBuilder = new SchemaTemplateItemBuilder('TestSkill')\n\n\t\tconst results = itemBuilder.buildTemplateItems({\n\t\t\t//@ts-ignore\n\t\t\tTestSkill: [completedFormBuilder, builderForm],\n\t\t})\n\n\t\tassert.isFalsy(\n\t\t\t(\n\t\t\t\tresults.find((r) => r.id === 'builtForm')?.schema.fields\n\t\t\t\t\t?.completedFormBuilder?.options as any\n\t\t\t)?.schemaIds?.[0]?.moduleToImportFromWhenRemote\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async importedSchemasDoNotShowUpInSchemaTypes() {\n\t\t// await this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schema1 = {\n\t\t\tid: 'fullCompletedForm',\n\t\t\tnamespace: 'Heartwood',\n\t\t\tversion: versionUtil.generateVersion().dirValue,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\timportsWhenRemote: ['import * from bananarama'],\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst schema2 = {\n\t\t\tid: 'localCompleted',\n\t\t\tversion: versionUtil.generateVersion().dirValue,\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas: [schema1, schema2],\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst schemaTypesFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'schemas.types.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tawait this.Service('typeChecker').check(schemaTypesFile)\n\t}\n\n\tprivate static SyncAction() {\n\t\treturn this.Action('schema', 'sync', {\n\t\t\toptionOverrides: {\n\t\t\t\t'sync.schemas': {},\n\t\t\t},\n\t\t})\n\t}\n\n\tprivate static async importGeneratedFile(\n\t\tresults: FeatureActionResponse,\n\t\tfileName: string\n\t) {\n\t\tconst schemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\tfileName,\n\t\t\tresults.files\n\t\t)\n\n\t\treturn await this.Service('import').importDefault(schemaFile)\n\t}\n\n\tprivate static async assertCalendarEventSchemaIsImported(\n\t\tresults: FeatureActionResponse\n\t) {\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst imported = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'calendarEvent.schema.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst calendarEventContents = diskUtil.readFile(imported)\n\n\t\tassert.isEqual(\n\t\t\tcalendarEventContents.trim(),\n\t\t\t`export { calendarEventSchema as default } from '@sprucelabs/spruce-calendar-utils'`\n\t\t)\n\t}\n\n\tprivate static generateTemplateItems(namespace: string) {\n\t\tconst itemBuilder = new SchemaTemplateItemBuilder(namespace)\n\t\tconst templateItems = itemBuilder.buildTemplateItems(\n\t\t\t{\n\t\t\t\t[LOCAL_NAMESPACE]: [\n\t\t\t\t\t{\n\t\t\t\t\t\t...this.builder1,\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t...this.builder1.fields,\n\t\t\t\t\t\t\tnestedSchema: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\tid: 'nested',\n\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\tfirstName: {\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\tthis.resolveHashSprucePath('schemas')\n\t\t)\n\t\treturn templateItems as SchemaTemplateItem[]\n\t}\n\n\tprivate static async assertValidTypesFileWhenAddingRemoteImport(\n\t\tresults: FeatureActionResponse\n\t) {\n\t\tconst schemaTypesFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'schemas.types.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst typesContent = `import '${REMOTE_MODULE}'\\n\\n${diskUtil.readFile(\n\t\t\tschemaTypesFile\n\t\t)}`\n\t\tdiskUtil.writeFile(schemaTypesFile, typesContent)\n\n\t\tawait this.Service('typeChecker').check(schemaTypesFile)\n\t}\n}\n"],"file":"SettingUpSchemasForModuleDistribution.test.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.ts"],"names":["LOCAL_NAMESPACE","REMOTE_NAMESPACE","REMOTE_MODULE","REMOTE_MODULE2","SettingUpSchemasForModuleDistributionTest","namePascal","remoteModule","count","nameCamel","namesUtil","toCamel","promise","Action","execute","nameReadable","moduleToImportFromWhenRemote","wait","ui","isWaitingForInput","sendInput","versionUtil","generateVersion","constValue","results","assert","isFalsy","errors","builderFile","testUtil","assertFileByNameInGeneratedFiles","files","Service","importDefault","builder","isEqual","schemaFile","schema","id","templateItems","generateTemplateItems","templateItem","importFrom","isFalse","schemaNames","expectedModules","shouldConfirmInstall","reInstallSkill","Store","setCurrentSkillsNamespace","schemas","map","name","getEmitter","on","SyncAction","waitForInput","secondToLast","invocations","length","options","headline","expected","doesInclude","lines","pkg","isTrue","isInstalled","isTruthy","errorAssertUtil","assertError","push","shouldInstallMissingDependencies","assertCalendarEventSchemaIsImported","doesThrow","importsWhenRemote","mySchema","fields","calendarEvent","type","schema1","namespace","version","localSchemaFile","localSchema","isEqualDeep","assertValidTypesFileWhenAddingRemoteImport","importGeneratedFile","completedFormBuilder","isRequired","personId","values","isArray","valueType","builderForm","dateDeleted","schemaId","itemBuilder","SchemaTemplateItemBuilder","buildTemplateItems","TestSkill","find","r","schemaIds","dirValue","schema2","schemaTypesFile","check","optionOverrides","fileName","imported","calendarEventContents","diskUtil","readFile","trim","builder1","nestedSchema","firstName","resolveHashSprucePath","typesContent","writeFile","AbstractSkillTest","fieldName1","label","fieldName2","hint"],"mappings":"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","sourcesContent":["import { Schema, SchemaTemplateItem } from '@sprucelabs/schema'\nimport {\n\tdiskUtil,\n\tnamesUtil,\n\tversionUtil,\n} from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssertUtil } from '@sprucelabs/test-utils'\nimport { FeatureActionResponse } from '../../features/features.types'\nimport SchemaTemplateItemBuilder from '../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nconst LOCAL_NAMESPACE = 'TestingSchemas'\nconst REMOTE_NAMESPACE = 'RemoteSchemas'\n\nconst REMOTE_MODULE = '@sprucelabs/calendar-utils'\nconst REMOTE_MODULE2 = '@sprucelabs/spruce-templates'\n\nexport default class SettingUpSchemasForModuleDistributionTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'schemas'\n\tprivate static builder1: Schema\n\tprivate static schema1: Schema = {\n\t\tid: 'calendarEvent',\n\t\tversion: 'v2021_09_20',\n\t\tnamespace: 'TestingSchemas',\n\t\tname: 'Schema imported as module',\n\t\tmoduleToImportFromWhenRemote: '@sprucelabs/calendar-utils',\n\t\tfields: {\n\t\t\tfieldName1: { label: 'First Field', type: 'text', isRequired: true },\n\t\t\tfieldName2: {\n\t\t\t\tlabel: 'Second Field',\n\t\t\t\ttype: 'number',\n\t\t\t\tisRequired: true,\n\t\t\t\thint: 'A hint',\n\t\t\t},\n\t\t},\n\t}\n\t//@ts-ignore\n\tprivate static schema1b: Schema\n\tprivate static schema2: Schema = {\n\t\tid: 'calendarEvent2',\n\t\tversion: 'v2021_09_20',\n\t\tnamespace: 'TestingSchemas',\n\t\tname: 'Schema imported as module',\n\t\tmoduleToImportFromWhenRemote: '@sprucelabs/spruce-templates',\n\t\tfields: {\n\t\t\tfieldName1: { label: 'First Field', type: 'text', isRequired: true },\n\t\t\tfieldName2: {\n\t\t\t\tlabel: 'Second Field',\n\t\t\t\ttype: 'number',\n\t\t\t\tisRequired: true,\n\t\t\t\thint: 'A hint',\n\t\t\t},\n\t\t},\n\t}\n\n\t@test(\n\t\t'can specify importFromModuleWhenRemote 1',\n\t\t'CalendarEvent',\n\t\tREMOTE_MODULE,\n\t\t'1'\n\t)\n\t@test(\n\t\t'can specify importFromModuleWhenRemote 2',\n\t\t'CalendarEvent2',\n\t\tREMOTE_MODULE2,\n\t\t'2'\n\t)\n\tprotected static async canSpecifyModuleToImportFromWhenRemote(\n\t\tnamePascal: string,\n\t\tremoteModule: string,\n\t\tcount: '1' | '2'\n\t) {\n\t\tconst nameCamel = namesUtil.toCamel(namePascal)\n\t\tconst promise = this.Action('schema', 'create').execute({\n\t\t\tnameReadable: 'Schema imported as module',\n\t\t\tnamePascal,\n\t\t\tnameCamel,\n\t\t\tmoduleToImportFromWhenRemote: remoteModule,\n\t\t})\n\n\t\tawait this.wait(10)\n\n\t\tif (this.ui.isWaitingForInput()) {\n\t\t\tawait this.ui.sendInput(versionUtil.generateVersion().constValue)\n\t\t}\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst builderFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}.builder.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tconst builder = await this.Service('import').importDefault(builderFile)\n\t\tassert.isEqual(builder.moduleToImportFromWhenRemote, remoteModule)\n\n\t\t//@ts-ignore\n\t\tthis[`builder${count}`] = builder\n\n\t\tconst schemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}.schema.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tconst schema = await this.Service('import').importDefault(schemaFile)\n\t\tassert.isEqual(schema.moduleToImportFromWhenRemote, remoteModule)\n\n\t\t//@ts-ignore\n\t\tthis[`schema${count}`] = schema\n\t\t//@ts-ignore\n\t\tthis[`schema${count}b`] = { ...schema, id: `schema${count}B` }\n\t}\n\n\t@test()\n\tprotected static async templateItemGeneratorHonorsModuleToImportWhenRemoteWhenInRemoteNamespace() {\n\t\tconst templateItems = this.generateTemplateItems(REMOTE_NAMESPACE)\n\n\t\tfor (const templateItem of templateItems) {\n\t\t\tassert.isEqual(\n\t\t\t\ttemplateItem.schema.moduleToImportFromWhenRemote,\n\t\t\t\tREMOTE_MODULE\n\t\t\t)\n\t\t\tassert.isEqual(templateItem.importFrom, REMOTE_MODULE)\n\t\t}\n\t}\n\n\t@test()\n\tprotected static async moduleToImportWhenRemoteIgnoredWhenInSameNamespace() {\n\t\tconst templateItems = this.generateTemplateItems(LOCAL_NAMESPACE)\n\t\tfor (const templateItem of templateItems) {\n\t\t\tassert.isEqual(\n\t\t\t\ttemplateItem.schema.moduleToImportFromWhenRemote,\n\t\t\t\tREMOTE_MODULE\n\t\t\t)\n\t\t\tassert.isFalse('importFrom' in templateItem)\n\t\t}\n\t}\n\n\t@test(\n\t\t'should ask about missing module and cancel install',\n\t\t['schema1'],\n\t\t[REMOTE_MODULE],\n\t\tfalse\n\t)\n\t@test(\n\t\t'should ask about missing module and do install',\n\t\t['schema1'],\n\t\t[REMOTE_MODULE],\n\t\ttrue\n\t)\n\t@test(\n\t\t'should ask about missing module and do install',\n\t\t['schema1', 'schema2'],\n\t\t[REMOTE_MODULE, REMOTE_MODULE2],\n\t\ttrue\n\t)\n\t@test(\n\t\t'does not return the same module twice',\n\t\t['schema1', 'schema1b', 'schema2'],\n\t\t[REMOTE_MODULE, REMOTE_MODULE2],\n\t\ttrue\n\t)\n\tprotected static async asksIfModuleShouldBeInstalled(\n\t\tschemaNames: ('schema1' | 'schema2')[],\n\t\texpectedModules: string[],\n\t\tshouldConfirmInstall: boolean\n\t) {\n\t\tawait this.reInstallSkill()\n\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schemas = schemaNames.map((name) => this[name])\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas,\n\t\t\t}\n\t\t})\n\n\t\tconst promise = this.SyncAction().execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst secondToLast = this.ui.invocations[this.ui.invocations.length - 2]\n\n\t\tassert.isEqual(\n\t\t\tsecondToLast.options.headline,\n\t\t\t`Missing ${expectedModules.length} module${\n\t\t\t\texpectedModules.length === 1 ? '' : 's'\n\t\t\t}`\n\t\t)\n\n\t\tfor (const expected of expectedModules) {\n\t\t\tassert.doesInclude(secondToLast.options.lines, expected)\n\t\t}\n\n\t\tawait this.ui.sendInput(shouldConfirmInstall ? 'y' : 'n')\n\n\t\tconst results = await promise\n\n\t\tif (shouldConfirmInstall) {\n\t\t\tassert.isFalsy(results.errors)\n\t\t\tconst pkg = this.Service('pkg')\n\t\t\tfor (const expected of expectedModules) {\n\t\t\t\tassert.isTrue(pkg.isInstalled(expected))\n\t\t\t}\n\t\t} else {\n\t\t\tassert.isTruthy(results.errors)\n\t\t\terrorAssertUtil.assertError(results.errors[0], 'ACTION_CANCELLED')\n\t\t}\n\t}\n\n\t@test('schemas are imported from one module', ['schema1'])\n\t@test('schemas are imported from two modules', ['schema1', 'schema2'])\n\tprotected static async schemasAreImportedFromModuleWhenSyncedFromDifferentNamespace(\n\t\tschemaNames: ('schema1' | 'schema2')[]\n\t) {\n\t\tawait this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schemas: Schema[] = []\n\n\t\tfor (const name of schemaNames) {\n\t\t\tschemas.push(this[name])\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas,\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tawait this.assertCalendarEventSchemaIsImported(results)\n\n\t\tassert.doesThrow(() =>\n\t\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t\t'schemas.types.ts',\n\t\t\t\tresults.files\n\t\t\t)\n\t\t)\n\t}\n\n\t@test('can reference impored from another module', [\n\t\t`import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'`,\n\t])\n\t@test('can reference impored from another module with two importsWhenLocal', [\n\t\t`import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'`,\n\t\t`import * as HeartwoodTypesLocal2 from '@sprucelabs/heartwood-view-controllers'`,\n\t])\n\tprotected static async canReferenceSchemaImportedFromAnotherModule(\n\t\timportsWhenRemote: string[]\n\t) {\n\t\tawait this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst mySchema = {\n\t\t\tid: 'localSchema',\n\t\t\timportsWhenRemote,\n\t\t\tfields: {\n\t\t\t\tcalendarEvent: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t...this.schema1,\n\t\t\t\t\t\t\tnamespace: 'CalendarUtils',\n\t\t\t\t\t\t\tversion: 'v2021_05_19',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas: [mySchema],\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tconst localSchemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'localSchema.schema.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst localSchema = await this.Service('import').importDefault(\n\t\t\tlocalSchemaFile\n\t\t)\n\n\t\tassert.isEqualDeep(localSchema.importsWhenRemote, importsWhenRemote)\n\n\t\tawait this.assertCalendarEventSchemaIsImported(results)\n\t\tawait this.assertValidTypesFileWhenAddingRemoteImport(results)\n\t}\n\n\t@test()\n\tprotected static async canSetImportFromModuleWithNestedSchemasWhenRemoteWhenSyncing() {\n\t\tawait this.reInstallSkill()\n\n\t\tawait this.Action('schema', 'create').execute({\n\t\t\tnameReadable: 'Schema imported as module',\n\t\t\tnamePascal: 'CalandarEvent',\n\t\t\tnameCamel: 'calendarEvent',\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tmoduleToImportFromWhenRemote: REMOTE_MODULE,\n\t\t})\n\n\t\tthis.schema1 = (await this.importGeneratedFile(\n\t\t\tresults,\n\t\t\t`calendarEvent.schema.ts`\n\t\t)) as Schema\n\n\t\tassert.isEqual(this.schema1.moduleToImportFromWhenRemote, REMOTE_MODULE)\n\t}\n\n\t@test()\n\tprotected static async canHandleFormBuilderImportExportObject() {\n\t\tconst version = versionUtil.generateVersion().constValue\n\n\t\tconst completedFormBuilder = {\n\t\t\tid: 'fullCompletedForm',\n\t\t\tversion,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst builderForm = {\n\t\t\tid: 'builtForm',\n\t\t\tversion,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tdateDeleted: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t},\n\t\t\t\tcompletedFormBuilder: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaId: {\n\t\t\t\t\t\t\tversion,\n\t\t\t\t\t\t\tid: 'fullCompletedForm',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst itemBuilder = new SchemaTemplateItemBuilder('TestSkill')\n\n\t\tconst results = itemBuilder.buildTemplateItems({\n\t\t\t//@ts-ignore\n\t\t\tTestSkill: [completedFormBuilder, builderForm],\n\t\t})\n\n\t\tassert.isFalsy(\n\t\t\t(\n\t\t\t\tresults.find((r) => r.id === 'builtForm')?.schema.fields\n\t\t\t\t\t?.completedFormBuilder?.options as any\n\t\t\t)?.schemaIds?.[0]?.moduleToImportFromWhenRemote\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async importedSchemasDoNotShowUpInSchemaTypes() {\n\t\t// await this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schema1 = {\n\t\t\tid: 'fullCompletedForm',\n\t\t\tnamespace: 'Heartwood',\n\t\t\tversion: versionUtil.generateVersion().dirValue,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\timportsWhenRemote: ['import * from bananarama'],\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst schema2 = {\n\t\t\tid: 'localCompleted',\n\t\t\tversion: versionUtil.generateVersion().dirValue,\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas: [schema1, schema2],\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst schemaTypesFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'schemas.types.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tawait this.Service('typeChecker').check(schemaTypesFile)\n\t}\n\n\tprivate static SyncAction() {\n\t\treturn this.Action('schema', 'sync', {\n\t\t\toptionOverrides: {\n\t\t\t\t'sync.schemas': {},\n\t\t\t},\n\t\t})\n\t}\n\n\tprivate static async importGeneratedFile(\n\t\tresults: FeatureActionResponse,\n\t\tfileName: string\n\t) {\n\t\tconst schemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\tfileName,\n\t\t\tresults.files\n\t\t)\n\n\t\treturn await this.Service('import').importDefault(schemaFile)\n\t}\n\n\tprivate static async assertCalendarEventSchemaIsImported(\n\t\tresults: FeatureActionResponse\n\t) {\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst imported = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'calendarEvent.schema.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst calendarEventContents = diskUtil.readFile(imported)\n\n\t\tassert.isEqual(\n\t\t\tcalendarEventContents.trim(),\n\t\t\t`export { calendarEventSchema as default } from '@sprucelabs/calendar-utils'`\n\t\t)\n\t}\n\n\tprivate static generateTemplateItems(namespace: string) {\n\t\tconst itemBuilder = new SchemaTemplateItemBuilder(namespace)\n\t\tconst templateItems = itemBuilder.buildTemplateItems(\n\t\t\t{\n\t\t\t\t[LOCAL_NAMESPACE]: [\n\t\t\t\t\t{\n\t\t\t\t\t\t...this.builder1,\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t...this.builder1.fields,\n\t\t\t\t\t\t\tnestedSchema: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\tid: 'nested',\n\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\tfirstName: {\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\tthis.resolveHashSprucePath('schemas')\n\t\t)\n\t\treturn templateItems as SchemaTemplateItem[]\n\t}\n\n\tprivate static async assertValidTypesFileWhenAddingRemoteImport(\n\t\tresults: FeatureActionResponse\n\t) {\n\t\tconst schemaTypesFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'schemas.types.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst typesContent = `import '${REMOTE_MODULE}'\\n\\n${diskUtil.readFile(\n\t\t\tschemaTypesFile\n\t\t)}`\n\t\tdiskUtil.writeFile(schemaTypesFile, typesContent)\n\n\t\tawait this.Service('typeChecker').check(schemaTypesFile)\n\t}\n}\n"],"file":"SettingUpSchemasForModuleDistribution.test.js"}
|
|
@@ -214,7 +214,7 @@ var PkgServiceTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
214
214
|
switch (_context6.prev = _context6.next) {
|
|
215
215
|
case 0:
|
|
216
216
|
_context6.next = 2;
|
|
217
|
-
return this.pkg.install(['moment', '@sprucelabs/
|
|
217
|
+
return this.pkg.install(['moment', '@sprucelabs/calendar-utils']);
|
|
218
218
|
|
|
219
219
|
case 2:
|
|
220
220
|
_yield$this$pkg$insta2 = _context6.sent;
|
|
@@ -222,7 +222,7 @@ var PkgServiceTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
222
222
|
|
|
223
223
|
_test.assert.isEqual(totalInstalled, 2);
|
|
224
224
|
|
|
225
|
-
expectedPath = this.resolvePath('node_modules', '@sprucelabs', '
|
|
225
|
+
expectedPath = this.resolvePath('node_modules', '@sprucelabs', 'calendar-utils');
|
|
226
226
|
|
|
227
227
|
_test.assert.isTrue(_spruceSkillUtils.diskUtil.doesFileExist(expectedPath), "No module installed at ".concat(expectedPath, "."));
|
|
228
228
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/implementation/PkgService.test.ts"],"names":["PkgServiceTest","pkg","Service","assert","isTruthy","version","get","isNotEqual","CommandService","setMockResponse","RegExp","code","install","isInstalled","totalInstalled","isEqual","expectedPath","resolvePath","isTrue","diskUtil","doesFileExist","AbstractSkillTest"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;;;;;;;IAEqBA,c,WASnB,iB,UAKA,iB,UAMA,iB,UAWA,iB,UA2BA,iB;;;;;;;;;;;;;sGAtDD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAEC,qBAAKC,GAAL,GAAW,KAAKC,OAAL,CAAa,KAAb,CAAX;;AAFD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;+GAKA;AAAA;AAAA;AAAA;AAAA;AAECC,6BAAOC,QAAP,CAAgB,KAAKH,GAArB;;AAFD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;qJAKA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEOI,gBAAAA,OAFP,GAEiB,KAAKJ,GAAL,CAASK,GAAT,CAAa,qBAAb,CAFjB;;AAGCH,6BAAOI,UAAP,CAAkBF,OAAlB,EAA2B,QAA3B;;AAHD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;iHAMA;AAAA;AAAA;AAAA;AAAA;AAECG,2CAAeC,eAAf,CAA+B,IAAIC,MAAJ,CAAW,QAAX,CAA/B,EAAsD;AACrDC,kBAAAA,IAAI,EAAE;AAD+C,iBAAtD;;AAFD;AAAA,uBAMO,KAAKV,GAAL,CAASW,OAAT,CAAiB,+CAAjB,CANP;;AAAA;AAQC,qBAAKX,GAAL,CAASY,WAAT,CAAqB,wCAArB;;AARD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;2IAWA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAECL,2CAAeC,eAAf,CACC,IAAIC,MAAJ,CAAW,oDAAX,CADD,EAEC;AACCC,kBAAAA,IAAI,EAAE;AADP,iBAFD;;AAFD;AAAA,uBASkC,KAAKV,GAAL,CAASW,OAAT,CAChC,gCADgC,CATlC;;AAAA;AAAA;AASSE,gBAAAA,cATT,yBASSA,cATT;;AAaCX,6BAAOY,OAAP,CAAeD,cAAf,EAA+B,CAA/B;;AAEME,gBAAAA,YAfP,GAesB,KAAKC,WAAL,CACpB,cADoB,EAEpB,aAFoB,EAGpB,oBAHoB,CAftB;;AAqBCd,6BAAOe,MAAP,CACCC,2BAASC,aAAT,CAAuBJ,YAAvB,CADD,mCAE2BA,YAF3B;;AArBD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;mJA2BA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEkC,KAAKf,GAAL,CAASW,OAAT,CAAiB,CACjD,QADiD,EAEjD,
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/implementation/PkgService.test.ts"],"names":["PkgServiceTest","pkg","Service","assert","isTruthy","version","get","isNotEqual","CommandService","setMockResponse","RegExp","code","install","isInstalled","totalInstalled","isEqual","expectedPath","resolvePath","isTrue","diskUtil","doesFileExist","AbstractSkillTest"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;;;;;;;IAEqBA,c,WASnB,iB,UAKA,iB,UAMA,iB,UAWA,iB,UA2BA,iB;;;;;;;;;;;;;sGAtDD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAEC,qBAAKC,GAAL,GAAW,KAAKC,OAAL,CAAa,KAAb,CAAX;;AAFD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;+GAKA;AAAA;AAAA;AAAA;AAAA;AAECC,6BAAOC,QAAP,CAAgB,KAAKH,GAArB;;AAFD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;qJAKA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEOI,gBAAAA,OAFP,GAEiB,KAAKJ,GAAL,CAASK,GAAT,CAAa,qBAAb,CAFjB;;AAGCH,6BAAOI,UAAP,CAAkBF,OAAlB,EAA2B,QAA3B;;AAHD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;iHAMA;AAAA;AAAA;AAAA;AAAA;AAECG,2CAAeC,eAAf,CAA+B,IAAIC,MAAJ,CAAW,QAAX,CAA/B,EAAsD;AACrDC,kBAAAA,IAAI,EAAE;AAD+C,iBAAtD;;AAFD;AAAA,uBAMO,KAAKV,GAAL,CAASW,OAAT,CAAiB,+CAAjB,CANP;;AAAA;AAQC,qBAAKX,GAAL,CAASY,WAAT,CAAqB,wCAArB;;AARD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;2IAWA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAECL,2CAAeC,eAAf,CACC,IAAIC,MAAJ,CAAW,oDAAX,CADD,EAEC;AACCC,kBAAAA,IAAI,EAAE;AADP,iBAFD;;AAFD;AAAA,uBASkC,KAAKV,GAAL,CAASW,OAAT,CAChC,gCADgC,CATlC;;AAAA;AAAA;AASSE,gBAAAA,cATT,yBASSA,cATT;;AAaCX,6BAAOY,OAAP,CAAeD,cAAf,EAA+B,CAA/B;;AAEME,gBAAAA,YAfP,GAesB,KAAKC,WAAL,CACpB,cADoB,EAEpB,aAFoB,EAGpB,oBAHoB,CAftB;;AAqBCd,6BAAOe,MAAP,CACCC,2BAASC,aAAT,CAAuBJ,YAAvB,CADD,mCAE2BA,YAF3B;;AArBD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;mJA2BA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEkC,KAAKf,GAAL,CAASW,OAAT,CAAiB,CACjD,QADiD,EAEjD,4BAFiD,CAAjB,CAFlC;;AAAA;AAAA;AAESE,gBAAAA,cAFT,0BAESA,cAFT;;AAOCX,6BAAOY,OAAP,CAAeD,cAAf,EAA+B,CAA/B;;AAEME,gBAAAA,YATP,GASsB,KAAKC,WAAL,CACpB,cADoB,EAEpB,aAFoB,EAGpB,gBAHoB,CATtB;;AAeCd,6BAAOe,MAAP,CACCC,2BAASC,aAAT,CAAuBJ,YAAvB,CADD,mCAE2BA,YAF3B;;AAfD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EA1D2CK,8B,8DACV,Q","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport CommandService from '../../services/CommandService'\nimport PkgService from '../../services/PkgService'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\n\nexport default class PkgServiceTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'skills'\n\tprivate static pkg: PkgService\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.pkg = this.Service('pkg')\n\t}\n\n\t@test()\n\tprotected static async canCreatePkgService() {\n\t\tassert.isTruthy(this.pkg)\n\t}\n\n\t@test()\n\tprotected static async installANonSpruceLabsModuleMakesItsVersionAnActualVersion() {\n\t\tconst version = this.pkg.get('dependencies.dotenv')\n\t\tassert.isNotEqual(version, 'latest')\n\t}\n\n\t@test()\n\tprotected static async handlesAtLatestInName() {\n\t\tCommandService.setMockResponse(new RegExp(/yarn/gis), {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tawait this.pkg.install('@sprucelabs/heartwood-view-controllers@latest')\n\n\t\tthis.pkg.isInstalled('@sprucelabs/heartwood-view-controllers')\n\t}\n\n\t@test()\n\tprotected static async ifInstallingOnlySpruceModulesShouldNotRunNPMAdd() {\n\t\tCommandService.setMockResponse(\n\t\t\tnew RegExp(/npm.*?install.*?--no-progress/gis),\n\t\t\t{\n\t\t\t\tcode: 1,\n\t\t\t}\n\t\t)\n\n\t\tconst { totalInstalled } = await this.pkg.install(\n\t\t\t'@sprucelabs/jest-json-reporter'\n\t\t)\n\n\t\tassert.isEqual(totalInstalled, 1)\n\n\t\tconst expectedPath = this.resolvePath(\n\t\t\t'node_modules',\n\t\t\t'@sprucelabs',\n\t\t\t'jest-json-reporter'\n\t\t)\n\n\t\tassert.isTrue(\n\t\t\tdiskUtil.doesFileExist(expectedPath),\n\t\t\t`No module installed at ${expectedPath}.`\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async installingSpruceAndOtherModulesDoesntRemoveSpruceModule() {\n\t\tconst { totalInstalled } = await this.pkg.install([\n\t\t\t'moment',\n\t\t\t'@sprucelabs/calendar-utils',\n\t\t])\n\n\t\tassert.isEqual(totalInstalled, 2)\n\n\t\tconst expectedPath = this.resolvePath(\n\t\t\t'node_modules',\n\t\t\t'@sprucelabs',\n\t\t\t'calendar-utils'\n\t\t)\n\n\t\tassert.isTrue(\n\t\t\tdiskUtil.doesFileExist(expectedPath),\n\t\t\t`No module installed at ${expectedPath}.`\n\t\t)\n\t}\n}\n"],"file":"PkgService.test.js"}
|
package/package.json
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
]
|
|
19
19
|
},
|
|
20
20
|
"license": "MIT",
|
|
21
|
-
"version": "14.29.
|
|
21
|
+
"version": "14.29.30",
|
|
22
22
|
"bin": {
|
|
23
23
|
"spruce": "./build/index.js"
|
|
24
24
|
},
|
|
@@ -77,18 +77,18 @@
|
|
|
77
77
|
"@babel/runtime": "^7.16.7",
|
|
78
78
|
"@jest/reporters": "^27.4.6",
|
|
79
79
|
"@sprucelabs/error": "^5.0.370",
|
|
80
|
-
"@sprucelabs/heartwood-view-controllers": "^55.10.
|
|
80
|
+
"@sprucelabs/heartwood-view-controllers": "^55.10.21",
|
|
81
81
|
"@sprucelabs/jest-json-reporter": "^6.0.305",
|
|
82
|
-
"@sprucelabs/mercury-client": "^19.3.
|
|
83
|
-
"@sprucelabs/mercury-event-emitter": "^19.3.
|
|
84
|
-
"@sprucelabs/mercury-types": "^26.2.
|
|
85
|
-
"@sprucelabs/schema": "^25.6.
|
|
86
|
-
"@sprucelabs/spruce-core-schemas": "^22.8.
|
|
87
|
-
"@sprucelabs/spruce-event-plugin": "^22.0.
|
|
88
|
-
"@sprucelabs/spruce-event-utils": "^17.1.
|
|
89
|
-
"@sprucelabs/spruce-skill-booter": "^22.0.
|
|
90
|
-
"@sprucelabs/spruce-skill-utils": "^22.2.
|
|
91
|
-
"@sprucelabs/spruce-templates": "^14.29.
|
|
82
|
+
"@sprucelabs/mercury-client": "^19.3.24",
|
|
83
|
+
"@sprucelabs/mercury-event-emitter": "^19.3.24",
|
|
84
|
+
"@sprucelabs/mercury-types": "^26.2.40",
|
|
85
|
+
"@sprucelabs/schema": "^25.6.41",
|
|
86
|
+
"@sprucelabs/spruce-core-schemas": "^22.8.6",
|
|
87
|
+
"@sprucelabs/spruce-event-plugin": "^22.0.14",
|
|
88
|
+
"@sprucelabs/spruce-event-utils": "^17.1.506",
|
|
89
|
+
"@sprucelabs/spruce-skill-booter": "^22.0.14",
|
|
90
|
+
"@sprucelabs/spruce-skill-utils": "^22.2.166",
|
|
91
|
+
"@sprucelabs/spruce-templates": "^14.29.30",
|
|
92
92
|
"@typescript-eslint/eslint-plugin": "^5.9.1",
|
|
93
93
|
"@typescript-eslint/parser": "^5.9.1",
|
|
94
94
|
"cfonts": "^2.10.0",
|
|
@@ -119,14 +119,14 @@
|
|
|
119
119
|
"uuid": "^8.3.2"
|
|
120
120
|
},
|
|
121
121
|
"devDependencies": {
|
|
122
|
-
"@sprucelabs/data-stores": "^7.2.
|
|
122
|
+
"@sprucelabs/data-stores": "^7.2.170",
|
|
123
123
|
"@sprucelabs/jest-sheets-reporter": "^1.2.302",
|
|
124
|
-
"@sprucelabs/mercury-core-events": "^1.7.
|
|
124
|
+
"@sprucelabs/mercury-core-events": "^1.7.95",
|
|
125
125
|
"@sprucelabs/resolve-path-aliases": "^1.0.251",
|
|
126
|
-
"@sprucelabs/spruce-conversation-plugin": "^22.0.
|
|
127
|
-
"@sprucelabs/spruce-deploy-plugin": "^22.0.
|
|
128
|
-
"@sprucelabs/spruce-store-plugin": "^22.0.
|
|
129
|
-
"@sprucelabs/spruce-test-fixtures": "^22.0.
|
|
126
|
+
"@sprucelabs/spruce-conversation-plugin": "^22.0.14",
|
|
127
|
+
"@sprucelabs/spruce-deploy-plugin": "^22.0.14",
|
|
128
|
+
"@sprucelabs/spruce-store-plugin": "^22.0.14",
|
|
129
|
+
"@sprucelabs/spruce-test-fixtures": "^22.0.14",
|
|
130
130
|
"@sprucelabs/test": "^7.7.271",
|
|
131
131
|
"@sprucelabs/test-utils": "^3.0.372",
|
|
132
132
|
"@types/blessed": "^0.1.19",
|
|
@@ -134,7 +134,7 @@
|
|
|
134
134
|
"@types/fs-extra": "^9.0.13",
|
|
135
135
|
"@types/inflection": "^1.13.0",
|
|
136
136
|
"@types/inquirer": "^8.1.3",
|
|
137
|
-
"@types/jsonwebtoken": "^8.5.
|
|
137
|
+
"@types/jsonwebtoken": "^8.5.7",
|
|
138
138
|
"@types/lodash": "^4.14.178",
|
|
139
139
|
"@types/md5": "^2.3.1",
|
|
140
140
|
"@types/mkdirp": "^1.0.2",
|
|
@@ -597,5 +597,5 @@
|
|
|
597
597
|
"ora"
|
|
598
598
|
]
|
|
599
599
|
},
|
|
600
|
-
"gitHead": "
|
|
600
|
+
"gitHead": "1f63712ade1a9c44ea371d6f7dfc1f89485e19c3"
|
|
601
601
|
}
|
|
@@ -14,7 +14,7 @@ import testUtil from '../../tests/utilities/test.utility'
|
|
|
14
14
|
const LOCAL_NAMESPACE = 'TestingSchemas'
|
|
15
15
|
const REMOTE_NAMESPACE = 'RemoteSchemas'
|
|
16
16
|
|
|
17
|
-
const REMOTE_MODULE = '@sprucelabs/
|
|
17
|
+
const REMOTE_MODULE = '@sprucelabs/calendar-utils'
|
|
18
18
|
const REMOTE_MODULE2 = '@sprucelabs/spruce-templates'
|
|
19
19
|
|
|
20
20
|
export default class SettingUpSchemasForModuleDistributionTest extends AbstractSkillTest {
|
|
@@ -25,7 +25,7 @@ export default class SettingUpSchemasForModuleDistributionTest extends AbstractS
|
|
|
25
25
|
version: 'v2021_09_20',
|
|
26
26
|
namespace: 'TestingSchemas',
|
|
27
27
|
name: 'Schema imported as module',
|
|
28
|
-
moduleToImportFromWhenRemote: '@sprucelabs/
|
|
28
|
+
moduleToImportFromWhenRemote: '@sprucelabs/calendar-utils',
|
|
29
29
|
fields: {
|
|
30
30
|
fieldName1: { label: 'First Field', type: 'text', isRequired: true },
|
|
31
31
|
fieldName2: {
|
|
@@ -497,7 +497,7 @@ export default class SettingUpSchemasForModuleDistributionTest extends AbstractS
|
|
|
497
497
|
|
|
498
498
|
assert.isEqual(
|
|
499
499
|
calendarEventContents.trim(),
|
|
500
|
-
`export { calendarEventSchema as default } from '@sprucelabs/
|
|
500
|
+
`export { calendarEventSchema as default } from '@sprucelabs/calendar-utils'`
|
|
501
501
|
)
|
|
502
502
|
}
|
|
503
503
|
|
|
@@ -66,7 +66,7 @@ export default class PkgServiceTest extends AbstractSkillTest {
|
|
|
66
66
|
protected static async installingSpruceAndOtherModulesDoesntRemoveSpruceModule() {
|
|
67
67
|
const { totalInstalled } = await this.pkg.install([
|
|
68
68
|
'moment',
|
|
69
|
-
'@sprucelabs/
|
|
69
|
+
'@sprucelabs/calendar-utils',
|
|
70
70
|
])
|
|
71
71
|
|
|
72
72
|
assert.isEqual(totalInstalled, 2)
|
|
@@ -74,7 +74,7 @@ export default class PkgServiceTest extends AbstractSkillTest {
|
|
|
74
74
|
const expectedPath = this.resolvePath(
|
|
75
75
|
'node_modules',
|
|
76
76
|
'@sprucelabs',
|
|
77
|
-
'
|
|
77
|
+
'calendar-utils'
|
|
78
78
|
)
|
|
79
79
|
|
|
80
80
|
assert.isTrue(
|