Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / third_party / trace-viewer / trace_viewer / about_tracing / inspector_tracing_controller_client_test.html
1 <!DOCTYPE html>
2 <!--
3 Copyright (c) 2013 The Chromium Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style license that can be
5 found in the LICENSE file.
6 -->
7
8 <link rel="import" href="/about_tracing/inspector_tracing_controller_client.html">
9
10 <script>
11 'use strict';
12
13 tv.unittest.testSuite(function() { // @suppress longLineCheck
14   test('beginRecording_sendCategoriesAndOptions', function() {
15     var controller = new about_tracing.InspectorTracingControllerClient();
16     controller.conn_ = new (function() {
17       this.req = function(method, params) {
18         var msg = JSON.stringify({
19           id: 1,
20           method: method,
21           params: params
22         });
23         return new (function() {
24           this.msg = msg;
25           this.then = function(m1, m2) {
26             return this;
27           };
28         })();
29       };
30       this.setNotificationListener = function(method, listener) {
31       };
32     })();
33
34     var recordingOptions = {
35       categoryFilter: JSON.stringify(['a', 'b', 'c']),
36       useSystemTracing: false,
37       useContinuousTracing: true,
38       useSampling: true
39     };
40
41     var result = JSON.parse(controller.beginRecording(recordingOptions).msg);
42     assertEquals(result.params.categories, JSON.stringify(['a', 'b', 'c']));
43     var options = result.params.options.split(',');
44     var contFlag = false;
45     var sampleFlag = false;
46     for (var s in options) {
47       if (options[s] === 'record-continuously') contFlag = true;
48       else if (options[s] === 'enable-sampling') sampleFlag = true;
49       else assertEquals(options[s], '');
50     }
51     assertTrue(contFlag);
52     assertTrue(sampleFlag);
53   });
54
55   test('oldFormat', function() {
56     var chunks = [];
57     about_tracing.appendTraceChunksTo(chunks, '"{ "method": "Tracing.dataCollected", "params": { "value": [ {"cat":"__metadata","pid":28871,"tid":0,"ts":0,"ph":"M","name":"num_cpus","args":{"number":4}},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"process_sort_index","args":{"sort_index":-5}},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"process_name","args":{"name":"Renderer"}},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"process_labels","args":{"labels":"JS Bin"}},{"cat":"__metadata","pid":28871,"tid":28908,"ts":0,"ph":"M","name":"thread_sort_index","args":{"sort_index":-1}},{"cat":"__metadata","pid":28871,"tid":28917,"ts":0,"ph":"M","name":"thread_name","args":{"name":"Compositor"}},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"thread_name","args":{"name":"Chrome_ChildIOThread"}},{"cat":"__metadata","pid":28871,"tid":28919,"ts":0,"ph":"M","name":"thread_name","args":{"name":"CompositorRasterWorker1/28919"}},{"cat":"__metadata","pid":28871,"tid":28908,"ts":0,"ph":"M","name":"thread_name","args":{"name":"CrRendererMain"}},{"cat":"ipc,toplevel","pid":28871,"tid":28911,"ts":22000084746,"ph":"X","name":"ChannelReader::DispatchInputData","args":{"class":64,"line":25},"tdur":0,"tts":1853064},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"overhead","args":{"average_overhead":0.015}} ] } }"');
58     assertEquals(1, chunks.length);
59     JSON.parse('[' + chunks.join('') + ']');
60   });
61
62   test('newFormat', function() {
63     var chunks = [];
64     about_tracing.appendTraceChunksTo(chunks, '"{ "method": "Tracing.dataCollected", "params": { "value": [{"cat":"__metadata","pid":28871,"tid":0,"ts":0,"ph":"M","name":"num_cpus","args":{"number":4}},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"process_sort_index","args":{"sort_index":-5}},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"process_name","args":{"name":"Renderer"}},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"process_labels","args":{"labels":"JS Bin"}},{"cat":"__metadata","pid":28871,"tid":28908,"ts":0,"ph":"M","name":"thread_sort_index","args":{"sort_index":-1}},{"cat":"__metadata","pid":28871,"tid":28917,"ts":0,"ph":"M","name":"thread_name","args":{"name":"Compositor"}},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"thread_name","args":{"name":"Chrome_ChildIOThread"}},{"cat":"__metadata","pid":28871,"tid":28919,"ts":0,"ph":"M","name":"thread_name","args":{"name":"CompositorRasterWorker1/28919"}},{"cat":"__metadata","pid":28871,"tid":28908,"ts":0,"ph":"M","name":"thread_name","args":{"name":"CrRendererMain"}},{"cat":"ipc,toplevel","pid":28871,"tid":28911,"ts":22000084746,"ph":"X","name":"ChannelReader::DispatchInputData","args":{"class":64,"line":25},"tdur":0,"tts":1853064},{"cat":"__metadata","pid":28871,"tid":28911,"ts":0,"ph":"M","name":"overhead","args":{"average_overhead":0.015}}] } }"');
65     assertEquals(1, chunks.length);
66     JSON.parse('[' + chunks.join('') + ']');
67   });
68 });
69 </script>
70