File tree Expand file tree Collapse file tree 2 files changed +30
-0
lines changed Expand file tree Collapse file tree 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