From b7368cb6dbca187efaf136137128e11e052d0ef8 Mon Sep 17 00:00:00 2001 From: Anshul Bansal Date: Sun, 22 Sep 2019 22:26:47 +0300 Subject: [PATCH] BAEL-3191 - review changes --- .../com/baeldung/category/BaeldungCategory.groovy | 4 ++-- .../com/baeldung/category/NumberCategory.groovy | 9 +++++---- .../com/baeldung/category/CategoryUnitTest.groovy | 12 +++++++----- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/core-groovy-2/src/main/groovy/com/baeldung/category/BaeldungCategory.groovy b/core-groovy-2/src/main/groovy/com/baeldung/category/BaeldungCategory.groovy index 366dd182c8..479c39699f 100644 --- a/core-groovy-2/src/main/groovy/com/baeldung/category/BaeldungCategory.groovy +++ b/core-groovy-2/src/main/groovy/com/baeldung/category/BaeldungCategory.groovy @@ -10,8 +10,8 @@ class BaeldungCategory { return capitalizedStr } - public static Number square(Number self) { - return self*self; + public static double toThePower(Number self, Number exponent) { + return Math.pow(self, exponent); } } diff --git a/core-groovy-2/src/main/groovy/com/baeldung/category/NumberCategory.groovy b/core-groovy-2/src/main/groovy/com/baeldung/category/NumberCategory.groovy index cf0e5282fc..ccf2ed519b 100644 --- a/core-groovy-2/src/main/groovy/com/baeldung/category/NumberCategory.groovy +++ b/core-groovy-2/src/main/groovy/com/baeldung/category/NumberCategory.groovy @@ -4,13 +4,14 @@ import groovy.lang.Category @Category(Number) class NumberCategory { - + public Number cube() { return this*this*this } - - public Number toThePower(Number exponent) { - return Math.pow(this, exponent) + + public int divideWithRoundUp(BigDecimal divisor, boolean isRoundUp) { + def mathRound = isRoundUp ? BigDecimal.ROUND_UP : BigDecimal.ROUND_DOWN + return (int)new BigDecimal(this).divide(divisor, 0, mathRound) } } diff --git a/core-groovy-2/src/test/groovy/com/baeldung/category/CategoryUnitTest.groovy b/core-groovy-2/src/test/groovy/com/baeldung/category/CategoryUnitTest.groovy index 2e10efbe03..a1f67b1e2e 100644 --- a/core-groovy-2/src/test/groovy/com/baeldung/category/CategoryUnitTest.groovy +++ b/core-groovy-2/src/test/groovy/com/baeldung/category/CategoryUnitTest.groovy @@ -82,17 +82,19 @@ class CategoryUnitTest extends GroovyTestCase { } } - void test_whenUsingBaeldungCategory_thenSquareNumber() { + void test_whenUsingBaeldungCategory_thenOperationsOnNumber() { use (BaeldungCategory) { - assert 50.square() == 2500 - assert 20.01.square() == 400.4001 + assert 50.toThePower(2) == 2500 + assert 2.4.toThePower(4) == 33.1776 } } - void test_whenUsingNumberUtils_thenCubeNumber() { + void test_whenUsingNumberCategory_thenOperationsOnNumber() { use (NumberCategory) { assert 3.cube() == 27 - assert 2.4.toThePower(4) == 33.1776 + assert 25.divideWithRoundUp(6, true) == 5 + assert 120.23.divideWithRoundUp(6.1, true) == 20 + assert 150.9.divideWithRoundUp(12.1, false) == 12 } }