@@ -161,7 +161,6 @@ const SpeedTest = {
161161 console.warn('Failed to fetch token, running without priority access:', err);
162162 }
163163
164- const self = this;
165164 return ndt7.test(
166165 {
167166 clientRegistrationToken: token,
@@ -175,90 +174,89 @@ const SpeedTest = {
175174 }
176175 },
177176 {
178- serverChosen: function (server) {
179- self .els.location.textContent = server.location.city + ', ' + server.location.country;
177+ serverChosen: (server) => {
178+ this .els.location.textContent = server.location.city + ', ' + server.location.country;
180179 console.log('Testing to:', {
181180 machine: server.machine,
182181 locations: server.location,
183182 });
184183 },
185- downloadStart: function() {
186- self .els.currentPhase.textContent = i18n.t('Download');
187- self .els.currentSpeed.textContent = i18n.t('Initializing');
184+ downloadStart: () => {
185+ this .els.currentPhase.textContent = i18n.t('Download');
186+ this .els.currentSpeed.textContent = i18n.t('Initializing');
188187 },
189- downloadMeasurement: function (data) {
188+ downloadMeasurement: (data) => {
190189 if (data.Source === 'client') {
191- self .els.currentSpeed.textContent = data.Data.MeanClientMbps.toFixed(2) + ' Mb/s';
192- const progress = (data.Data.ElapsedTime > self .TIME_EXPECTED) ? 0.5 :
193- data.Data.ElapsedTime / (self .TIME_EXPECTED * 2);
190+ this .els.currentSpeed.textContent = data.Data.MeanClientMbps.toFixed(2) + ' Mb/s';
191+ const progress = (data.Data.ElapsedTime > this .TIME_EXPECTED) ? 0.5 :
192+ data.Data.ElapsedTime / (this .TIME_EXPECTED * 2);
194193 ProgressGauge.progress(progress);
195194 }
196195 },
197- downloadComplete: function (data) {
198- self .measurementResult.s2cRate =
196+ downloadComplete: (data) => {
197+ this .measurementResult.s2cRate =
199198 data.LastClientMeasurement.MeanClientMbps.toFixed(2) + ' Mb/s';
200- self .measurementResult.latency =
199+ this .measurementResult.latency =
201200 (data.LastServerMeasurement.TCPInfo.MinRTT / 1000).toFixed(0) + ' ms';
202- self .measurementResult.loss =
201+ this .measurementResult.loss =
203202 (data.LastServerMeasurement.TCPInfo.BytesRetrans /
204203 data.LastServerMeasurement.TCPInfo.BytesSent * 100).toFixed(2) + '%';
205- self .els.s2cRate.textContent = self .measurementResult.s2cRate;
206- self .els.latency.textContent = self .measurementResult.latency;
207- self .els.loss.textContent = self .measurementResult.loss;
204+ this .els.s2cRate.textContent = this .measurementResult.s2cRate;
205+ this .els.latency.textContent = this .measurementResult.latency;
206+ this .els.loss.textContent = this .measurementResult.loss;
208207 console.log(data);
209208 },
210- uploadStart: function() {
211- self .els.currentPhase.textContent = i18n.t('Upload');
212- self .els.currentSpeed.textContent = i18n.t('Initializing');
209+ uploadStart: () => {
210+ this .els.currentPhase.textContent = i18n.t('Upload');
211+ this .els.currentSpeed.textContent = i18n.t('Initializing');
213212 },
214- uploadMeasurement: function (data) {
213+ uploadMeasurement: (data) => {
215214 if (data.Source === 'server') {
216- self .els.currentSpeed.textContent = (data.Data.TCPInfo.BytesReceived /
215+ this .els.currentSpeed.textContent = (data.Data.TCPInfo.BytesReceived /
217216 data.Data.TCPInfo.ElapsedTime * 8).toFixed(2) + ' Mb/s';
218217 }
219218 if (data.Source === 'client') {
220- const progress = (data.Data.ElapsedTime > self .TIME_EXPECTED) ? 1.0 :
221- data.Data.ElapsedTime / (self .TIME_EXPECTED * 2) + 0.5;
219+ const progress = (data.Data.ElapsedTime > this .TIME_EXPECTED) ? 1.0 :
220+ data.Data.ElapsedTime / (this .TIME_EXPECTED * 2) + 0.5;
222221 ProgressGauge.progress(progress);
223222 }
224223 },
225- uploadComplete: function (data) {
226- self .measurementResult.c2sRate =
224+ uploadComplete: (data) => {
225+ this .measurementResult.c2sRate =
227226 (data.LastServerMeasurement.TCPInfo.BytesReceived /
228227 data.LastServerMeasurement.TCPInfo.ElapsedTime * 8).toFixed(2) + ' Mb/s';
229- self .els.c2sRate.textContent = self .measurementResult.c2sRate;
228+ this .els.c2sRate.textContent = this .measurementResult.c2sRate;
230229 },
231230 },
232231 );
233232 },
234233
235234 async runMSAK(sid) {
236- const self = this;
237235 const client = new msak.Client('speed-measurementlab-net', '0.0.1', {
238- onDownloadStart: function (server) {
236+ onDownloadStart: (server) => {
239237 console.log('Server: ' + server.machine);
240- self .els.msakLocation.textContent = server.location.city + ', ' + server.location.country;
238+ this .els.msakLocation.textContent = server.location.city + ', ' + server.location.country;
241239 },
242- onDownloadResult: function (result) {
243- self .msakResult.download = result.goodput.toFixed(2) + ' Mb/s';
244- self .msakResult.loss = (result.retransmission * 100).toFixed(2) + '%';
245- self .msakResult.latency = (result.minRTT / 1000).toFixed(0) + ' ms';
246- self .els.currentPhase.textContent = i18n.t('Download');
247- self .els.currentSpeed.textContent = result.goodput.toFixed(2) + ' Mb/s';
248- self .els.msakDownload.textContent = self .msakResult.download;
249- self .els.msakLatency.textContent = self .msakResult.latency;
250- self .els.msakLoss.textContent = self .msakResult.loss;
251- const progress = (result.elapsed > self .TIME_EXPECTED) ? 0.5 :
252- result.elapsed / (self .TIME_EXPECTED * 2);
240+ onDownloadResult: (result) => {
241+ this .msakResult.download = result.goodput.toFixed(2) + ' Mb/s';
242+ this .msakResult.loss = (result.retransmission * 100).toFixed(2) + '%';
243+ this .msakResult.latency = (result.minRTT / 1000).toFixed(0) + ' ms';
244+ this .els.currentPhase.textContent = i18n.t('Download');
245+ this .els.currentSpeed.textContent = result.goodput.toFixed(2) + ' Mb/s';
246+ this .els.msakDownload.textContent = this .msakResult.download;
247+ this .els.msakLatency.textContent = this .msakResult.latency;
248+ this .els.msakLoss.textContent = this .msakResult.loss;
249+ const progress = (result.elapsed > this .TIME_EXPECTED) ? 0.5 :
250+ result.elapsed / (this .TIME_EXPECTED * 2);
253251 ProgressGauge.progress(progress);
254252 },
255- onUploadResult: function (result) {
256- self .msakResult.upload = result.goodput.toFixed(2) + ' Mb/s';
257- self .els.currentPhase.textContent = i18n.t('Upload');
258- self .els.currentSpeed.textContent = result.goodput.toFixed(2) + ' Mb/s';
259- self .els.msakUpload.textContent = self .msakResult.upload;
260- const progress = (result.elapsed > self .TIME_EXPECTED) ? 1.0 :
261- result.elapsed / (self .TIME_EXPECTED * 2) + 0.5;
253+ onUploadResult: (result) => {
254+ this .msakResult.upload = result.goodput.toFixed(2) + ' Mb/s';
255+ this .els.currentPhase.textContent = i18n.t('Upload');
256+ this .els.currentSpeed.textContent = result.goodput.toFixed(2) + ' Mb/s';
257+ this .els.msakUpload.textContent = this .msakResult.upload;
258+ const progress = (result.elapsed > this .TIME_EXPECTED) ? 1.0 :
259+ result.elapsed / (this .TIME_EXPECTED * 2) + 0.5;
262260 ProgressGauge.progress(progress);
263261 }
264262 });
@@ -314,22 +312,21 @@ const SpeedTest = {
314312 },
315313 ];
316314
317- const self = this;
318315 return pt.test(
319316 {
320317 userAcceptedDataPolicy: true,
321318 downloadworkerfile: '/libraries/pt-download-worker.min.js',
322319 metadata: md[Math.floor(Math.random() * md.length)]
323320 },
324321 {
325- serverChosen: function (server) {
326- self .els.location.textContent = server.location.city + ', ' + server.location.country;
322+ serverChosen: (server) => {
323+ this .els.location.textContent = server.location.city + ', ' + server.location.country;
327324 console.log('Testing PT to:', {
328325 machine: server.machine,
329326 locations: server.location,
330327 });
331328 },
332- downloadComplete: function (data) {
329+ downloadComplete: (data) => {
333330 console.log('PT result:', data);
334331 },
335332 },
0 commit comments