I hereby claim:
- I am alicanakkus on github.
- I am aakkus (https://keybase.io/aakkus) on keybase.
- I have a public key ASBM0Gm2Sop9p_PfvLjV4rTDUnNvPnrt7uXtdLo_6oj4uAo
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
package io.happy.customer | |
import spock.lang.Specification | |
import spock.lang.Unroll | |
class OrderCommissionCalculatorTest extends Specification { | |
def orderCommissionCalculator = new OrderCommissionCalculator() | |
@Unroll |
package io.happy.customer | |
import spock.lang.Specification | |
class OrderCreateFacadeTest extends Specification { | |
def orderCommissionCalculator = Mock(OrderCommissionCalculator) | |
def orderCreateFacade = new OrderCreateFacade(orderCommissionCalculator) | |
void "should not create order when price is zero"() { |
package io.happy.customer | |
import spock.lang.Specification | |
class OrderCreateFacadeTest extends Specification { | |
def orderCommissionCalculator = Mock(OrderCommissionCalculator) | |
def orderCreateFacade = new OrderCreateFacade(orderCommissionCalculator) | |
void "should create order and verify interactions"() { |
class OrderCreateFacadeTest extends Specification { | |
def orderCommissionCalculator = Mock(OrderCommissionCalculator) | |
def orderCreateFacade = new OrderCreateFacade(orderCommissionCalculator) | |
void "should create order"() { | |
given: | |
def userId = 998 | |
def paymentMethod = "CARD" | |
def price = 100 |
class OrderCreateFacade { | |
OrderCommissionCalculator orderCommissionCalculator | |
OrderCreateFacade(OrderCommissionCalculator orderCommissionCalculator) { | |
this.orderCommissionCalculator = orderCommissionCalculator | |
} | |
Order create(Long userId, String paymentMethod, BigDecimal price) { | |
return new Order().tap { |
class OrderCommissionCalculatorTest extends Specification { | |
def orderCommissionCalculator = new OrderCommissionCalculator() | |
void "should calculate card payment order commission"() { | |
given: "card payment and price is 100" | |
def paymentType = "CARD" | |
def price = 100 | |
when: "calculate card payment commission" |
class OrderCommissionCalculatorTest extends Specification { | |
def orderCommissionCalculator = new OrderCommissionCalculator() | |
@Unroll | |
void "should calculate #paymentType order commission as #expectedAmount when price is #price"() { | |
expect: | |
expectedAmount == orderCommissionCalculator.calculate(paymentType, price) | |
where: |
class OrderCommissionCalculatorTest extends Specification { | |
def orderCommissionCalculator = new OrderCommissionCalculator() | |
void "should calculate order commission amount"() { | |
expect: | |
expectedAmount == orderCommissionCalculator.calculate(paymentType, price) | |
where: | |
paymentType | price | expectedAmount |
spring: | |
application: | |
name: my-api | |
profiles: | |
active: test | |
--- | |
spring: | |
profiles: test | |
jpa: |