| 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 |