@@ -110,4 +110,31 @@ describe('ComplexNumber', () => {
110110 expect ( complexNumber3 . re ) . toBe ( - 7 / 41 ) ;
111111 expect ( complexNumber3 . im ) . toBe ( 22 / 41 ) ;
112112 } ) ;
113+
114+ it ( 'should return complex number in polar form' , ( ) => {
115+ const complexNumber1 = new ComplexNumber ( { re : 3 , im : 3 } ) ;
116+ expect ( complexNumber1 . getPolarForm ( ) . radius ) . toBe ( Math . sqrt ( ( 3 ** 2 ) + ( 3 ** 2 ) ) ) ;
117+ expect ( complexNumber1 . getPolarForm ( ) . phase ) . toBe ( Math . PI / 4 ) ;
118+ expect ( complexNumber1 . getPolarForm ( false ) . phase ) . toBe ( 45 ) ;
119+
120+ const complexNumber2 = new ComplexNumber ( { re : - 3 , im : 3 } ) ;
121+ expect ( complexNumber2 . getPolarForm ( ) . radius ) . toBe ( Math . sqrt ( ( 3 ** 2 ) + ( 3 ** 2 ) ) ) ;
122+ expect ( complexNumber2 . getPolarForm ( ) . phase ) . toBe ( 3 * ( Math . PI / 4 ) ) ;
123+ expect ( complexNumber2 . getPolarForm ( false ) . phase ) . toBe ( 135 ) ;
124+
125+ const complexNumber3 = new ComplexNumber ( { re : - 3 , im : - 3 } ) ;
126+ expect ( complexNumber3 . getPolarForm ( ) . radius ) . toBe ( Math . sqrt ( ( 3 ** 2 ) + ( 3 ** 2 ) ) ) ;
127+ expect ( complexNumber3 . getPolarForm ( ) . phase ) . toBe ( - 3 * ( Math . PI / 4 ) ) ;
128+ expect ( complexNumber3 . getPolarForm ( false ) . phase ) . toBe ( - 135 ) ;
129+
130+ const complexNumber4 = new ComplexNumber ( { re : 3 , im : - 3 } ) ;
131+ expect ( complexNumber4 . getPolarForm ( ) . radius ) . toBe ( Math . sqrt ( ( 3 ** 2 ) + ( 3 ** 2 ) ) ) ;
132+ expect ( complexNumber4 . getPolarForm ( ) . phase ) . toBe ( - 1 * ( Math . PI / 4 ) ) ;
133+ expect ( complexNumber4 . getPolarForm ( false ) . phase ) . toBe ( - 45 ) ;
134+
135+ const complexNumber5 = new ComplexNumber ( { re : 5 , im : 7 } ) ;
136+ expect ( complexNumber5 . getPolarForm ( ) . radius ) . toBeCloseTo ( 8.60 ) ;
137+ expect ( complexNumber5 . getPolarForm ( ) . phase ) . toBeCloseTo ( 0.95 ) ;
138+ expect ( complexNumber5 . getPolarForm ( false ) . phase ) . toBeCloseTo ( 54.46 ) ;
139+ } ) ;
113140} ) ;
0 commit comments