234 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			234 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!doctype html>
 | ||
| <html lang="en">
 | ||
| <head>
 | ||
|     <title>Code coverage report for dist/smartenv.environment.js</title>
 | ||
|     <meta charset="utf-8" />
 | ||
|     <link rel="stylesheet" href="../prettify.css" />
 | ||
|     <link rel="stylesheet" href="../base.css" />
 | ||
|     <meta name="viewport" content="width=device-width, initial-scale=1">
 | ||
|     <style type='text/css'>
 | ||
|         .coverage-summary .sorter {
 | ||
|             background-image: url(../sort-arrow-sprite.png);
 | ||
|         }
 | ||
|     </style>
 | ||
| </head>
 | ||
| <body>
 | ||
| <div class='wrapper'>
 | ||
|   <div class='pad1'>
 | ||
|     <h1>
 | ||
|       <a href="../index.html">all files</a> / <a href="index.html">dist/</a> smartenv.environment.js
 | ||
|     </h1>
 | ||
|     <div class='clearfix'>
 | ||
|       <div class='fl pad1y space-right2'>
 | ||
|         <span class="strong">86.67% </span>
 | ||
|         <span class="quiet">Statements</span>
 | ||
|         <span class='fraction'>26/30</span>
 | ||
|       </div>
 | ||
|       <div class='fl pad1y space-right2'>
 | ||
|         <span class="strong">62.5% </span>
 | ||
|         <span class="quiet">Branches</span>
 | ||
|         <span class='fraction'>5/8</span>
 | ||
|       </div>
 | ||
|       <div class='fl pad1y space-right2'>
 | ||
|         <span class="strong">100% </span>
 | ||
|         <span class="quiet">Functions</span>
 | ||
|         <span class='fraction'>4/4</span>
 | ||
|       </div>
 | ||
|       <div class='fl pad1y space-right2'>
 | ||
|         <span class="strong">86.67% </span>
 | ||
|         <span class="quiet">Lines</span>
 | ||
|         <span class='fraction'>26/30</span>
 | ||
|       </div>
 | ||
|     </div>
 | ||
|   </div>
 | ||
|   <div class='status-line high'></div>
 | ||
| <pre><table class="coverage">
 | ||
| <tr><td class="line-count quiet">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
 | ||
| 36
 | ||
| 37
 | ||
| 38
 | ||
| 39
 | ||
| 40
 | ||
| 41
 | ||
| 42
 | ||
| 43
 | ||
| 44
 | ||
| 45
 | ||
| 46
 | ||
| 47
 | ||
| 48
 | ||
| 49
 | ||
| 50
 | ||
| 51
 | ||
| 52
 | ||
| 53
 | ||
| 54
 | ||
| 55
 | ||
| 56
 | ||
| 57</td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">4×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-no"> </span>
 | ||
| <span class="cline-any cline-no"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-yes">4×</span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">2×</span>
 | ||
| <span class="cline-any cline-yes">2×</span>
 | ||
| <span class="cline-any cline-yes">2×</span>
 | ||
| <span class="cline-any cline-yes">2×</span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-no"> </span>
 | ||
| <span class="cline-any cline-no"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-yes">2×</span>
 | ||
| <span class="cline-any cline-yes">2×</span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-yes">1×</span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span>
 | ||
| <span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">#!/usr/bin/env node
 | ||
|  
 | ||
| /// <reference path="typings/main.d.ts" />
 | ||
| /**
 | ||
|  * Deals with the environment the current JS script is running in.
 | ||
|  */
 | ||
| var plugins = require("./smartenv.plugins");
 | ||
| var SmartenvClasses = require("./smartenv.classes");
 | ||
| var SmartenvObjectStorage = require("./smartenv.objectstorage");
 | ||
| var environment;
 | ||
| var envDetermined = false;
 | ||
| /**
 | ||
|  * returns the environment
 | ||
|  * @returns {Environment}
 | ||
|  */
 | ||
| var getEnv = function () {
 | ||
|     if (!envDetermined) {
 | ||
|         (function () {
 | ||
|             var localRunTimeEnv = "undefined";
 | ||
|             var localUserAgent = "undefined";
 | ||
|             <span class="missing-if-branch" title="if path not taken" >I</span>if (typeof window !== "undefined") {
 | ||
| <span class="cstat-no" title="statement not covered" >                localRunTimeEnv = 'browser';</span>
 | ||
| <span class="cstat-no" title="statement not covered" >                localUserAgent = navigator.userAgent;</span>
 | ||
|             }
 | ||
|             else <span class="missing-if-branch" title="else path not taken" >E</span>if (typeof process !== "undefined") {
 | ||
|                 localRunTimeEnv = 'node';
 | ||
|             }
 | ||
|             environment = new SmartenvClasses.Environment(localRunTimeEnv, localUserAgent);
 | ||
|         })();
 | ||
|         envDetermined = true; // ensure code above only runs once
 | ||
|     }
 | ||
|     ;
 | ||
|     return environment;
 | ||
| };
 | ||
| /**
 | ||
|  * prints the environment to console
 | ||
|  */
 | ||
| var printEnv = function () {
 | ||
|     <span class="missing-if-branch" title="else path not taken" >E</span>if (this.getEnv().isNode) {
 | ||
|         plugins.beautylog.ok("running on NODE");
 | ||
|         var smartenvVersion = require("../package.json").version;
 | ||
|         plugins.beautylog.log("node version is " + this.getEnv().nodeVersion + " and smartenv version is " + smartenvVersion);
 | ||
|     }
 | ||
|     else {
 | ||
| <span class="cstat-no" title="statement not covered" >        plugins.beautylog.ok("running on BROWSER");</span>
 | ||
| <span class="cstat-no" title="statement not covered" >        plugins.beautylog.log("browser is " + this.getEnv().userAgent);</span>
 | ||
|     }
 | ||
|     plugins.beautylog.log("the smartenv registration store currently holds the following properties:");
 | ||
|     console.log(Object.getOwnPropertyNames(SmartenvObjectStorage.obs.getAll()));
 | ||
| };
 | ||
| exports.init = function (objectArg) {
 | ||
|     objectArg.getEnv = getEnv;
 | ||
|     objectArg.printEnv = printEnv;
 | ||
| };
 | ||
|  
 | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0ZW52LmVudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDBDQUEwQztBQUMxQzs7R0FFRztBQUNILElBQU8sT0FBTyxXQUFXLG9CQUFvQixDQUFDLENBQUM7QUFDL0MsSUFBTyxlQUFlLFdBQVcsb0JBQW9CLENBQUMsQ0FBQztBQUN2RCxJQUFPLHFCQUFxQixXQUFXLDBCQUEwQixDQUFDLENBQUM7QUFHbkUsSUFBSSxXQUF1QyxDQUFDO0FBQzVDLElBQUksYUFBYSxHQUFXLEtBQUssQ0FBQztBQUVsQzs7O0dBR0c7QUFDSCxJQUFJLE1BQU0sR0FBRztJQUNULEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUNqQixDQUFDO1lBQ0csSUFBSSxlQUFlLEdBQUcsV0FBVyxDQUFDO1lBQ2xDLElBQUksY0FBYyxHQUFHLFdBQVcsQ0FBQztZQUNqQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxlQUFlLEdBQUcsU0FBUyxDQUFDO2dCQUM1QixjQUFjLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQztZQUN6QyxDQUFDO1lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sT0FBTyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hDLGVBQWUsR0FBRyxNQUFNLENBQUM7WUFDN0IsQ0FBQztZQUNELFdBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2xGLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDTCxhQUFhLEdBQUcsSUFBSSxDQUFDLENBQUMsbUNBQW1DO0lBQzdELENBQUM7SUFBQSxDQUFDO0lBQ0YsTUFBTSxDQUFDLFdBQVcsQ0FBQztBQUN2QixDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILElBQUssUUFBUSxHQUFHO0lBQ1osRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDdkIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN4QyxJQUFJLGVBQWUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDekQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFdBQVcsR0FBRywyQkFBMkIsR0FBRyxlQUFlLENBQUMsQ0FBQztJQUMxSCxDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzNDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUNELE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLDJFQUEyRSxDQUFDLENBQUM7SUFDbkcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNoRixDQUFDLENBQUM7QUFFUyxZQUFJLEdBQUcsVUFBUyxTQUFTO0lBQ2hDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQzFCLFNBQVMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0FBQ2xDLENBQUMsQ0FBQyIsImZpbGUiOiJzbWFydGVudi5lbnZpcm9ubWVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHBhdGg9XCJ0eXBpbmdzL21haW4uZC50c1wiIC8+XG4vKipcbiAqIERlYWxzIHdpdGggdGhlIGVudmlyb25tZW50IHRoZSBjdXJyZW50IEpTIHNjcmlwdCBpcyBydW5uaW5nIGluLlxuICovXG5pbXBvcnQgcGx1Z2lucyA9IHJlcXVpcmUoXCIuL3NtYXJ0ZW52LnBsdWdpbnNcIik7XG5pbXBvcnQgU21hcnRlbnZDbGFzc2VzID0gcmVxdWlyZShcIi4vc21hcnRlbnYuY2xhc3Nlc1wiKTtcbmltcG9ydCBTbWFydGVudk9iamVjdFN0b3JhZ2UgPSByZXF1aXJlKFwiLi9zbWFydGVudi5vYmplY3RzdG9yYWdlXCIpO1xuXG5cbnZhciBlbnZpcm9ubWVudDpTbWFydGVudkNsYXNzZXMuRW52aXJvbm1lbnQ7XG52YXIgZW52RGV0ZXJtaW5lZDpib29sZWFuID0gZmFsc2U7XG5cbi8qKlxuICogcmV0dXJucyB0aGUgZW52aXJvbm1lbnRcbiAqIEByZXR1cm5zIHtFbnZpcm9ubWVudH1cbiAqL1xudmFyIGdldEVudiA9IGZ1bmN0aW9uKCl7XG4gICAgaWYgKCFlbnZEZXRlcm1pbmVkKSB7XG4gICAgICAgIChmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHZhciBsb2NhbFJ1blRpbWVFbnYgPSBcInVuZGVmaW5lZFwiO1xuICAgICAgICAgICAgdmFyIGxvY2FsVXNlckFnZW50ID0gXCJ1bmRlZmluZWRcIjtcbiAgICAgICAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICAgICAgICAgICAgbG9jYWxSdW5UaW1lRW52ID0gJ2Jyb3dzZXInO1xuICAgICAgICAgICAgICAgIGxvY2FsVXNlckFnZW50ID0gbmF2aWdhdG9yLnVzZXJBZ2VudDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHByb2Nlc3MgIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgICAgICAgICAgICBsb2NhbFJ1blRpbWVFbnYgPSAnbm9kZSc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbnZpcm9ubWVudCA9IG5ldyBTbWFydGVudkNsYXNzZXMuRW52aXJvbm1lbnQobG9jYWxSdW5UaW1lRW52LGxvY2FsVXNlckFnZW50KTtcbiAgICAgICAgfSkoKTtcbiAgICAgICAgZW52RGV0ZXJtaW5lZCA9IHRydWU7IC8vIGVuc3VyZSBjb2RlIGFib3ZlIG9ubHkgcnVucyBvbmNlXG4gICAgfTtcbiAgICByZXR1cm4gZW52aXJvbm1lbnQ7XG59O1xuXG4vKipcbiAqIHByaW50cyB0aGUgZW52aXJvbm1lbnQgdG8gY29uc29sZVxuICovXG52YXIgIHByaW50RW52ID0gZnVuY3Rpb24oKSB7XG4gICAgaWYgKHRoaXMuZ2V0RW52KCkuaXNOb2RlKSB7XG4gICAgICAgIHBsdWdpbnMuYmVhdXR5bG9nLm9rKFwicnVubmluZyBvbiBOT0RFXCIpO1xuICAgICAgICB2YXIgc21hcnRlbnZWZXJzaW9uID0gcmVxdWlyZShcIi4uL3BhY2thZ2UuanNvblwiKS52ZXJzaW9uO1xuICAgICAgICBwbHVnaW5zLmJlYXV0eWxvZy5sb2coXCJub2RlIHZlcnNpb24gaXMgXCIgKyB0aGlzLmdldEVudigpLm5vZGVWZXJzaW9uICsgXCIgYW5kIHNtYXJ0ZW52IHZlcnNpb24gaXMgXCIgKyBzbWFydGVudlZlcnNpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHBsdWdpbnMuYmVhdXR5bG9nLm9rKFwicnVubmluZyBvbiBCUk9XU0VSXCIpO1xuICAgICAgICBwbHVnaW5zLmJlYXV0eWxvZy5sb2coXCJicm93c2VyIGlzIFwiICsgdGhpcy5nZXRFbnYoKS51c2VyQWdlbnQpO1xuICAgIH1cbiAgICBwbHVnaW5zLmJlYXV0eWxvZy5sb2coXCJ0aGUgc21hcnRlbnYgcmVnaXN0cmF0aW9uIHN0b3JlIGN1cnJlbnRseSBob2xkcyB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6XCIpO1xuICAgIGNvbnNvbGUubG9nKE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKFNtYXJ0ZW52T2JqZWN0U3RvcmFnZS5vYnMuZ2V0QWxsKCkpKTtcbn07XG5cbmV4cG9ydCB2YXIgaW5pdCA9IGZ1bmN0aW9uKG9iamVjdEFyZykge1xuICAgIG9iamVjdEFyZy5nZXRFbnYgPSBnZXRFbnY7XG4gICAgb2JqZWN0QXJnLnByaW50RW52ID0gcHJpbnRFbnY7XG59OyJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ==
 | ||
|  </pre></td></tr>
 | ||
| </table></pre>
 | ||
| <div class='push'></div><!-- for sticky footer -->
 | ||
| </div><!-- /wrapper -->
 | ||
| <div class='footer quiet pad2 space-top1 center small'>
 | ||
|   Code coverage
 | ||
|   generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Wed Feb 17 2016 21:43:50 GMT+0100 (CET)
 | ||
| </div>
 | ||
| </div>
 | ||
| <script src="../prettify.js"></script>
 | ||
| <script>
 | ||
| window.onload = function () {
 | ||
|         if (typeof prettyPrint === 'function') {
 | ||
|             prettyPrint();
 | ||
|         }
 | ||
| };
 | ||
| </script>
 | ||
| <script src="../sorter.js"></script>
 | ||
| </body>
 | ||
| </html>
 |