All files Evaluator.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   1x               135x       6x                   1x  
'use strict';
 
const Bluebird = require( 'bluebird' );
const fetch = require( 'node-fetch' );
 
fetch.Promise = Bluebird;
 
/**
 * Function evaluator. Wraps API calls to the function-evaluator service, which
 * runs native code implementations.
 */
class Evaluator {
	constructor( evaluatorUri ) {
		this.evaluatorUri_ = evaluatorUri;
	}
 
	async evaluate( functionCall ) {
		return await fetch(
			this.evaluatorUri_, {
				method: 'POST',
				body: JSON.stringify( functionCall ),
				headers: { 'Content-Type': 'application/json' }
			}
		);
	}
}
 
module.exports = { Evaluator };