From 2a5a8b0a7cb032c1e78837ee442df1a95ad3bd9b Mon Sep 17 00:00:00 2001 From: Feror Date: Wed, 5 Feb 2025 11:40:29 +0100 Subject: [PATCH] =?UTF-8?q?Ajout=20des=20strat=C3=A9gies?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .DS_Store | Bin 6148 -> 6148 bytes src/.DS_Store | Bin 6148 -> 6148 bytes src/main/.DS_Store | Bin 0 -> 6148 bytes src/main/java/.DS_Store | Bin 0 -> 6148 bytes .../ChildrenMoviePriceCalculation.java | 12 ++++++++++++ .../MoviePriceCalculationStrategy.java | 5 +++++ .../NewReleaseMoviePriceCalculation.java | 8 ++++++++ .../RegularMoviePriceCalculation.java | 12 ++++++++++++ src/test/.DS_Store | Bin 0 -> 6148 bytes src/test/java/.DS_Store | Bin 0 -> 6148 bytes 10 files changed, 37 insertions(+) create mode 100644 src/main/.DS_Store create mode 100644 src/main/java/.DS_Store create mode 100644 src/main/java/movierental/MoviePriceCalculation/ChildrenMoviePriceCalculation.java create mode 100644 src/main/java/movierental/MoviePriceCalculation/MoviePriceCalculationStrategy.java create mode 100644 src/main/java/movierental/MoviePriceCalculation/NewReleaseMoviePriceCalculation.java create mode 100644 src/main/java/movierental/MoviePriceCalculation/RegularMoviePriceCalculation.java create mode 100644 src/test/.DS_Store create mode 100644 src/test/java/.DS_Store diff --git a/.DS_Store b/.DS_Store index c661d30147a5ec65f3ddd4b39b5143be904490b5..b47ebc017c7f72739c6d1d5acac4bb9502b340d1 100644 GIT binary patch delta 286 zcmZoMXfc@J&nUDpU^g?P&}1GK8K$4^leJi+*o}9cnaaNM*ko@OX*fFBM3zm#BU_Mx zZ0Z4^HlV4+3`GpdN#(@_5K|{>uwDvp--wVxwvbaIJ)I3^Ay{K>KEgswSriKy9&8R| Mb7S1h&heKY0P{OdqW}N^ delta 143 zcmZoMXfc@J&&aniU^g=(-((&Z878K{$yzK@>{=DWBg<>V&;ML2+1AvgA@BSLoa0~T>HsLFy2!{Frn+ybC1 U5D08O$mYg4v7ulyJI7ys0G$dV+W-In diff --git a/src/.DS_Store b/src/.DS_Store index 6dee77ab418c546b6c94cacc60cd87969b6792f4..796557fee4bcf20ab63874a785012dbf6062f959 100644 GIT binary patch delta 88 zcmZoMXffEJ#>iy-YqADolw1J=5U?qYhUce~9?p*dU hk$2^>$@>{4;q3d2(u@I{8JXDFCKj-5X6N|J4*)@;8WjKl delta 88 zcmZoMXffEJ#>m9|V6p~dl$-$r5U? zODiwZj``Og!`!xOn$@OTAy&W1dwY3&y&31%KjwE&!)Ln#l|}`q02QDDRN!AKfSzqu zUj%Zc0#twsd@EqzhXgmw1^Yn%bYSrj0BFDQZn*YY0+=iS%mw>EL|__JU{JM;7#eiM zQ>n`Z`@o=!`pLLYIa$kuqJBE!$;(A^AXh3t1;z@T$987@{}z5?{vVULqXJamPbr{P zvuqZ4rP5m`FK4|r!SCT;hFUMj;;k6ytr#0?#aDy6WY@^&f_uCC`zH>XFj*n2%HAD)l5c`rBKKsq>meA?o@ zzWkiUp(f+n8E^)i0cXG&_&Ec-vqg$h(X}(+3^)TD2IPE*Y=V_xQp`sORW1RD@{Gu0NUy^8vp 3) { + thisAmount += (daysRented - 3) * 1.5; + } + return thisAmount; + } +} diff --git a/src/main/java/movierental/MoviePriceCalculation/MoviePriceCalculationStrategy.java b/src/main/java/movierental/MoviePriceCalculation/MoviePriceCalculationStrategy.java new file mode 100644 index 0000000..729b221 --- /dev/null +++ b/src/main/java/movierental/MoviePriceCalculation/MoviePriceCalculationStrategy.java @@ -0,0 +1,5 @@ +package movierental.MoviePriceCalculation; + +public interface MoviePriceCalculationStrategy { + double calculatePrice(int daysRented); +} diff --git a/src/main/java/movierental/MoviePriceCalculation/NewReleaseMoviePriceCalculation.java b/src/main/java/movierental/MoviePriceCalculation/NewReleaseMoviePriceCalculation.java new file mode 100644 index 0000000..30a681f --- /dev/null +++ b/src/main/java/movierental/MoviePriceCalculation/NewReleaseMoviePriceCalculation.java @@ -0,0 +1,8 @@ +package movierental.MoviePriceCalculation; + +public class NewReleaseMoviePriceCalculation implements MoviePriceCalculationStrategy { + @Override + public double calculatePrice(int daysRented) { + return daysRented * 3; + } +} diff --git a/src/main/java/movierental/MoviePriceCalculation/RegularMoviePriceCalculation.java b/src/main/java/movierental/MoviePriceCalculation/RegularMoviePriceCalculation.java new file mode 100644 index 0000000..b108c71 --- /dev/null +++ b/src/main/java/movierental/MoviePriceCalculation/RegularMoviePriceCalculation.java @@ -0,0 +1,12 @@ +package movierental.MoviePriceCalculation; + +public class RegularMoviePriceCalculation implements MoviePriceCalculationStrategy { + @Override + public double calculatePrice(int daysRented) { + double thisAmount = 2; + if (daysRented > 2) { + thisAmount += (daysRented - 2) * 1.5; + } + return thisAmount; + } +} diff --git a/src/test/.DS_Store b/src/test/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..ba9cbd7a6b634a42acee0a5a2cd681d879cc548d GIT binary patch literal 6148 zcmeHKJ5Iwu5S;-Rk!VsPA)!42xq*pHLz@eb5DA15IStg?aU5>0ok%bNda%9 z+2@^^=e1wq@rZ~npSKH$}|i??BJ-*??+*KZKR!_>>$_mAswe*0to@Hl+7D^O`vfC^9nDnJGPr2^>LX0x+E zu2g^uP=Rj+?E6sQhHYXE^iKyC9|3^&8}Ei|pCy3B0>C!01|kB}paO%cIbvwg5ieQS zCf2~9i~7m9PoAtfp{SpZc=2-4Hjpb7paNqBPGdW_{(l2MGXIZB+))84@TU~erdxGO zyi)eo$;(- Ct|tfp literal 0 HcmV?d00001 diff --git a/src/test/java/.DS_Store b/src/test/java/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..7b03f0dbe639cafad31b81ccb1bcc66413f9dcd3 GIT binary patch literal 6148 zcmeHKOG*Pl5Uny<41_@3xsu*^fZSjV6^>FOpTo~-9%q7e}lXo4(Chlsgz>cE}*K-M)DbWaPqqZM6tEVPd% z$$dZ#we&!@$o(__y1pJyui9p5Y4@If_H5d!n$_(L9>v??@MQS-db-PdzVRl?$LG&4 zJG_@SU$c