@@ -9,6 +9,11 @@ assert.deepStrictEqual(qs.escape('test'), 'test');
9
9
assert . deepStrictEqual ( qs . escape ( { } ) , '%5Bobject%20Object%5D' ) ;
10
10
assert . deepStrictEqual ( qs . escape ( [ 5 , 10 ] ) , '5%2C10' ) ;
11
11
assert . deepStrictEqual ( qs . escape ( 'Ŋōđĕ' ) , '%C5%8A%C5%8D%C4%91%C4%95' ) ;
12
+ assert . deepStrictEqual ( qs . escape ( 'testŊōđĕ' ) , 'test%C5%8A%C5%8D%C4%91%C4%95' ) ;
13
+ assert . deepStrictEqual ( qs . escape ( `${ String . fromCharCode ( 0xD800 + 1 ) } test` ) ,
14
+ '%F0%90%91%B4est' ) ;
15
+ assert . throws ( ( ) => qs . escape ( String . fromCharCode ( 0xD800 + 1 ) ) ,
16
+ / ^ U R I E r r o r : U R I m a l f o r m e d $ / ) ;
12
17
13
18
// using toString for objects
14
19
assert . strictEqual (
@@ -17,9 +22,11 @@ assert.strictEqual(
17
22
) ;
18
23
19
24
// toString is not callable, must throw an error
20
- assert . throws ( ( ) => qs . escape ( { toString : 5 } ) ) ;
25
+ assert . throws ( ( ) => qs . escape ( { toString : 5 } ) ,
26
+ / ^ T y p e E r r o r : C a n n o t c o n v e r t o b j e c t t o p r i m i t i v e v a l u e $ / ) ;
21
27
22
28
// should use valueOf instead of non-callable toString
23
29
assert . strictEqual ( qs . escape ( { toString : 5 , valueOf : ( ) => 'test' } ) , 'test' ) ;
24
30
25
- assert . throws ( ( ) => qs . escape ( Symbol ( 'test' ) ) ) ;
31
+ assert . throws ( ( ) => qs . escape ( Symbol ( 'test' ) ) ,
32
+ / ^ T y p e E r r o r : C a n n o t c o n v e r t a S y m b o l v a l u e t o a s t r i n g $ / ) ;
0 commit comments