这是indexloc提供的服务,不要输入任何密码
Skip to content

Conversation

@jamonholmgren
Copy link
Member

@jamonholmgren jamonholmgren commented Feb 26, 2018

Upgrades to latest Gluegun beta.

Switches:

import { print } from 'gluegun'
// to
import { print } from 'gluegun/toolbox'

(And similar require statements elsewhere in the code base)

Tests now pass, although that took a bit of messing around.

I also had to redefine all the extension types, since strictNullChecks was failing due to optional properties. Since they're all included, I made them required. Per infinitered/gluegun#367.

@avaGitHubBot
Copy link

avaGitHubBot commented Feb 26, 2018

Warnings
⚠️

Changes were made to package.json, but not to package-lock.json - Perhaps you need to run npm install?

Generated by 🚫 dangerJS

@TravisBuddy
Copy link
Contributor

Travis tests have failed

Hey Jamon Holmgren,
Please read the following log in order to understand the failure reason.
It'll be awesome if you fix what's wrong and commit the changes.

Node.js: node

npm run test:ci
> solidarity@1.1.1 test:ci /home/travis/build/infinitered/solidarity
> jest --ci --runInBand && yarn test:extras

FAIL __tests__/commands/snapshot.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/checkRequirement.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkRequirement.ts'

      21 | jest.mock('../../src/extensions/functions/checkFile')
      22 | const checkFile = require('../../src/extensions/functions/checkFile')
    > 23 | 
      24 | const context = require('gluegun/toolbox')
      25 | 
      26 | const badRule = toPairs({
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkRequirement.ts:23:100)

FAIL __tests__/command_helpers/updateRequirement.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/reviewRule.ts
  ● reviewRule › when rule: cli › rule gets added

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:27)

  ● reviewRule › when rule: cli › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:18:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:15:29)

  ● reviewRule › when rule: env › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: env › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:28:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:25:29)

  ● reviewRule › when rule: dir › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: dir › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:38:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:35:29)

  ● reviewRule › when rule: file › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: file › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:48:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:45:29)

  ● reviewRule › when rule: shell › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: shell › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:58:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:55:29)

  ● reviewRule › when rule: custom › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: custom › rule gets added

    TypeError: Cannot read property 'cliRules' of undefined

      67 |       const rule = ['CUSTOM', [{ rule: 'custom', plugin: 'Example Plugin', name: 'checkThing' }]]
      68 | 
    > 69 |       expect(reportResults.cliRules.length).toBe(1)
      70 |       const result = await reviewRule(rule, reportResults, mockContext)
      71 |       // CUSTOM rule (which adds CLI report) was added
      72 |       expect(reportResults.cliRules.length).toBe(2)
      
      at __tests__/command_helpers/reviewRule.ts:69:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:66:29)

  ● reviewRule › when rule: custom › does nothing when no report exists

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: custom › does nothing when no report exists

    TypeError: Cannot read property 'cliRules' of undefined

      76 |       const rule = ['CUSTOM', [{ rule: 'custom', plugin: 'Example Plugin', name: 'checkSecondThing' }]]
      77 | 
    > 78 |       expect(reportResults.cliRules.length).toBe(1)
      79 |       const result = await reviewRule(rule, reportResults, mockContext)
      80 |       // should not change rules
      81 |       expect(reportResults.cliRules.length).toBe(1)
      
      at __tests__/command_helpers/reviewRule.ts:78:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:75:48)

  ● reviewRule › when rule: custom › Errors when plugin doesn not exist

    expect(value).toMatchSnapshot()
    
    Received value does not match stored snapshot 1.
    
    - [Error: Plugin not found 'FAKE']
    + [TypeError: Cannot destructure property `print` of 'undefined' or 'null'.]

      90 |         fail('Unknown rule should have errored')
      91 |       } catch (e) {
    > 92 |         expect(e).toMatchSnapshot()
      93 |       }
      94 |     })
      95 |   })
      
      at __tests__/command_helpers/reviewRule.ts:92:19
          at Generator.throw (<anonymous>)
      at rejected (__tests__/command_helpers/reviewRule.ts:3:1)

  ● reviewRule › when rule: unknown › rule gets added

    expect(value).toMatchSnapshot()
    
    Received value does not match stored snapshot 1.
    
    - [Error: Encountered unknown rule]
    + [TypeError: Cannot destructure property `print` of 'undefined' or 'null'.]

      104 |         fail('Unknown rule should have errored')
      105 |       } catch (e) {
    > 106 |         expect(e).toMatchSnapshot()
      107 |       }
      108 |     })
      109 |   })
      
      at __tests__/command_helpers/reviewRule.ts:106:19
          at Generator.throw (<anonymous>)
      at rejected (__tests__/command_helpers/reviewRule.ts:3:1)

 › 2 snapshot tests failed.
FAIL __tests__/command_helpers/appendSolidaritySettings.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/checkShell.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkShell.ts'

       7 |  *
       8 |  * @param stdout The stdout to mock return
    >  9 |  * @param status The exit code to mock return (default: 0)
      10 |  */
      11 | const createContext = (stdout: string, status: number = 0) => ({
      12 |   system: {
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkShell.ts:9:16)

PASS __tests__/commands/solidarity.ts
FAIL __tests__/command_helpers/checkRequirementPlugins.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/getSolidaritySettings.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'getSolidaritySettings.ts'

       8 |     test('getSolidaritySettings exists', () => expect(getSolidaritySettings).toMatchSnapshot())
       9 | 
    > 10 |     test('getSolidaritySettings succeeds', async () => {
      11 |       const resultSettings = getSolidaritySettings(context)
      12 |       // we got an object with requirements defined
      13 |       expect(resultSettings).toMatchObject({ requirements: {} })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/getSolidaritySettings.ts:10:17)

FAIL __tests__/command_helpers/getVersion.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'getVersion.ts'

       9 | describe('getVersion', () => {
      10 |   beforeAll(() => {
    > 11 |     // These can be slow on CI
      12 |     originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL
      13 |     jasmine.DEFAULT_TIMEOUT_INTERVAL = 60000
      14 |   })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/getVersion.ts:11:17)

FAIL __tests__/command_helpers/checkCLIForUpdates.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkCLIForUpdates.ts'

       8 |   version: '--version',
       9 | }
    > 10 | 
      11 | const ruleNoSemver = {
      12 |   rule: 'cli',
      13 |   binary: 'yarn',
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkCLIForUpdates.ts:10:16)

FAIL __tests__/command_helpers/printResults.ts
  ● reviewRule › printResults uses table

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:27)

  ● reviewRule › printResults uses table

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      1 | import { SolidarityRunContext, SolidarityReportResults } from '../../types'
      2 | module.exports = (results: SolidarityReportResults, context: SolidarityRunContext): void => {
    > 3 |   const { print, printSeparator } = context
      4 |   const { info } = print
      5 |   const printSpacedTable = (table, header) => {
      6 |     info(`### ${header}\n`)
      
      at Object.<anonymous>.module.exports (src/extensions/functions/printResults.ts:3:37)
      at Object.test (__tests__/command_helpers/printResults.ts:16:5)

  ● reviewRule › prints custom tables

    Cannot find module 'mockContext' from 'printResults.ts'

       9 |   beforeEach(() => {
      10 |     // fresh mock context
    > 11 |     mockContext = require('mockContext')
      12 |     reportResults = createReport(mockContext)
      13 |   })
      14 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/printResults.ts:11:19)

  ● reviewRule › prints custom tables

    TypeError: Cannot read property 'customRules' of undefined

      29 |       table: [['Title'], ['NEW ORLEANS']],
      30 |     }
    > 31 |     reportResults.customRules.push(justHeaderTable)
      32 |     reportResults.customRules.push(customTable)
      33 |     printResults(reportResults, mockContext)
      34 |     expect(flatten(mockContext.print.table.mock.calls)).not.toContain('PARIS')
      
      at Object.test (__tests__/command_helpers/printResults.ts:31:19)

PASS __tests__/command_helpers/removeNonVersionCharacters.ts
FAIL __tests__/command_helpers/updateVersions.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/commands/create.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/findPluginInfo.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

PASS __tests__/command_helpers/getLineWithVersion.ts
PASS __tests__/command_helpers/skipRule.ts
FAIL __tests__/extensions/extensionCheck.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

PASS __tests__/index.ts
PASS __tests__/commands/help.ts
FAIL __tests__/command_helpers/checkCLI.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkCLI.ts'

      19 | test('error on missing binary', async () => {
      20 |   expect(await checkCLI(doesNotExistCLI, context)).toBe(`Binary '${doesNotExistCLI.binary}' not found`)
    > 21 | })
      22 | 
      23 | test('fine on existing binary', async () => {
      24 |   expect(await checkCLI(alwaysExistCLI, context)).toBe(undefined)
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkCLI.ts:21:17)

PASS __tests__/command_helpers/checkENV.ts
FAIL __tests__/command_helpers/checkDir.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkDir.ts'

      1 | import checkDir from '../../src/extensions/functions/checkDir'
    > 2 | import * as context from 'gluegun/toolbox'
      3 | 
      4 | test('checkDir detects an existing dir', () => {
      5 |   // Check for a known directory
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkDir.ts:2:16)

FAIL __tests__/command_helpers/checkFile.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkFile.ts'

      1 | import checkFile from '../../src/extensions/functions/checkFile'
    > 2 | import * as context from 'gluegun/toolbox'
      3 | 
      4 | test('checkFile detects an existing file', () => {
      5 |   // known file
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkFile.ts:2:16)

PASS __tests__/command_helpers/setSolidaritySettings.ts
FAIL __tests__/command_helpers/solidarityReport.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

PASS __tests__/integration/solidarity-check/check-invalid.ts
FAIL __tests__/commands/report.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/createPlugin.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

PASS __tests__/docs/testDocs.ts
FAIL __tests__/command_helpers/binaryExists.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'binaryExists.ts'

       8 |   expect(await binaryExists(doesNotExistCLI, context)).toBe(false)
       9 | })
    > 10 | 
      11 | test('true on existing binary', async () => {
      12 |   expect(await binaryExists(alwaysExistCLI, context)).toBe(true)
      13 | })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/binaryExists.ts:10:16)

PASS __tests__/schema/validateExampleSchema.ts

Summary of all failing tests
FAIL __tests__/commands/snapshot.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/checkRequirement.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkRequirement.ts'

      21 | jest.mock('../../src/extensions/functions/checkFile')
      22 | const checkFile = require('../../src/extensions/functions/checkFile')
    > 23 | 
      24 | const context = require('gluegun/toolbox')
      25 | 
      26 | const badRule = toPairs({
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkRequirement.ts:23:100)

FAIL __tests__/command_helpers/updateRequirement.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/reviewRule.ts
  ● reviewRule › when rule: cli › rule gets added

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:27)

  ● reviewRule › when rule: cli › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:18:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:15:29)

  ● reviewRule › when rule: env › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: env › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:28:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:25:29)

  ● reviewRule › when rule: dir › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: dir › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:38:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:35:29)

  ● reviewRule › when rule: file › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: file › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:48:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:45:29)

  ● reviewRule › when rule: shell › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: shell › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:58:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:55:29)

  ● reviewRule › when rule: custom › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: custom › rule gets added

    TypeError: Cannot read property 'cliRules' of undefined

      67 |       const rule = ['CUSTOM', [{ rule: 'custom', plugin: 'Example Plugin', name: 'checkThing' }]]
      68 | 
    > 69 |       expect(reportResults.cliRules.length).toBe(1)
      70 |       const result = await reviewRule(rule, reportResults, mockContext)
      71 |       // CUSTOM rule (which adds CLI report) was added
      72 |       expect(reportResults.cliRules.length).toBe(2)
      
      at __tests__/command_helpers/reviewRule.ts:69:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:66:29)

  ● reviewRule › when rule: custom › does nothing when no report exists

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: custom › does nothing when no report exists

    TypeError: Cannot read property 'cliRules' of undefined

      76 |       const rule = ['CUSTOM', [{ rule: 'custom', plugin: 'Example Plugin', name: 'checkSecondThing' }]]
      77 | 
    > 78 |       expect(reportResults.cliRules.length).toBe(1)
      79 |       const result = await reviewRule(rule, reportResults, mockContext)
      80 |       // should not change rules
      81 |       expect(reportResults.cliRules.length).toBe(1)
      
      at __tests__/command_helpers/reviewRule.ts:78:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:75:48)

  ● reviewRule › when rule: custom › Errors when plugin doesn not exist

    expect(value).toMatchSnapshot()
    
    Received value does not match stored snapshot 1.
    
    - [Error: Plugin not found 'FAKE']
    + [TypeError: Cannot destructure property `print` of 'undefined' or 'null'.]

      90 |         fail('Unknown rule should have errored')
      91 |       } catch (e) {
    > 92 |         expect(e).toMatchSnapshot()
      93 |       }
      94 |     })
      95 |   })
      
      at __tests__/command_helpers/reviewRule.ts:92:19
          at Generator.throw (<anonymous>)
      at rejected (__tests__/command_helpers/reviewRule.ts:3:1)

  ● reviewRule › when rule: unknown › rule gets added

    expect(value).toMatchSnapshot()
    
    Received value does not match stored snapshot 1.
    
    - [Error: Encountered unknown rule]
    + [TypeError: Cannot destructure property `print` of 'undefined' or 'null'.]

      104 |         fail('Unknown rule should have errored')
      105 |       } catch (e) {
    > 106 |         expect(e).toMatchSnapshot()
      107 |       }
      108 |     })
      109 |   })
      
      at __tests__/command_helpers/reviewRule.ts:106:19
          at Generator.throw (<anonymous>)
      at rejected (__tests__/command_helpers/reviewRule.ts:3:1)

FAIL __tests__/command_helpers/appendSolidaritySettings.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/checkShell.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkShell.ts'

       7 |  *
       8 |  * @param stdout The stdout to mock return
    >  9 |  * @param status The exit code to mock return (default: 0)
      10 |  */
      11 | const createContext = (stdout: string, status: number = 0) => ({
      12 |   system: {
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkShell.ts:9:16)

FAIL __tests__/command_helpers/checkRequirementPlugins.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/getSolidaritySettings.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'getSolidaritySettings.ts'

       8 |     test('getSolidaritySettings exists', () => expect(getSolidaritySettings).toMatchSnapshot())
       9 | 
    > 10 |     test('getSolidaritySettings succeeds', async () => {
      11 |       const resultSettings = getSolidaritySettings(context)
      12 |       // we got an object with requirements defined
      13 |       expect(resultSettings).toMatchObject({ requirements: {} })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/getSolidaritySettings.ts:10:17)

FAIL __tests__/command_helpers/getVersion.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'getVersion.ts'

       9 | describe('getVersion', () => {
      10 |   beforeAll(() => {
    > 11 |     // These can be slow on CI
      12 |     originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL
      13 |     jasmine.DEFAULT_TIMEOUT_INTERVAL = 60000
      14 |   })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/getVersion.ts:11:17)

FAIL __tests__/command_helpers/checkCLIForUpdates.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkCLIForUpdates.ts'

       8 |   version: '--version',
       9 | }
    > 10 | 
      11 | const ruleNoSemver = {
      12 |   rule: 'cli',
      13 |   binary: 'yarn',
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkCLIForUpdates.ts:10:16)

FAIL __tests__/command_helpers/printResults.ts
  ● reviewRule › printResults uses table

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:27)

  ● reviewRule › printResults uses table

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      1 | import { SolidarityRunContext, SolidarityReportResults } from '../../types'
      2 | module.exports = (results: SolidarityReportResults, context: SolidarityRunContext): void => {
    > 3 |   const { print, printSeparator } = context
      4 |   const { info } = print
      5 |   const printSpacedTable = (table, header) => {
      6 |     info(`### ${header}\n`)
      
      at Object.<anonymous>.module.exports (src/extensions/functions/printResults.ts:3:37)
      at Object.test (__tests__/command_helpers/printResults.ts:16:5)

  ● reviewRule › prints custom tables

    Cannot find module 'mockContext' from 'printResults.ts'

       9 |   beforeEach(() => {
      10 |     // fresh mock context
    > 11 |     mockContext = require('mockContext')
      12 |     reportResults = createReport(mockContext)
      13 |   })
      14 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/printResults.ts:11:19)

  ● reviewRule › prints custom tables

    TypeError: Cannot read property 'customRules' of undefined

      29 |       table: [['Title'], ['NEW ORLEANS']],
      30 |     }
    > 31 |     reportResults.customRules.push(justHeaderTable)
      32 |     reportResults.customRules.push(customTable)
      33 |     printResults(reportResults, mockContext)
      34 |     expect(flatten(mockContext.print.table.mock.calls)).not.toContain('PARIS')
      
      at Object.test (__tests__/command_helpers/printResults.ts:31:19)

FAIL __tests__/command_helpers/updateVersions.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:1elpers/checkCLI.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkCLI.ts'

      19 | test('error on missing binary', async () => {
      20 |   expect(await checkCLI(doesNotExistCLI, context)).toBe(`Binary '${doesNotExistCLI.binary}' not found`)
    > 21 | })
      22 | 
      23 | test('fine on existing binary', async () => {
      24 |   expect(await checkCLI(alwaysExistCLI, context)).toBe(undefined)
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkCLI.ts:21:17)

FAIL __tests__/command_helpers/checkDir.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkDir.ts'

      1 | import checkDir from '../../src/extensions/functions/checkDir'
    > 2 | import * as context from 'gluegun/toolbox'
      3 | 
      4 | test('checkDir detects an existing dir', () => {
      5 |   // Check for a known directory
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkDir.ts:2:16)

FAIL __tests__/command_helpers/checkFile.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkFile.ts'

      1 | import checkFile from '../../src/extensions/functions/checkFile'
    > 2 | import * as context from 'gluegun/toolbox'
      3 | 
      4 | test('checkFile detects an existing file', () => {
      5 |   // known file
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkFile.ts:2:16)

FAIL __tests__/command_helpers/solidarityReport.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/commands/report.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/createPlugin.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/binaryExists.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'binaryExists.ts'

       8 |   expect(await binaryExists(doesNotExistCLI, context)).toBe(false)
       9 | })
    > 10 | 
      11 | test('true on existing binary', async () => {
      12 |   expect(await binaryExists(alwaysExistCLI, context)).toBe(true)
      13 | })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/binaryExists.ts:10:16)


Snapshot Summary
 › 2 snapshot tests failed in 1 test suite. Inspect your code changes or run `npm run test:ci -- -u` to update them.

Test Suites: 22 failed, 11 passed, 33 total
Tests:       11 failed, 31 passed, 42 total
Snapshots:   2 failed, 7 passed, 9 total
Time:        8.874s
Ran all test suites.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! solidarity@1.1.1 test:ci: `jest --ci --runInBand && yarn test:extras`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the solidarity@1.1.1 test:ci script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/travis/.npm/_logs/2018-02-26T04_49_39_095Z-debug.log

yarn danger ci
yarn run v1.3.2
$ /home/travis/build/infinitered/solidarity/node_modules/.bin/danger ci
You may have updated from Danger 2.x -> 3.x without updating from `danger` to `danger ci`.
Found only warnings, not failing the build.
Done in 2.62s.

Node.js: 8

npm run test:ci
> solidarity@1.1.1 test:ci /home/travis/build/infinitered/solidarity
> jest --ci --runInBand && yarn test:extras

FAIL __tests__/commands/snapshot.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/checkRequirement.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkRequirement.ts'

      21 | jest.mock('../../src/extensions/functions/checkFile')
      22 | const checkFile = require('../../src/extensions/functions/checkFile')
    > 23 | 
      24 | const context = require('gluegun/toolbox')
      25 | 
      26 | const badRule = toPairs({
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkRequirement.ts:23:100)

FAIL __tests__/command_helpers/updateRequirement.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/reviewRule.ts
  ● reviewRule › when rule: cli › rule gets added

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:27)

  ● reviewRule › when rule: cli › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:18:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:15:29)

  ● reviewRule › when rule: env › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: env › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:28:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:25:29)

  ● reviewRule › when rule: dir › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: dir › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:38:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:35:29)

  ● reviewRule › when rule: file › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: file › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:48:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:45:29)

  ● reviewRule › when rule: shell › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: shell › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:58:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:55:29)

  ● reviewRule › when rule: custom › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: custom › rule gets added

    TypeError: Cannot read property 'cliRules' of undefined

      67 |       const rule = ['CUSTOM', [{ rule: 'custom', plugin: 'Example Plugin', name: 'checkThing' }]]
      68 | 
    > 69 |       expect(reportResults.cliRules.length).toBe(1)
      70 |       const result = await reviewRule(rule, reportResults, mockContext)
      71 |       // CUSTOM rule (which adds CLI report) was added
      72 |       expect(reportResults.cliRules.length).toBe(2)
      
      at __tests__/command_helpers/reviewRule.ts:69:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:66:29)

  ● reviewRule › when rule: custom › does nothing when no report exists

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: custom › does nothing when no report exists

    TypeError: Cannot read property 'cliRules' of undefined

      76 |       const rule = ['CUSTOM', [{ rule: 'custom', plugin: 'Example Plugin', name: 'checkSecondThing' }]]
      77 | 
    > 78 |       expect(reportResults.cliRules.length).toBe(1)
      79 |       const result = await reviewRule(rule, reportResults, mockContext)
      80 |       // should not change rules
      81 |       expect(reportResults.cliRules.length).toBe(1)
      
      at __tests__/command_helpers/reviewRule.ts:78:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:75:48)

  ● reviewRule › when rule: custom › Errors when plugin doesn not exist

    expect(value).toMatchSnapshot()
    
    Received value does not match stored snapshot 1.
    
    - [Error: Plugin not found 'FAKE']
    + [TypeError: Cannot destructure property `print` of 'undefined' or 'null'.]

      90 |         fail('Unknown rule should have errored')
      91 |       } catch (e) {
    > 92 |         expect(e).toMatchSnapshot()
      93 |       }
      94 |     })
      95 |   })
      
      at __tests__/command_helpers/reviewRule.ts:92:19
          at Generator.throw (<anonymous>)
      at rejected (__tests__/command_helpers/reviewRule.ts:3:1)

  ● reviewRule › when rule: unknown › rule gets added

    expect(value).toMatchSnapshot()
    
    Received value does not match stored snapshot 1.
    
    - [Error: Encountered unknown rule]
    + [TypeError: Cannot destructure property `print` of 'undefined' or 'null'.]

      104 |         fail('Unknown rule should have errored')
      105 |       } catch (e) {
    > 106 |         expect(e).toMatchSnapshot()
      107 |       }
      108 |     })
      109 |   })
      
      at __tests__/command_helpers/reviewRule.ts:106:19
          at Generator.throw (<anonymous>)
      at rejected (__tests__/command_helpers/reviewRule.ts:3:1)

 › 2 snapshot tests failed.
FAIL __tests__/command_helpers/appendSolidaritySettings.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/checkShell.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkShell.ts'

       7 |  *
       8 |  * @param stdout The stdout to mock return
    >  9 |  * @param status The exit code to mock return (default: 0)
      10 |  */
      11 | const createContext = (stdout: string, status: number = 0) => ({
      12 |   system: {
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkShell.ts:9:16)

PASS __tests__/commands/solidarity.ts
FAIL __tests__/command_helpers/checkRequirementPlugins.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/getSolidaritySettings.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'getSolidaritySettings.ts'

       8 |     test('getSolidaritySettings exists', () => expect(getSolidaritySettings).toMatchSnapshot())
       9 | 
    > 10 |     test('getSolidaritySettings succeeds', async () => {
      11 |       const resultSettings = getSolidaritySettings(context)
      12 |       // we got an object with requirements defined
      13 |       expect(resultSettings).toMatchObject({ requirements: {} })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/getSolidaritySettings.ts:10:17)

FAIL __tests__/command_helpers/getVersion.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'getVersion.ts'

       9 | describe('getVersion', () => {
      10 |   beforeAll(() => {
    > 11 |     // These can be slow on CI
      12 |     originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL
      13 |     jasmine.DEFAULT_TIMEOUT_INTERVAL = 60000
      14 |   })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/getVersion.ts:11:17)

FAIL __tests__/command_helpers/checkCLIForUpdates.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkCLIForUpdates.ts'

       8 |   version: '--version',
       9 | }
    > 10 | 
      11 | const ruleNoSemver = {
      12 |   rule: 'cli',
      13 |   binary: 'yarn',
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkCLIForUpdates.ts:10:16)

FAIL __tests__/command_helpers/printResults.ts
  ● reviewRule › printResults uses table

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:27)

  ● reviewRule › printResults uses table

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      1 | import { SolidarityRunContext, SolidarityReportResults } from '../../types'
      2 | module.exports = (results: SolidarityReportResults, context: SolidarityRunContext): void => {
    > 3 |   const { print, printSeparator } = context
      4 |   const { info } = print
      5 |   const printSpacedTable = (table, header) => {
      6 |     info(`### ${header}\n`)
      
      at Object.<anonymous>.module.exports (src/extensions/functions/printResults.ts:3:37)
      at Object.test (__tests__/command_helpers/printResults.ts:16:5)

  ● reviewRule › prints custom tables

    Cannot find module 'mockContext' from 'printResults.ts'

       9 |   beforeEach(() => {
      10 |     // fresh mock context
    > 11 |     mockContext = require('mockContext')
      12 |     reportResults = createReport(mockContext)
      13 |   })
      14 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/printResults.ts:11:19)

  ● reviewRule › prints custom tables

    TypeError: Cannot read property 'customRules' of undefined

      29 |       table: [['Title'], ['NEW ORLEANS']],
      30 |     }
    > 31 |     reportResults.customRules.push(justHeaderTable)
      32 |     reportResults.customRules.push(customTable)
      33 |     printResults(reportResults, mockContext)
      34 |     expect(flatten(mockContext.print.table.mock.calls)).not.toContain('PARIS')
      
      at Object.test (__tests__/command_helpers/printResults.ts:31:19)

PASS __tests__/command_helpers/removeNonVersionCharacters.ts
FAIL __tests__/command_helpers/updateVersions.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/commands/create.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/findPluginInfo.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

PASS __tests__/command_helpers/getLineWithVersion.ts
PASS __tests__/command_helpers/skipRule.ts
FAIL __tests__/extensions/extensionCheck.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

PASS __tests__/index.ts
PASS __tests__/commands/help.ts
FAIL __tests__/command_helpers/checkCLI.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkCLI.ts'

      19 | test('error on missing binary', async () => {
      20 |   expect(await checkCLI(doesNotExistCLI, context)).toBe(`Binary '${doesNotExistCLI.binary}' not found`)
    > 21 | })
      22 | 
      23 | test('fine on existing binary', async () => {
      24 |   expect(await checkCLI(alwaysExistCLI, context)).toBe(undefined)
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkCLI.ts:21:17)

PASS __tests__/command_helpers/checkENV.ts
FAIL __tests__/command_helpers/checkDir.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkDir.ts'

      1 | import checkDir from '../../src/extensions/functions/checkDir'
    > 2 | import * as context from 'gluegun/toolbox'
      3 | 
      4 | test('checkDir detects an existing dir', () => {
      5 |   // Check for a known directory
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkDir.ts:2:16)

FAIL __tests__/command_helpers/checkFile.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkFile.ts'

      1 | import checkFile from '../../src/extensions/functions/checkFile'
    > 2 | import * as context from 'gluegun/toolbox'
      3 | 
      4 | test('checkFile detects an existing file', () => {
      5 |   // known file
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkFile.ts:2:16)

PASS __tests__/command_helpers/setSolidaritySettings.ts
FAIL __tests__/command_helpers/solidarityReport.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

PASS __tests__/integration/solidarity-check/check-invalid.ts
FAIL __tests__/commands/report.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/createPlugin.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

PASS __tests__/docs/testDocs.ts
FAIL __tests__/command_helpers/binaryExists.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'binaryExists.ts'

       8 |   expect(await binaryExists(doesNotExistCLI, context)).toBe(false)
       9 | })
    > 10 | 
      11 | test('true on existing binary', async () => {
      12 |   expect(await binaryExists(alwaysExistCLI, context)).toBe(true)
      13 | })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/binaryExists.ts:10:16)

PASS __tests__/schema/validateExampleSchema.ts

Summary of all failing tests
FAIL __tests__/commands/snapshot.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/checkRequirement.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkRequirement.ts'

      21 | jest.mock('../../src/extensions/functions/checkFile')
      22 | const checkFile = require('../../src/extensions/functions/checkFile')
    > 23 | 
      24 | const context = require('gluegun/toolbox')
      25 | 
      26 | const badRule = toPairs({
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkRequirement.ts:23:100)

FAIL __tests__/command_helpers/updateRequirement.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/reviewRule.ts
  ● reviewRule › when rule: cli › rule gets added

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:27)

  ● reviewRule › when rule: cli › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:18:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:15:29)

  ● reviewRule › when rule: env › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: env › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:28:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:25:29)

  ● reviewRule › when rule: dir › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: dir › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:38:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:35:29)

  ● reviewRule › when rule: file › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: file › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:48:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:45:29)

  ● reviewRule › when rule: shell › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: shell › rule gets added

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      18 |   context: SolidarityRunContext
      19 | ) => {
    > 20 |   const { print, solidarity } = context
      21 |   const { colors, checkmark, xmark } = print
      22 |   const prettyBool = (bl: boolean) => (bl ? checkmark + colors.green(' YES') : xmark + colors.red(' NO'))
      23 |   // @ts-ignore - flatten will never get a string bc tail is called first
      
      at src/extensions/functions/reviewRule.ts:20:33
      at src/extensions/functions/reviewRule.ts:8:1
      at Object.<anonymous>.__awaiter (src/extensions/functions/reviewRule.ts:8:1)
      at Object.<anonymous>.module.exports (src/extensions/functions/reviewRule.ts:18:3)
      at __tests__/command_helpers/reviewRule.ts:58:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:55:29)

  ● reviewRule › when rule: custom › rule gets added

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: custom › rule gets added

    TypeError: Cannot read property 'cliRules' of undefined

      67 |       const rule = ['CUSTOM', [{ rule: 'custom', plugin: 'Example Plugin', name: 'checkThing' }]]
      68 | 
    > 69 |       expect(reportResults.cliRules.length).toBe(1)
      70 |       const result = await reviewRule(rule, reportResults, mockContext)
      71 |       // CUSTOM rule (which adds CLI report) was added
      72 |       expect(reportResults.cliRules.length).toBe(2)
      
      at __tests__/command_helpers/reviewRule.ts:69:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:66:29)

  ● reviewRule › when rule: custom › does nothing when no report exists

    Cannot find module 'mockContext' from 'reviewRule.ts'

       8 |   beforeEach(() => {
       9 |     // fresh mock context
    > 10 |     mockContext = examplePlugin(require('mockContext'))
      11 |     reportResults = createReport(mockContext)
      12 |   })
      13 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/reviewRule.ts:10:33)

  ● reviewRule › when rule: custom › does nothing when no report exists

    TypeError: Cannot read property 'cliRules' of undefined

      76 |       const rule = ['CUSTOM', [{ rule: 'custom', plugin: 'Example Plugin', name: 'checkSecondThing' }]]
      77 | 
    > 78 |       expect(reportResults.cliRules.length).toBe(1)
      79 |       const result = await reviewRule(rule, reportResults, mockContext)
      80 |       // should not change rules
      81 |       expect(reportResults.cliRules.length).toBe(1)
      
      at __tests__/command_helpers/reviewRule.ts:78:28
      at __tests__/command_helpers/reviewRule.ts:3:1
      at Object.<anonymous>.__awaiter (__tests__/command_helpers/reviewRule.ts:3:1)
      at Object.test (__tests__/command_helpers/reviewRule.ts:75:48)

  ● reviewRule › when rule: custom › Errors when plugin doesn not exist

    expect(value).toMatchSnapshot()
    
    Received value does not match stored snapshot 1.
    
    - [Error: Plugin not found 'FAKE']
    + [TypeError: Cannot destructure property `print` of 'undefined' or 'null'.]

      90 |         fail('Unknown rule should have errored')
      91 |       } catch (e) {
    > 92 |         expect(e).toMatchSnapshot()
      93 |       }
      94 |     })
      95 |   })
      
      at __tests__/command_helpers/reviewRule.ts:92:19
          at Generator.throw (<anonymous>)
      at rejected (__tests__/command_helpers/reviewRule.ts:3:1)

  ● reviewRule › when rule: unknown › rule gets added

    expect(value).toMatchSnapshot()
    
    Received value does not match stored snapshot 1.
    
    - [Error: Encountered unknown rule]
    + [TypeError: Cannot destructure property `print` of 'undefined' or 'null'.]

      104 |         fail('Unknown rule should have errored')
      105 |       } catch (e) {
    > 106 |         expect(e).toMatchSnapshot()
      107 |       }
      108 |     })
      109 |   })
      
      at __tests__/command_helpers/reviewRule.ts:106:19
          at Generator.throw (<anonymous>)
      at rejected (__tests__/command_helpers/reviewRule.ts:3:1)

FAIL __tests__/command_helpers/appendSolidaritySettings.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/checkShell.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkShell.ts'

       7 |  *
       8 |  * @param stdout The stdout to mock return
    >  9 |  * @param status The exit code to mock return (default: 0)
      10 |  */
      11 | const createContext = (stdout: string, status: number = 0) => ({
      12 |   system: {
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkShell.ts:9:16)

FAIL __tests__/command_helpers/checkRequirementPlugins.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/getSolidaritySettings.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'getSolidaritySettings.ts'

       8 |     test('getSolidaritySettings exists', () => expect(getSolidaritySettings).toMatchSnapshot())
       9 | 
    > 10 |     test('getSolidaritySettings succeeds', async () => {
      11 |       const resultSettings = getSolidaritySettings(context)
      12 |       // we got an object with requirements defined
      13 |       expect(resultSettings).toMatchObject({ requirements: {} })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/getSolidaritySettings.ts:10:17)

FAIL __tests__/command_helpers/getVersion.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'getVersion.ts'

       9 | describe('getVersion', () => {
      10 |   beforeAll(() => {
    > 11 |     // These can be slow on CI
      12 |     originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL
      13 |     jasmine.DEFAULT_TIMEOUT_INTERVAL = 60000
      14 |   })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/getVersion.ts:11:17)

FAIL __tests__/command_helpers/checkCLIForUpdates.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkCLIForUpdates.ts'

       8 |   version: '--version',
       9 | }
    > 10 | 
      11 | const ruleNoSemver = {
      12 |   rule: 'cli',
      13 |   binary: 'yarn',
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkCLIForUpdates.ts:10:16)

FAIL __tests__/command_helpers/printResults.ts
  ● reviewRule › printResults uses table

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:27)

  ● reviewRule › printResults uses table

    TypeError: Cannot destructure property `print` of 'undefined' or 'null'.

      1 | import { SolidarityRunContext, SolidarityReportResults } from '../../types'
      2 | module.exports = (results: SolidarityReportResults, context: SolidarityRunContext): void => {
    > 3 |   const { print, printSeparator } = context
      4 |   const { info } = print
      5 |   const printSpacedTable = (table, header) => {
      6 |     info(`### ${header}\n`)
      
      at Object.<anonymous>.module.exports (src/extensions/functions/printResults.ts:3:37)
      at Object.test (__tests__/command_helpers/printResults.ts:16:5)

  ● reviewRule › prints custom tables

    Cannot find module 'mockContext' from 'printResults.ts'

       9 |   beforeEach(() => {
      10 |     // fresh mock context
    > 11 |     mockContext = require('mockContext')
      12 |     reportResults = createReport(mockContext)
      13 |   })
      14 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.beforeEach (__tests__/command_helpers/printResults.ts:11:19)

  ● reviewRule › prints custom tables

    TypeError: Cannot read property 'customRules' of undefined

      29 |       table: [['Title'], ['NEW ORLEANS']],
      30 |     }
    > 31 |     reportResults.customRules.push(justHeaderTable)
      32 |     reportResults.customRules.push(customTable)
      33 |     printResults(reportResults, mockContext)
      34 |     expect(flatten(mockContext.print.table.mock.calls)).not.toContain('PARIS')
      
      at Object.test (__tests__/command_helpers/printResults.ts:31:19)

FAIL __tests__/command_helpers/updateVersions.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/commands/create.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/findPluginInfo.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/extensions/extensionCheck.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/checkCLI.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkCLI.ts'

      19 | test('error on missing binary', async () => {
      20 |   expect(await checkCLI(doesNotExistCLI, context)).toBe(`Binary '${doesNotExistCLI.binary}' not found`)
    > 21 | })
      22 | 
      23 | test('fine on existing binary', async () => {
      24 |   expect(await checkCLI(alwaysExistCLI, context)).toBe(undefined)
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkCLI.ts:21:17)

FAIL __tests__/command_helpers/checkDir.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkDir.ts'

      1 | import checkDir from '../../src/extensions/functions/checkDir'
    > 2 | import * as context from 'gluegun/toolbox'
      3 | 
      4 | test('checkDir detects an existing dir', () => {
      5 |   // Check for a known directory
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkDir.ts:2:16)

FAIL __tests__/command_helpers/checkFile.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'checkFile.ts'

      1 | import checkFile from '../../src/extensions/functions/checkFile'
    > 2 | import * as context from 'gluegun/toolbox'
      3 | 
      4 | test('checkFile detects an existing file', () => {
      5 |   // known file
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/checkFile.ts:2:16)

FAIL __tests__/command_helpers/solidarityReport.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/commands/report.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/createPlugin.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'mockContext.ts'

    > 1 | const realThing = require('gluegun/toolbox')
      2 | const realSolidarityContext = require('../../src/extensions/solidarity-extension')
      3 | realSolidarityContext(realThing)
      4 | 
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/__mocks__/mockContext.ts:1:6264)

FAIL __tests__/command_helpers/binaryExists.ts
  ● Test suite failed to run

    Cannot find module 'gluegun/toolbox' from 'binaryExists.ts'

       8 |   expect(await binaryExists(doesNotExistCLI, context)).toBe(false)
       9 | })
    > 10 | 
      11 | test('true on existing binary', async () => {
      12 |   expect(await binaryExists(alwaysExistCLI, context)).toBe(true)
      13 | })
      
      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
      at Object.<anonymous> (__tests__/command_helpers/binaryExists.ts:10:16)


Snapshot Summary
 › 2 snapshot tests failed in 1 test suite. Inspect your code changes or run `npm run test:ci -- -u` to update them.

Test Suites: 22 failed, 11 passed, 33 total
Tests:       11 failed, 31 passed, 42 total
Snapshots:   2 failed, 7 passed, 9 total
Time:        9.064s
Ran all test suites.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! solidarity@1.1.1 test:ci: `jest --ci --runInBand && yarn test:extras`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the solidarity@1.1.1 test:ci script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/travis/.npm/_logs/2018-02-26T04_49_38_558Z-debug.log

yarn danger ci
yarn run v1.3.2
$ /home/travis/build/infinitered/solidarity/node_modules/.bin/danger ci
You may have updated from Danger 2.x -> 3.x without updating from `danger` to `danger ci`.
Found only warnings, not failing the build.
Done in 3.09s.

@jamonholmgren
Copy link
Member Author

Yikes! The bots attacked.

@codecov
Copy link

codecov bot commented Feb 26, 2018

Codecov Report

Merging #177 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #177   +/-   ##
=======================================
  Coverage   82.87%   82.87%           
=======================================
  Files          32       32           
  Lines         613      613           
  Branches      103      103           
=======================================
  Hits          508      508           
  Misses         69       69           
  Partials       36       36
Impacted Files Coverage Δ
src/extensions/functions/createPlugin.ts 65.21% <ø> (ø) ⬆️
src/types.ts 100% <ø> (ø) ⬆️
src/commands/snapshot.ts 53.33% <ø> (ø) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 63d996f...aff771c. Read the comment docs.

@jamonholmgren
Copy link
Member Author

That's better.

Copy link
Member

@GantMan GantMan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dude, thanks so much for doing this!

Looks great!

@GantMan GantMan merged commit e0c7652 into master Feb 26, 2018
@GantMan GantMan deleted the upgrade/gluegun-2.0.0-beta.6 branch February 26, 2018 22:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants