kidnap-console
    TypeScript icon, indicating that this package has built-in type declarations

    0.0.2 • Public • Published

    kidnap-console

    • Makes console log output testing a breeze.

    • Capture log output by wrapping functions that do console calls.

    • Stores both of the following from each wrapped function:

        1. All values that get passed to console.log, console.warn, console.dir, or console.error;
        1. Return value of the function.
    • Prevents log from displaying on the console

    Purpose

    • Unit testing of console output
      • (None of the existing solutions to this were really working for me)

    Installation

    yarn add --dev kidnap-console
    

    Or:

    npm install --save-dev kidnap-console
    

    Usage

    Example 1:

    // You can also import kidnapLogs or kidnapConsole. They are aliases.
    import { blockLogOutput } from 'kidnap-console';
    
    const capturedLogs = blockLogOutput(() => console.log('try to log this'));
    // [[no output to console occurs]]
    
    console.log(capturedLogs.stores.log);
    // => ['try to log this']
    

    Example 2:

    function logThings() {
        console.dir('hello dir');
        console.log('hello log');
        console.warn('hello warn');
        console.error('hello error');
        return 'my return value';
    }
    
    const capturedLogs = blockLogOutput(logThings); 
    // [[no output to console occurs]]
    
    //
    // Captures the return value of the function
    //
    console.log(capturedLogs.result);
    // => 'my return value'
    
    console.log(capturedLogs.stores.log);
    // => ['hello log']
    
    console.log(capturedLogs.stores.dir);
    // => ['hello dir']
    
    console.log(capturedLogs.stores.warn);
    // => ['hello warn']
    
    console.log(capturedLogs.stores.error);
    // => ['hello error']
    

    Install

    npm i kidnap-console

    DownloadsWeekly Downloads

    4

    Version

    0.0.2

    License

    MIT

    Last publish

    Collaborators

    • andfaulkner