From f6dceec053d61e12d98306f31364425c3f3e19c1 Mon Sep 17 00:00:00 2001 From: haerong22 Date: Wed, 13 Apr 2022 15:16:56 +0900 Subject: [PATCH] refactoring : comments - introduce assertion --- .../_43_introduce_assertion/Customer.java | 19 +++++++++++++++++++ .../_before/Customer.java | 18 ++++++++++++++++++ .../_43_introduce_assertion/CustomerTest.java | 15 +++++++++++++++ 3 files changed, 52 insertions(+) create mode 100644 refactoring/src/main/java/com/example/refactoring/_24_comments/_43_introduce_assertion/Customer.java create mode 100644 refactoring/src/main/java/com/example/refactoring/_24_comments/_43_introduce_assertion/_before/Customer.java create mode 100644 refactoring/src/test/java/com/example/refactoring/_24_comments/_43_introduce_assertion/CustomerTest.java diff --git a/refactoring/src/main/java/com/example/refactoring/_24_comments/_43_introduce_assertion/Customer.java b/refactoring/src/main/java/com/example/refactoring/_24_comments/_43_introduce_assertion/Customer.java new file mode 100644 index 00000000..bf0134b6 --- /dev/null +++ b/refactoring/src/main/java/com/example/refactoring/_24_comments/_43_introduce_assertion/Customer.java @@ -0,0 +1,19 @@ +package com.example.refactoring._24_comments._43_introduce_assertion; + +public class Customer { + + private Double discountRate; + + public double applyDiscount(double amount) { + return (this.discountRate != null) ? amount - (this.discountRate * amount) : amount; + } + + public Double getDiscountRate() { + return discountRate; + } + + public void setDiscountRate(Double discountRate) { + assert discountRate != null && discountRate > 0; + this.discountRate = discountRate; + } +} diff --git a/refactoring/src/main/java/com/example/refactoring/_24_comments/_43_introduce_assertion/_before/Customer.java b/refactoring/src/main/java/com/example/refactoring/_24_comments/_43_introduce_assertion/_before/Customer.java new file mode 100644 index 00000000..4d716a49 --- /dev/null +++ b/refactoring/src/main/java/com/example/refactoring/_24_comments/_43_introduce_assertion/_before/Customer.java @@ -0,0 +1,18 @@ +package com.example.refactoring._24_comments._43_introduce_assertion._before; + +public class Customer { + + private Double discountRate; + + public double applyDiscount(double amount) { + return (this.discountRate != null) ? amount - (this.discountRate * amount) : amount; + } + + public Double getDiscountRate() { + return discountRate; + } + + public void setDiscountRate(Double discountRate) { + this.discountRate = discountRate; + } +} diff --git a/refactoring/src/test/java/com/example/refactoring/_24_comments/_43_introduce_assertion/CustomerTest.java b/refactoring/src/test/java/com/example/refactoring/_24_comments/_43_introduce_assertion/CustomerTest.java new file mode 100644 index 00000000..95fa2ffc --- /dev/null +++ b/refactoring/src/test/java/com/example/refactoring/_24_comments/_43_introduce_assertion/CustomerTest.java @@ -0,0 +1,15 @@ +package com.example.refactoring._24_comments._43_introduce_assertion; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class CustomerTest { + + @Test + void setDiscountRate() { + Customer customer = new Customer(); + customer.setDiscountRate(-10d); + } + +} \ No newline at end of file