OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 (function() { | 5 (function() { |
6 | 6 |
7 'use strict'; | 7 'use strict'; |
8 | 8 |
9 /** @type {remoting.SessionLogger} */ | 9 /** @type {remoting.SessionLogger} */ |
10 var logger = null; | 10 var logger = null; |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 signal_strategy_progress: Event.SignalStrategyProgress.TIMED_OUT | 67 signal_strategy_progress: Event.SignalStrategyProgress.TIMED_OUT |
68 }); | 68 }); |
69 | 69 |
70 verifyEvent(assert, 1, { | 70 verifyEvent(assert, 1, { |
71 type: Event.Type.SIGNAL_STRATEGY_PROGRESS, | 71 type: Event.Type.SIGNAL_STRATEGY_PROGRESS, |
72 signal_strategy_type: Event.SignalStrategyType.XMPP, | 72 signal_strategy_type: Event.SignalStrategyType.XMPP, |
73 signal_strategy_progress: Event.SignalStrategyProgress.SUCCEEDED | 73 signal_strategy_progress: Event.SignalStrategyProgress.SUCCEEDED |
74 }); | 74 }); |
75 }); | 75 }); |
76 | 76 |
77 QUnit.test('logClientSessionStateChange()', function(assert){ | 77 QUnit.test('logSessionStateChange()', function(assert){ |
78 var Event = remoting.ChromotingEvent; | 78 var Event = remoting.ChromotingEvent; |
79 | 79 |
80 logger = new remoting.SessionLogger(Event.Role.CLIENT, logWriter); | 80 logger = new remoting.SessionLogger(Event.Role.CLIENT, logWriter); |
81 logger.setLogEntryMode(Event.Mode.ME2ME); | 81 logger.setLogEntryMode(Event.Mode.ME2ME); |
82 logger.setConnectionType('stun'); | 82 logger.setConnectionType('stun'); |
83 logger.setHostVersion('host_version'); | 83 logger.setHostVersion('host_version'); |
84 logger.setHostOs(remoting.ChromotingEvent.Os.OTHER); | 84 logger.setHostOs(remoting.ChromotingEvent.Os.OTHER); |
85 logger.setHostOsVersion('host_os_version'); | 85 logger.setHostOsVersion('host_os_version'); |
86 | 86 |
87 logger.logClientSessionStateChange( | 87 logger.logSessionStateChange( |
88 remoting.ClientSession.State.FAILED, | 88 remoting.ChromotingEvent.SessionState.CONNECTION_FAILED, |
89 new remoting.Error(remoting.Error.Tag.HOST_IS_OFFLINE), null); | 89 new remoting.Error(remoting.Error.Tag.HOST_IS_OFFLINE)); |
90 var sessionId = logger.getSessionId(); | 90 var sessionId = logger.getSessionId(); |
91 | 91 |
92 assert.ok(sessionId !== null); | 92 assert.ok(sessionId !== null); |
93 | 93 |
94 verifyEvent(assert, 0, { | 94 verifyEvent(assert, 0, { |
95 type: Event.Type.SESSION_STATE, | 95 type: Event.Type.SESSION_STATE, |
96 session_state: Event.SessionState.CONNECTION_FAILED, | 96 session_state: Event.SessionState.CONNECTION_FAILED, |
97 connection_error: Event.ConnectionError.HOST_OFFLINE, | 97 connection_error: Event.ConnectionError.HOST_OFFLINE, |
98 os: Event.Os.MAC, | 98 os: Event.Os.MAC, |
99 os_version: '10.9.5', | 99 os_version: '10.9.5', |
100 cpu: 'Intel', | 100 cpu: 'Intel', |
101 browser_version: '43.0.2357.81', | 101 browser_version: '43.0.2357.81', |
102 application_id: 'extensionId', | 102 application_id: 'extensionId', |
103 role: Event.Role.CLIENT, | 103 role: Event.Role.CLIENT, |
104 mode: Event.Mode.ME2ME, | 104 mode: Event.Mode.ME2ME, |
105 connection_type: Event.ConnectionType.STUN, | 105 connection_type: Event.ConnectionType.STUN, |
106 host_version: 'host_version', | 106 host_version: 'host_version', |
107 host_os: remoting.ChromotingEvent.Os.OTHER, | 107 host_os: remoting.ChromotingEvent.Os.OTHER, |
108 host_os_version: 'host_os_version', | 108 host_os_version: 'host_os_version', |
109 session_id: sessionId | 109 session_id: sessionId |
110 }); | 110 }); |
111 }); | 111 }); |
112 | 112 |
113 QUnit.test('logClientSessionStateChange() should handle XMPP error', | 113 QUnit.test('logSessionStateChange() should handle XMPP error', |
114 function(assert){ | 114 function(assert){ |
115 var Event = remoting.ChromotingEvent; | 115 var Event = remoting.ChromotingEvent; |
116 | 116 |
117 logger = new remoting.SessionLogger(Event.Role.CLIENT, logWriter); | 117 logger = new remoting.SessionLogger(Event.Role.CLIENT, logWriter); |
118 logger.setLogEntryMode(Event.Mode.ME2ME); | 118 logger.setLogEntryMode(Event.Mode.ME2ME); |
119 logger.setConnectionType('stun'); | 119 logger.setConnectionType('stun'); |
120 logger.setHostVersion('host_version'); | 120 logger.setHostVersion('host_version'); |
121 logger.setHostOs(remoting.ChromotingEvent.Os.OTHER); | 121 logger.setHostOs(remoting.ChromotingEvent.Os.OTHER); |
122 logger.setHostOsVersion('host_os_version'); | 122 logger.setHostOsVersion('host_os_version'); |
123 | 123 |
124 var xmppError = new remoting.ChromotingEvent.XmppError('<fake-stanza/>'); | 124 logger.logSessionStateChange( |
125 | 125 remoting.ChromotingEvent.SessionState.CONNECTION_FAILED, |
126 logger.logClientSessionStateChange( | 126 new remoting.Error(remoting.Error.Tag.HOST_IS_OFFLINE, '<fake-stanza/>')); |
127 remoting.ClientSession.State.FAILED, | |
128 new remoting.Error(remoting.Error.Tag.HOST_IS_OFFLINE), xmppError); | |
129 var sessionId = logger.getSessionId(); | 127 var sessionId = logger.getSessionId(); |
130 | 128 |
131 assert.ok(sessionId !== null); | 129 assert.ok(sessionId !== null); |
132 | 130 |
133 verifyEvent(assert, 0, { | 131 verifyEvent(assert, 0, { |
134 type: Event.Type.SESSION_STATE, | 132 type: Event.Type.SESSION_STATE, |
135 session_state: Event.SessionState.CONNECTION_FAILED, | 133 session_state: Event.SessionState.CONNECTION_FAILED, |
136 connection_error: Event.ConnectionError.HOST_OFFLINE, | 134 connection_error: Event.ConnectionError.HOST_OFFLINE, |
137 os: Event.Os.MAC, | 135 os: Event.Os.MAC, |
138 os_version: '10.9.5', | 136 os_version: '10.9.5', |
139 cpu: 'Intel', | 137 cpu: 'Intel', |
140 browser_version: '43.0.2357.81', | 138 browser_version: '43.0.2357.81', |
141 application_id: 'extensionId', | 139 application_id: 'extensionId', |
142 role: Event.Role.CLIENT, | 140 role: Event.Role.CLIENT, |
143 mode: Event.Mode.ME2ME, | 141 mode: Event.Mode.ME2ME, |
144 connection_type: Event.ConnectionType.STUN, | 142 connection_type: Event.ConnectionType.STUN, |
145 host_version: 'host_version', | 143 host_version: 'host_version', |
146 host_os: remoting.ChromotingEvent.Os.OTHER, | 144 host_os: remoting.ChromotingEvent.Os.OTHER, |
147 host_os_version: 'host_os_version', | 145 host_os_version: 'host_os_version', |
148 session_id: sessionId, | 146 session_id: sessionId, |
149 xmpp_error: { | 147 xmpp_error: { |
150 raw_stanza: '<fake-stanza/>' | 148 raw_stanza: '<fake-stanza/>' |
151 } | 149 } |
152 }); | 150 }); |
153 }); | 151 }); |
154 | 152 |
155 QUnit.test('logClientSessionStateChange() should handle sessionId change.', | 153 QUnit.test('logSessionStateChange() should handle sessionId change.', |
156 function(assert){ | 154 function(assert){ |
157 var clock = sinon.useFakeTimers(); | 155 var clock = sinon.useFakeTimers(); |
158 var Event = remoting.ChromotingEvent; | 156 var Event = remoting.ChromotingEvent; |
159 | 157 |
160 // Creates the logger. | 158 // Creates the logger. |
161 logger = new remoting.SessionLogger(Event.Role.CLIENT, logWriter); | 159 logger = new remoting.SessionLogger(Event.Role.CLIENT, logWriter); |
162 logger.setLogEntryMode(Event.Mode.ME2ME); | 160 logger.setLogEntryMode(Event.Mode.ME2ME); |
163 logger.setConnectionType('relay'); | 161 logger.setConnectionType('relay'); |
164 logger.setHostVersion('host_version'); | 162 logger.setHostVersion('host_version'); |
165 logger.setHostOs(remoting.ChromotingEvent.Os.OTHER); | 163 logger.setHostOs(remoting.ChromotingEvent.Os.OTHER); |
166 logger.setHostOsVersion('host_os_version'); | 164 logger.setHostOsVersion('host_os_version'); |
167 var oldSessionId = logger.getSessionId(); | 165 var oldSessionId = logger.getSessionId(); |
168 | 166 |
169 // Expires the session id. | 167 // Expires the session id. |
170 clock.tick(remoting.SessionLogger.MAX_SESSION_ID_AGE + 100); | 168 clock.tick(remoting.SessionLogger.MAX_SESSION_ID_AGE + 100); |
171 | 169 |
172 // Logs the event. | 170 // Logs the event. |
173 logger.logClientSessionStateChange( | 171 logger.logSessionStateChange( |
174 remoting.ClientSession.State.AUTHENTICATED, remoting.Error.none(), null); | 172 remoting.ChromotingEvent.SessionState.AUTHENTICATED); |
175 | 173 |
176 var newSessionId = logger.getSessionId(); | 174 var newSessionId = logger.getSessionId(); |
177 verifyEvent(assert, 0, { | 175 verifyEvent(assert, 0, { |
178 type: Event.Type.SESSION_ID_OLD, | 176 type: Event.Type.SESSION_ID_OLD, |
179 session_id: oldSessionId, | 177 session_id: oldSessionId, |
180 os: Event.Os.MAC, | 178 os: Event.Os.MAC, |
181 os_version: '10.9.5', | 179 os_version: '10.9.5', |
182 cpu: 'Intel', | 180 cpu: 'Intel', |
183 browser_version: '43.0.2357.81', | 181 browser_version: '43.0.2357.81', |
184 application_id: 'extensionId', | 182 application_id: 'extensionId', |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
218 role: Event.Role.CLIENT, | 216 role: Event.Role.CLIENT, |
219 mode: Event.Mode.ME2ME, | 217 mode: Event.Mode.ME2ME, |
220 connection_type: Event.ConnectionType.RELAY, | 218 connection_type: Event.ConnectionType.RELAY, |
221 host_version: 'host_version', | 219 host_version: 'host_version', |
222 host_os: remoting.ChromotingEvent.Os.OTHER, | 220 host_os: remoting.ChromotingEvent.Os.OTHER, |
223 host_os_version: 'host_os_version', | 221 host_os_version: 'host_os_version', |
224 session_id: newSessionId | 222 session_id: newSessionId |
225 }); | 223 }); |
226 }); | 224 }); |
227 | 225 |
228 QUnit.test('logClientSessionStateChange() should log session_duration.', | 226 QUnit.test('logSessionStateChange() should log session_duration.', |
229 function(assert){ | 227 function(assert){ |
230 var clock = sinon.useFakeTimers(); | 228 var clock = sinon.useFakeTimers(); |
231 var Event = remoting.ChromotingEvent; | 229 var Event = remoting.ChromotingEvent; |
232 | 230 |
233 // Creates the logger. | 231 // Creates the logger. |
234 logger = new remoting.SessionLogger(Event.Role.CLIENT, logWriter); | 232 logger = new remoting.SessionLogger(Event.Role.CLIENT, logWriter); |
235 logger.setLogEntryMode(Event.Mode.ME2ME); | 233 logger.setLogEntryMode(Event.Mode.ME2ME); |
236 logger.setConnectionType('direct'); | 234 logger.setConnectionType('direct'); |
237 logger.setHostVersion('host_version'); | 235 logger.setHostVersion('host_version'); |
238 logger.setHostOs(remoting.ChromotingEvent.Os.OTHER); | 236 logger.setHostOs(remoting.ChromotingEvent.Os.OTHER); |
239 logger.setHostOsVersion('host_os_version'); | 237 logger.setHostOsVersion('host_os_version'); |
240 logger.setAuthTotalTime(1000); | 238 logger.setAuthTotalTime(1000); |
241 clock.tick(2500); | 239 clock.tick(2500); |
242 | 240 |
243 // Logs the event. | 241 // Logs the event. |
244 logger.logClientSessionStateChange( | 242 logger.logSessionStateChange( |
245 remoting.ClientSession.State.CONNECTED, remoting.Error.none(), null); | 243 remoting.ChromotingEvent.SessionState.CONNECTED); |
246 | 244 |
247 verifyEvent(assert, 0, { | 245 verifyEvent(assert, 0, { |
248 type: Event.Type.SESSION_STATE, | 246 type: Event.Type.SESSION_STATE, |
249 session_state: Event.SessionState.CONNECTED, | 247 session_state: Event.SessionState.CONNECTED, |
250 connection_error: Event.ConnectionError.NONE, | 248 connection_error: Event.ConnectionError.NONE, |
251 os: Event.Os.MAC, | 249 os: Event.Os.MAC, |
252 os_version: '10.9.5', | 250 os_version: '10.9.5', |
253 cpu: 'Intel', | 251 cpu: 'Intel', |
254 browser_version: '43.0.2357.81', | 252 browser_version: '43.0.2357.81', |
255 application_id: 'extensionId', | 253 application_id: 'extensionId', |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
357 decodeLatency: 0.0, | 355 decodeLatency: 0.0, |
358 renderLatency: 0.0, | 356 renderLatency: 0.0, |
359 roundtripLatency: 0.0 | 357 roundtripLatency: 0.0 |
360 }); | 358 }); |
361 | 359 |
362 sinon.assert.notCalled(logWriterSpy); | 360 sinon.assert.notCalled(logWriterSpy); |
363 | 361 |
364 }); | 362 }); |
365 | 363 |
366 })(); | 364 })(); |
OLD | NEW |