File tree Expand file tree Collapse file tree 2 files changed +22
-13
lines changed
Expand file tree Collapse file tree 2 files changed +22
-13
lines changed Original file line number Diff line number Diff line change 11import { describe , expect , it } from "vitest" ;
2- import { extension , name } from "./file" ;
2+ import { extension , name , niceSize } from "./file" ;
33
44describe . concurrent ( "$helper.file.extension()" , ( ) => {
55 it ( "returns the extension of a filename" , ( ) => {
@@ -16,3 +16,11 @@ describe.concurrent("$helper.file.name()", () => {
1616 expect ( name ( "file" ) ) . toBe ( "" ) ;
1717 } ) ;
1818} ) ;
19+
20+ describe . concurrent ( "$helper.file.niceSize()" , ( ) => {
21+ it ( "formats bytes" , ( ) => {
22+ expect ( niceSize ( 0 ) ) . toBe ( "0B" ) ;
23+ expect ( niceSize ( 1024 ) ) . toBe ( "1KB" ) ;
24+ expect ( niceSize ( 1048576 ) ) . toBe ( "1MB" ) ;
25+ } ) ;
26+ } ) ;
Original file line number Diff line number Diff line change 11/**
22 * Extracts the extension
33 *
4- * @param { String } filename
5- * @returns { String }
4+ * @example
5+ * extension("image.jpg") // => "jpg"
66 */
7- export const extension = ( filename ) => {
7+ export function extension ( filename : string ) : string {
88 return filename . split ( "." ) . slice ( - 1 ) . join ( "" ) ;
9- } ;
9+ }
1010
1111/**
1212 * Extracts the name without extension
1313 *
14- * @param { String } filename
15- * @returns { String }
14+ * @example
15+ * name("image.jpg") // => "image"
1616 */
17- export const name = ( filename ) => {
17+ export function name ( filename : string ) : string {
1818 return filename . split ( "." ) . slice ( 0 , - 1 ) . join ( "." ) ;
19- } ;
19+ }
2020
2121/**
2222 * Creates a nice human-readable file size string with size unit
2323 *
24- * @param {Number } size
25- * @returns {String }
24+ * @example
25+ * niceSize(1024) // => "1KB"
26+ * niceSize(1048576) // => "1MB"
2627 */
27- export const niceSize = ( size ) => {
28+ export function niceSize ( size : number ) : string {
2829 const formatter = Intl . NumberFormat ( "en" , {
2930 notation : "compact" ,
3031 style : "unit" ,
@@ -33,7 +34,7 @@ export const niceSize = (size) => {
3334 } ) ;
3435
3536 return formatter . format ( size ) ;
36- } ;
37+ }
3738
3839export default {
3940 extension,
You can’t perform that action at this time.
0 commit comments