All files / simple-oauth2/lib/client client.js

100% Statements 6/6
100% Branches 0/0
100% Functions 2/2
100% Lines 6/6

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    1x         1x 23x                 4x       4x     23x        
'use strict';
 
const coreModule = require('./../core');
 
/**
 * Clients credentials flow implementation
 */
module.exports = (config) => {
  const core = coreModule(config);
 
  /**
   * Returns the Access Token Object
   * @param  {Object} params
   * @param  {String} params.scope A string that represents the application privileges
   * @return {Promise}
   */
  async function getToken(params) {
    const options = Object.assign({}, params, {
      grant_type: 'client_credentials',
    });
 
    return core.request(config.auth.tokenPath, options);
  }
 
  return {
    getToken,
  };
};