# All files / src/utils utils.ts

100% Statements 11/11
100% Branches 0/0
100% Functions 4/4
100% Lines 10/10

Press n or j to go to the next uncovered block, b, p or k for the previous block.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    361x
    1x

    1x

    1x
    8x

    1x
    4x

    1x
    8x

    1x
     import * as os from 'os';
    import {execSync} from 'child_process';

    /**
     * Class with utilitary methods.
     */
    export class Utils {

        /**
         * Detects current platform.
         *
         * @return {string} Platform: win32, linux, darwin.
         */
        public static detectPlatform(): string {
            return os.platform().toLowerCase();
        }

        /**
         * Get chcp value (only for Win32 platform).
         *
         * @return {string} Platform: win32.
         */
         public static chcp(): string {
            return execSync('chcp').toString().split(':')[1].trim();
        }

        /**
         * Executes a command in SO console.
         *
         * @param {Buffer} command: Command to execute.
         */
        public static execute(command: string): Buffer {
            return execSync(command,{windowsHide: true, encoding: 'buffer'});
        }
    }