@@ -12,3 +12,63 @@ assert.strictEqual(
12
12
typeof ClientRequest . prototype . _implicitHeader , 'function' ) ;
13
13
assert . strictEqual (
14
14
typeof ServerResponse . prototype . _implicitHeader , 'function' ) ;
15
+
16
+ // validateHeader
17
+ assert . throws ( ( ) => {
18
+ const outgoingMessage = new OutgoingMessage ( ) ;
19
+ outgoingMessage . setHeader ( ) ;
20
+ } , / ^ T y p e E r r o r : H e a d e r n a m e m u s t b e a v a l i d H T T P T o k e n \[ " u n d e f i n e d " \] $ / ) ;
21
+
22
+ assert . throws ( ( ) => {
23
+ const outgoingMessage = new OutgoingMessage ( ) ;
24
+ outgoingMessage . setHeader ( 'test' ) ;
25
+ } , / ^ E r r o r : " v a l u e " r e q u i r e d i n s e t H e a d e r \( " t e s t " , v a l u e \) $ / ) ;
26
+
27
+ assert . throws ( ( ) => {
28
+ const outgoingMessage = new OutgoingMessage ( ) ;
29
+ outgoingMessage . setHeader ( 404 ) ;
30
+ } , / ^ T y p e E r r o r : H e a d e r n a m e m u s t b e a v a l i d H T T P T o k e n \[ " 4 0 4 " \] $ / ) ;
31
+
32
+ assert . throws ( ( ) => {
33
+ const outgoingMessage = new OutgoingMessage ( ) ;
34
+ outgoingMessage . setHeader . call ( { _header : 'test' } , 'test' , 'value' ) ;
35
+ } , / ^ E r r o r : C a n ' t s e t h e a d e r s a f t e r t h e y a r e s e n t .$ / ) ;
36
+
37
+ assert . throws ( ( ) => {
38
+ const outgoingMessage = new OutgoingMessage ( ) ;
39
+ outgoingMessage . setHeader ( '200' , 'あ' ) ;
40
+ } , / ^ T y p e E r r o r : T h e h e a d e r c o n t e n t c o n t a i n s i n v a l i d c h a r a c t e r s $ / ) ;
41
+
42
+ // write
43
+ assert . throws ( ( ) => {
44
+ const outgoingMessage = new OutgoingMessage ( ) ;
45
+ outgoingMessage . write ( ) ;
46
+ } , / ^ E r r o r : _ i m p l i c i t H e a d e r \( \) m e t h o d i s n o t i m p l e m e n t e d $ / ) ;
47
+
48
+ assert ( OutgoingMessage . prototype . write . call ( { _header : 'test' } ) ) ;
49
+
50
+ assert . throws ( ( ) => {
51
+ const outgoingMessage = new OutgoingMessage ( ) ;
52
+ outgoingMessage . write . call ( { _header : 'test' , _hasBody : 'test' } ) ;
53
+ } , / ^ T y p e E r r o r : F i r s t a r g u m e n t m u s t b e a s t r i n g o r B u f f e r $ / ) ;
54
+
55
+ assert . throws ( ( ) => {
56
+ const outgoingMessage = new OutgoingMessage ( ) ;
57
+ outgoingMessage . write . call ( { _header : 'test' , _hasBody : 'test' } , 1 ) ;
58
+ } , / ^ T y p e E r r o r : F i r s t a r g u m e n t m u s t b e a s t r i n g o r B u f f e r $ / ) ;
59
+
60
+ // addTrailers
61
+ assert . throws ( ( ) => {
62
+ const outgoingMessage = new OutgoingMessage ( ) ;
63
+ outgoingMessage . addTrailers ( ) ;
64
+ } , / ^ T y p e E r r o r : C a n n o t c o n v e r t u n d e f i n e d o r n u l l t o o b j e c t $ / ) ;
65
+
66
+ assert . throws ( ( ) => {
67
+ const outgoingMessage = new OutgoingMessage ( ) ;
68
+ outgoingMessage . addTrailers ( { 'あ' : 'value' } ) ;
69
+ } , / ^ T y p e E r r o r : T r a i l e r n a m e m u s t b e a v a l i d H T T P T o k e n \[ " あ " \] $ / ) ;
70
+
71
+ assert . throws ( ( ) => {
72
+ const outgoingMessage = new OutgoingMessage ( ) ;
73
+ outgoingMessage . addTrailers ( { 404 : 'あ' } ) ;
74
+ } , / ^ T y p e E r r o r : T h e t r a i l e r c o n t e n t c o n t a i n s i n v a l i d c h a r a c t e r s $ / ) ;
0 commit comments