File tree 2 files changed +30
-0
lines changed
2 files changed +30
-0
lines changed Original file line number Diff line number Diff line change
1
+ /**
2
+ * This class represents a sphere and can calculate its volume and surface area
3
+ * @constructor
4
+ * @param {number } radius - The radius of the sphere
5
+ * @see https://en.wikipedia.org/wiki/Sphere
6
+ */
7
+ export default class Sphere {
8
+ constructor ( radius ) {
9
+ this . radius = radius
10
+ }
11
+
12
+ volume = ( ) => {
13
+ return Math . pow ( this . radius , 3 ) * Math . PI * 4 / 3
14
+ }
15
+
16
+ surfaceArea = ( ) => {
17
+ return Math . pow ( this . radius , 2 ) * Math . PI * 4
18
+ }
19
+ }
Original file line number Diff line number Diff line change
1
+ import Sphere from '../Sphere'
2
+
3
+ const sphere = new Sphere ( 3 )
4
+
5
+ test ( 'The Volume of a sphere with base radius equal to 3 and height equal to 5' , ( ) => {
6
+ expect ( parseFloat ( sphere . volume ( ) . toFixed ( 2 ) ) ) . toEqual ( 113.1 )
7
+ } )
8
+
9
+ test ( 'The Surface Area of a sphere with base radius equal to 3 and height equal to 5' , ( ) => {
10
+ expect ( parseFloat ( sphere . surfaceArea ( ) . toFixed ( 2 ) ) ) . toEqual ( 113.1 )
11
+ } )
You can’t perform that action at this time.
0 commit comments