Skip to content
Snippets Groups Projects
Select Git revision
  • 2977b4091f6afa4f50ad19e2fd2575b4e55e9f68
  • master default protected
  • 1
  • 1.2
  • 1.2.2
  • 1.2.1
  • 1.2.0
  • 1.1
  • 1.1.0
  • 1.0
  • 1.0.2
  • 1.0.1
12 results

post-release.sh

Blame
  • onboarding.spec.js 13.45 KiB
    const apis = require('../../../lib/workers/repository/apis');
    const onboarding = require('../../../lib/workers/repository/onboarding');
    const logger = require('../../_fixtures/logger');
    const defaultConfig = require('../../../lib/config/defaults').getConfig();
    
    describe('lib/workers/repository/onboarding', () => {
      describe('isRepoPrivate(config)', () => {
        let config;
        beforeEach(() => {
          config = {
            api: {
              getFileJson: jest.fn(),
            },
            packageFiles: [
              'package.json',
              {
                packageFile: 'a/package.json',
              },
            ],
          };
        });
        it('returns true if all are private', async () => {
          config.api.getFileJson.mockReturnValueOnce({ private: true });
          config.api.getFileJson.mockReturnValueOnce({ private: true });
          expect(await onboarding.isRepoPrivate(config)).toBe(true);
        });
        it('returns false if some are not private', async () => {
          config.api.getFileJson.mockReturnValueOnce({ private: true });
          config.api.getFileJson.mockReturnValueOnce({});
          expect(await onboarding.isRepoPrivate(config)).toBe(false);
        });
      });
      describe('ensurePr(config, branchUpgrades)', () => {
        let config;
        let branchUpgrades;
        beforeEach(() => {
          config = {
            branchPrefix: 'renovate/',
            errors: [],
            warnings: [],
            api: {
              createPr: jest.fn(() => ({ displayNumber: 1 })),
              getBranchPr: jest.fn(),
              updatePr: jest.fn(),
            },
            logger,
          };
          branchUpgrades = [];
        });
        it('creates pr', async () => {
          config.contentBaseBranch = 'next';
          await onboarding.ensurePr(config, branchUpgrades);
          expect(config.api.createPr.mock.calls.length).toBe(1);
          expect(config.api.updatePr.mock.calls.length).toBe(0);
          expect(config.api.createPr.mock.calls).toMatchSnapshot();
        });
        it('creates pr with preset descriptions', async () => {
          config.description = ['Description 1', 'Description 2'];
          await onboarding.ensurePr(config, branchUpgrades);
          expect(config.api.createPr.mock.calls.length).toBe(1);
          expect(config.api.updatePr.mock.calls.length).toBe(0);
          expect(
            config.api.createPr.mock.calls[0][2].indexOf('## Configuration Summary')
          ).not.toBe(-1);
          expect(config.api.createPr.mock.calls[0]).toMatchSnapshot();
        });
        it('creates pr with dynamic descriptions', async () => {
          config.labels = ['renovate', 'upgrades'];
          config.assignees = ['rarkins'];
          config.schedule = ['before 5am'];