Skip to content
Snippets Groups Projects
Select Git revision
  • 3265cbbb51b3f25b928e7373209c35e02af69912
  • main default protected
  • renovate/main-ghcr.io-renovatebot-base-image-10.x
  • renovate/main-ghcr.io-containerbase-devcontainer-13.x
  • next
  • revert-31645-feat/rename-gradle-wrapper-validation-action
  • renovate/main-redis-5.x
  • fix/36615b-branch-reuse-no-cache
  • chore/punycode
  • fix/36615-branch-reuse-bug
  • refactor/pin-new-value
  • feat/36219--git-x509-signing
  • feat/structured-logger
  • hotfix/39.264.1
  • feat/skip-dangling
  • gh-readonly-queue/next/pr-36034-7a061c4ca1024a19e2c295d773d9642625d1c2be
  • hotfix/39.238.3
  • refactor/gitlab-auto-approve
  • feat/template-strings
  • gh-readonly-queue/next/pr-35654-137d934242c784e0c45d4b957362214f0eade1d7
  • fix/32307-global-extends-merging
  • 41.30.4
  • 41.30.3
  • 41.30.2
  • 41.30.1
  • 41.30.0
  • 41.29.1
  • 41.29.0
  • 41.28.2
  • 41.28.1
  • 41.28.0
  • 41.27.1
  • 41.27.0
  • 41.26.2
  • 41.26.1
  • 41.26.0
  • 41.25.1
  • 41.25.0
  • 41.24.0
  • 41.23.5
  • 41.23.4
41 results

pretty-stdout.spec.js

Blame
  • user avatar
    Rhys Arkins authored
    This removes the need to JSON.stringify() objects in logs. Default bunyan fields plus our custom meta fields are stripped out, and everything else is stringified in the details field.
    
    Closes #498
    8e48d973
    History
    pretty-stdout.spec.js 1.69 KiB
    const prettyStdout = require('../../lib/logger/pretty-stdout');
    const chalk = require('chalk');
    
    describe('logger/pretty-stdout', () => {
      describe('getMeta(rec)', () => {
        it('returns empty string if null rec', () => {
          expect(prettyStdout.getMeta(null)).toEqual('');
        });
        it('returns empty string if empty rec', () => {
          expect(prettyStdout.getMeta({})).toEqual('');
        });
        it('returns empty string if no meta fields', () => {
          const rec = {
            foo: 'bar',
          };
          expect(prettyStdout.getMeta(rec)).toEqual('');
        });
        it('supports single meta', () => {
          const rec = {
            foo: 'bar',
            repository: 'a/b',
          };
          expect(prettyStdout.getMeta(rec)).toEqual(
            chalk.gray(' (repository=a/b)')
          );
        });
        it('supports multi meta', () => {
          const rec = {
            foo: 'bar',
            branch: 'c',
            repository: 'a/b',
          };
          expect(prettyStdout.getMeta(rec)).toEqual(
            chalk.gray(' (repository=a/b, branch=c)')
          );
        });
      });
      describe('getDetails(rec)', () => {
        it('returns empty string if null rec', () => {
          expect(prettyStdout.getDetails(null)).toEqual('');
        });
        it('returns empty string if empty rec', () => {
          expect(prettyStdout.getDetails({})).toEqual('');
        });
        it('returns empty string if all are meta fields', () => {
          const rec = {
            branch: 'bar',
            v: 0,
          };
          expect(prettyStdout.getDetails(rec)).toEqual('');
        });
        it('supports a config', () => {
          const rec = {
            v: 0,
            config: {
              a: 'b',
              d: ['e', 'f'],
            },
          };
          expect(prettyStdout.getDetails(rec)).toMatchSnapshot();
        });
      });
    });