UNPKG

@theopenweb/js-sensor

Version:

JavaScript sensor library for native input sensors.

157 lines (129 loc) 6.34 kB
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <base data-ice="baseUrl" href="../../"> <title data-ice="title">test/sensor-handler.test.js | js-sensor</title> <link type="text/css" rel="stylesheet" href="css/style.css"> <link type="text/css" rel="stylesheet" href="css/prettify-tomorrow.css"> <script src="script/prettify/prettify.js"></script> <script src="script/manual.js"></script> <meta name="description" content="JavaScript sensor library for native input sensors."><meta property="twitter:card" content="summary"><meta property="twitter:title" content="js-sensor"><meta property="twitter:description" content="JavaScript sensor library for native input sensors."></head> <body class="layout-container" data-ice="rootContainer"> <header> <a href="./">Home</a> <a href="identifiers.html">Reference</a> <a href="source.html">Source</a> <a href="test.html" data-ice="testLink">Test</a> <div class="search-box"> <span> <img src="./image/search.png"> <span class="search-input-edge"></span><input class="search-input"><span class="search-input-edge"></span> </span> <ul class="search-result"></ul> </div> </header> <nav class="navigation" data-ice="nav"><div> <ul> <li data-ice="doc"><span data-ice="kind" class="kind-class">C</span><span data-ice="name"><span><a href="class/class/browser-sensor-watcher.js~BrowserSensorWatcher.html">BrowserSensorWatcher</a></span></span></li> <li data-ice="doc"><span data-ice="kind" class="kind-class">C</span><span data-ice="name"><span><a href="class/class/js-sensor.js~JsSensor.html">JsSensor</a></span></span></li> <li data-ice="doc"><span data-ice="kind" class="kind-class">C</span><span data-ice="name"><span><a href="class/class/sensor-handler.js~SensorHandler.html">SensorHandler</a></span></span></li> <li data-ice="doc"><span data-ice="kind" class="kind-variable">V</span><span data-ice="name"><span><a href="variable/index.html#static-variable-SensorHandler">SensorHandler</a></span></span></li> <li data-ice="doc"><span data-ice="kind" class="kind-variable">V</span><span data-ice="name"><span><a href="variable/index.html#static-variable-BrowserSensorWatcher">BrowserSensorWatcher</a></span></span></li> </ul> </div> </nav> <div class="content" data-ice="content"><h1 data-ice="title">test/sensor-handler.test.js</h1> <pre class="source-code line-number raw-source-code"><code class="prettyprint linenums" data-ice="content">const SensorHandler = require(&apos;../class/sensor-handler&apos;); const sensorHandler = new SensorHandler(); console.log(sensorHandler); /** * Tests require fully capable device + manual movement to complete. */ describe(&apos;SensorHandler&apos;, function(){ beforeEach(()=&gt;{ return sensorHandler.stopAll(); }); this.timeout(5000);//Devices may take a while. it(&apos;getMappedSensorNames&apos;, ()=&gt;{ let names = sensorHandler.getMappedSensorNames(); chai.expect(names).to.be.an(&apos;array&apos;); }); it(&apos;get&apos;, ()=&gt;{ return sensorHandler.get(&apos;test&apos;) .then((data)=&gt;{ chai.expect(data).to.equal(&apos;test data&apos;); return Promise.resolve(); }); }); it(&apos;watch&apos;, ()=&gt;{ return sensorHandler.watch(&apos;test&apos;) .then((sensorState)=&gt;{ chai.expect(sensorState).to.be.an(&apos;object&apos;); chai.expect(sensorState.isSensorState).to.equal(true); return Promise.resolve(); }); }); it(&apos;watchAll&apos;, ()=&gt;{ return sensorHandler.watchAll() .then((promises)=&gt;{ chai.expect(promises).to.be.an(&apos;array&apos;); return Promise.resolve(); }); }); it(&apos;stop&apos;, ()=&gt;{ return sensorHandler.watch(&apos;test&apos;) .then(()=&gt;{return sensorHandler.stop(&apos;test&apos;);}) .then(()=&gt;{ return Promise.resolve(); }); }); it(&apos;stopAll&apos;, ()=&gt;{ return sensorHandler.stopAll() .then((promises)=&gt;{ chai.expect(promises).to.be.an(&apos;array&apos;); return Promise.resolve(); }); }); it(&apos;addSensorEvent&apos;, ()=&gt;{ return sensorHandler.watch(&apos;test&apos;) .then(()=&gt;{ let handle = function(){}; sensorHandler.addSensorEvent(&apos;test&apos;, &apos;data&apos;, handle); chai.expect(sensorHandler.sensors[&apos;test&apos;].events[&apos;data&apos;].indexOf(handle)).to.be.greaterThan(-1); return Promise.resolve(); }) .then(()=&gt;{ return sensorHandler.stop(&apos;test&apos;); }); }); it(&apos;removeSensorEvent&apos;, ()=&gt;{ return sensorHandler.watch(&apos;test&apos;) .then(()=&gt;{ let handle = function(){}; sensorHandler.addSensorEvent(&apos;test&apos;, &apos;data&apos;, handle); chai.expect(sensorHandler.sensors[&apos;test&apos;].events[&apos;data&apos;].indexOf(handle)).to.be.greaterThan(-1); sensorHandler.removeSensorEvent(&apos;test&apos;, &apos;data&apos;, handle); chai.expect(sensorHandler.sensors[&apos;test&apos;].events[&apos;data&apos;].indexOf(handle)).to.equal(-1); }) .then(()=&gt;{ return sensorHandler.stop(&apos;test&apos;); }); }); it(&apos;_SensorState&apos;, ()=&gt;{ chai.expect(sensorHandler._SensorState()).to.be.an(&apos;object&apos;); }); });</code></pre> </div> <footer class="footer"> Generated by <a href="https://esdoc.org">ESDoc<span data-ice="esdocVersion">(1.0.4)</span><img src="./image/esdoc-logo-mini-black.png"></a> </footer> <script src="script/search_index.js"></script> <script src="script/search.js"></script> <script src="script/pretty-print.js"></script> <script src="script/inherited-summary.js"></script> <script src="script/test-summary.js"></script> <script src="script/inner-link.js"></script> <script src="script/patch-for-local.js"></script> </body> </html>