this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request #3 from SukkaW/use-chalk

Bring up color util

authored by

Tomás Arias and committed by
GitHub
828d3c9f c89d497a

+38 -45
+4
chalk.js
··· 1 + exports.magenta = (...args) => `\u001b[35m${args.join(' ')}\u001b[0m`; 2 + exports.bold = (...args) => `\u001b[1m${args.join(' ')}\u001b[0m`; 3 + exports.yellow = (...args) => `\u001b[33m${args.join(' ')}\u001b[0m`; 4 + exports.green = (...args) => `\u001b[32m${args.join(' ')}\u001b[0m`;
+34 -45
cli.js
··· 2 2 3 3 const { performance } = require('perf_hooks'); 4 4 const https = require('https'); 5 + const { magenta, bold, yellow, green } = require('./chalk.js'); 5 6 const stats = require('./stats.js'); 6 7 7 8 function request(options, data = '') { ··· 141 142 return measurements; 142 143 } 143 144 145 + function logSpeedTestResult(size, test) { 146 + const speed = stats.median(test).toFixed(2); 147 + console.log( 148 + bold(' '.repeat(7 - size.length), size, 'speed:', yellow(`${speed} Mbps`)) 149 + ); 150 + } 151 + 144 152 async function speedTest() { 145 153 const ping = await measureLatency(); 146 154 147 - console.log( 148 - '\x1b[35m%s%s\x1b[0m', 149 - ' Latency: ', 150 - `${ping[3].toFixed(2)} ms` 151 - ); 155 + console.log(bold(' Latency:', magenta(`${ping[3].toFixed(2)} ms`))); 152 156 153 157 const test1 = await measureDownload(11000, 10); 154 158 155 - console.log( 156 - '\x1b[1m%s\x1b[33m%s\x1b[0m', 157 - ' 10kB speed: ', 158 - `${stats.median(test1).toFixed(2)} Mbps` 159 - ); 159 + logSpeedTestResult('10kB', test1); 160 160 161 161 const test2 = await measureDownload(101000, 10); 162 162 163 - console.log( 164 - '\x1b[1m%s\x1b[33m%s\x1b[0m', 165 - ' 100kB speed: ', 166 - `${stats.median(test2).toFixed(2)} Mbps` 167 - ); 163 + logSpeedTestResult('100kB', test2); 168 164 169 165 const test3 = await measureDownload(1001000, 8); 170 166 171 - console.log( 172 - '\x1b[1m%s\x1b[33m%s\x1b[0m', 173 - ' 1MB speed: ', 174 - `${stats.median(test3).toFixed(2)} Mbps` 175 - ); 167 + logSpeedTestResult('1MB', test3); 176 168 177 169 const test4 = await measureDownload(10001000, 5); 178 170 179 - console.log( 180 - '\x1b[1m%s\x1b[33m%s\x1b[0m', 181 - ' 10MB speed: ', 182 - `${stats.median(test4).toFixed(2)} Mbps` 183 - ); 171 + logSpeedTestResult('10MB', test4); 184 172 185 173 const test5 = await measureDownload(25001000, 5); 186 174 187 - console.log( 188 - '\x1b[1m%s\x1b[33m%s\x1b[0m', 189 - ' 25MB speed: ', 190 - `${stats.median(test5).toFixed(2)} Mbps` 191 - ); 175 + logSpeedTestResult('25MB', test5); 176 + 192 177 const test6 = await measureDownload(100001000, 5); 193 178 194 - console.log( 195 - '\x1b[1m%s\x1b[33m%s\x1b[0m', 196 - ' 100MB speed: ', 197 - `${stats.median(test6).toFixed(2)} Mbps` 198 - ); 179 + logSpeedTestResult('100MB', test6); 199 180 200 181 console.log( 201 - '\x1b[1m%s\x1b[32m%s\x1b[0m', 202 - 'Download speed: ', 203 - `${stats 204 - .quartile( 205 - [...test1, ...test2, ...test3, ...test4, ...test5, ...test6], 206 - 0.9 182 + bold( 183 + 'Download speed:', 184 + green( 185 + stats 186 + .quartile( 187 + [...test1, ...test2, ...test3, ...test4, ...test5, ...test6], 188 + 0.9 189 + ) 190 + .toFixed(2), 191 + 'Mbps' 207 192 ) 208 - .toFixed(2)} Mbps` 193 + ) 209 194 ); 210 195 211 196 const test7 = await measureUpload(11000, 10); ··· 213 198 const test9 = await measureUpload(1001000, 8); 214 199 215 200 console.log( 216 - '\x1b[1m%s\x1b[32m%s\x1b[0m', 217 - ' Upload speed: ', 218 - `${stats.quartile([...test7, ...test8, ...test9], 0.9).toFixed(2)} Mbps` 201 + bold( 202 + ' Upload speed:', 203 + green( 204 + stats.quartile([...test7, ...test8, ...test9], 0.9).toFixed(2), 205 + 'Mbps' 206 + ) 207 + ) 219 208 ); 220 209 } 221 210