UNPKG

@sprucelabs/spruce-cli

Version:

Command line interface for building Spruce skills.

82 lines 3.67 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const test_utils_1 = require("@sprucelabs/test-utils"); const LintService_1 = __importDefault(require("../../../services/LintService")); const AbstractSkillTest_1 = __importDefault(require("../../../tests/AbstractSkillTest")); const constants_1 = require("../../../tests/constants"); class RegisteringSkillViewOnBootTest extends AbstractSkillTest_1.default { static skillCacheKey = 'views'; static views; static async beforeEach() { await super.beforeEach(); LintService_1.default.enableLinting(); this.views = this.Store('view'); } static async noEventsToStart() { await this.registerAndBootSkill(); let views; try { views = await this.fetchSkillViews(); } catch { } test_utils_1.assert.isFalsy(views); } static async syncsViewsOnBoot() { await this.Action('view', 'create').execute({ viewType: 'skillView', isRoot: true, }); LintService_1.default.enableLinting(); const buildResults = await this.buildSkill(); this.log('build buildResults', JSON.stringify(buildResults)); const results = await this.bootSkill(); test_utils_1.assert.isFalsy(results.errors); const skillViews = await this.fetchSkillViews(); test_utils_1.assert.isTruthy(skillViews, 'Skill views were not registered on boot!'); } static async fetchSkillViews() { return await this.views.fetchSkillViews(); } static async registerAndBootSkill() { await this.registerCurrentSkillAndInstallToOrg(); await this.buildSkill(); const results = await this.bootSkill(); test_utils_1.assert.isFalsy(results.errors); } static async bootSkill() { const boot = await this.Action('skill', 'boot').execute({}); boot.meta?.kill(); return boot; } static async buildSkill() { return await this.Service('build').build(); } static async registerCurrentSkillAndInstallToOrg() { await this.people.loginAsDemoPerson(constants_1.DEMO_NUMBER_VIEWS_ON_BOOT); const skillFixture = this.getSkillFixture(); const orgFixture = this.getOrganizationFixture(); const org = await orgFixture.seedDemoOrg({ name: 'my org' }); const skill = await skillFixture.registerCurrentSkill({ name: 'current skill', }); await orgFixture.installSkillAtOrganization(skill.id, org.id); return { skillFixture, currentSkill: skill, org, orgFixture }; } } exports.default = RegisteringSkillViewOnBootTest; __decorate([ (0, test_utils_1.test)() ], RegisteringSkillViewOnBootTest, "noEventsToStart", null); __decorate([ (0, test_utils_1.test)() ], RegisteringSkillViewOnBootTest, "syncsViewsOnBoot", null); //# sourceMappingURL=RegisteringSkillViewOnBoot.test.js.map