2 * Copyright (c) 2012, Intel Corporation.
4 * This program is licensed under the terms and conditions of the
5 * Apache License, version 2.0. The full text of the Apache License is at
6 * http://www.apache.org/licenses/LICENSE-2.0
10 /* --------------------------- utility code ------------------------------- */
14 init : function(log_id) {
15 this.logElement = document.getElementById(log_id);
18 scrollToBottom : function() {
19 this.logElement.scrollTop = this.logElement.scrollHeight;
23 this.logElement.innerHTML = "";
26 pass : function(msg) {
27 this.logElement.innerHTML += "<div class='PassClass'>PASS: " + msg + "</div>";
30 fail : function(msg) {
31 this.logElement.innerHTML += "<div class='FailClass'>FAIL: " + msg + "</div>";
32 this.scrollToBottom();
36 this.logElement.innerHTML += "<div class='LogClass'> " + msg + "</div>";
40 /* ----------------------------- test code --------------------------------- */
42 function getTypes(event)
44 var types = window.vehicle.getSupportedEventTypes(event, false,
47 if(data && data.length > 1)
49 PRINT.pass(event+" is a set of "+data.length+" events:");
55 else if(data && data.length > 0)
57 PRINT.pass(event+" is a single event:");
65 PRINT.fail(event+" unexcepted empty data field");
69 PRINT.fail(((event === "")?"all events":event)+":<br>"+msg);
74 function getValue(event)
76 var types = window.vehicle.get(event,
79 if(data && data.length > 0)
81 PRINT.pass(event+" values received");
84 PRINT.log(data[i].name+": "+data[i].value);
89 PRINT.fail("no values retrieved for "+event);
93 PRINT.fail(((event === "")?"all events":event)+":<br>"+msg);
98 function setValue(event)
100 var types = window.vehicle.set(event, 23,
103 if(data && data.property && data.value)
105 PRINT.pass(data.property+" value changes to "+data.value);
109 PRINT.fail("bad response for set "+event);
113 PRINT.fail(((event === "")?"all events":event)+":<br>"+msg);
120 if(window.vehicle && window.vehicle.getSupportedEventTypes)
122 PRINT.pass("vehicle interface online "+msg);
126 PRINT.fail("vehicle interface not found");
130 var vehicleEventType = new VehicleEventType();
131 var tester = document.getElementById("tester");
132 var part1 = '<div class="proptest">';
133 var part2 = '<div class="buttons"><div class="testbutton types" onclick=getTypes("';
134 var part3 = '")></div><div class="testbutton get" onclick=getValue("'
135 var part4 = '")></div><div class="testbutton set" onclick=setValue("'
136 var part5 = '")></div></div></div>';
137 var events = vehicleEventType.event;
138 var html = part1 + "all events" + part2 + part3 + part4 + part5;
141 html += part1 + events[i] + part2 + events[i] +
142 part3 + events[i] + part4 + events[i] +
145 tester.innerHTML = html;
153 function init(url, protocol) {
154 PRINT.init("result");
155 window.vehicle = new Vehicle(start, error, url, protocol);