From 167e5296ca62b4dee335327f2f3261fca7473c3d Mon Sep 17 00:00:00 2001
From: Mail LADJALI <mail.ladjali.etu@univ-lille.fr>
Date: Mon, 5 May 2025 14:35:49 +0200
Subject: [PATCH] tp07
---
.DS_Store | Bin 8196 -> 8196 bytes
src/.DS_Store | Bin 8196 -> 8196 bytes
src/tp07/.DS_Store | Bin 0 -> 6148 bytes
.../BidirectionalPhoneBookTest.java | 189 ++++++++++++++++++
src/tp07/tpOO-07-res/BreedingFarmTest.java | 164 +++++++++++++++
src/tp07/tpOO-07-res/DuckTest.java | 56 ++++++
src/tp07/tpOO-07-res/GooseTest.java | 56 ++++++
src/tp07/tpOO-07-res/HenTest.java | 56 ++++++
src/tp07/tpOO-07-res/ProPhoneNumberTest.java | 73 +++++++
.../tpOO-07-res/UniversityDepartment.java | 16 ++
src/tp07/tpOO-07-res/tp07-res.jar | Bin 0 -> 4246 bytes
11 files changed, 610 insertions(+)
create mode 100644 src/tp07/.DS_Store
create mode 100644 src/tp07/tpOO-07-res/BidirectionalPhoneBookTest.java
create mode 100644 src/tp07/tpOO-07-res/BreedingFarmTest.java
create mode 100644 src/tp07/tpOO-07-res/DuckTest.java
create mode 100644 src/tp07/tpOO-07-res/GooseTest.java
create mode 100644 src/tp07/tpOO-07-res/HenTest.java
create mode 100644 src/tp07/tpOO-07-res/ProPhoneNumberTest.java
create mode 100644 src/tp07/tpOO-07-res/UniversityDepartment.java
create mode 100644 src/tp07/tpOO-07-res/tp07-res.jar
diff --git a/.DS_Store b/.DS_Store
index b34ff9fb7ab7bac80218603e75eb3e94dcaa52b3..ba74a64a02c66ace044f28447659e60b3738a64c 100644
GIT binary patch
delta 364
zcmZp1XmOa}&#BJ9z`)4BAiywrqOkDBnr`-q4T785IaoOAK{6~1dJO3dnG7X4>4w3{
z`MCuQVDND-0|NtGE;rxBB`GIAiGhKE!~DN%+V*3|98u*{@X8ltAeqe$wt$%-X|s^P
zMMft1pvi?oG9t)Uh}{*L*0JW8BUA!mHnIdiilGb%lNSoeZtfK-Ws+;jVqjokW+-MT
vVn{|dc441{{*q&p6+|W2piDbaNhT(R&5@#JOq<yyzOhVh6{#ghyD<|0t*T%r
delta 274
zcmZp1XmOa}FRaYKz`)4BAi$8HoRpKF#K6EHurYBd`(}0y77j+`%`F1g87KP-vrd*3
zl$=~C#KW;No3pxk%`wNxhC(uvSE38t6ylpKAt<+*Rk)OCvcE99V=+S!Lvn7uiwo3n
z4tJ%ER&mRYIWjOXFf%}9Q}D=6ju(;Id`DE9X<|XeW_F2hEWQkI05^at#+L#B#^gy|
diff --git a/src/.DS_Store b/src/.DS_Store
index 07b7d1bec1546013598ce9f2d89ad1661d54332f..f086cb122c11ee14147895d8d9f5e1404bf27b11 100644
GIT binary patch
delta 214
zcmZp1XmOa}C7U^hRb%4Qw`7Zzp%2J^`u1kW*=PYw{2b~ew=cX3I|$xmWnVBqjs
za!T#u{bP;{3=Av`B@6`&1`Ou8`6+ni3o<4j6p~~#pDZ9Kx;a23f@w3m#5b17vxHP=
IWJ4$u0R7xNqyPW_
delta 42
ycmZp1XmOa}&nUMsU^hRb+-4pD7naTIMI)FtHpDY-W|#QJvN=X<HRHyH7)AgqBn}k-
diff --git a/src/tp07/.DS_Store b/src/tp07/.DS_Store
new file mode 100644
index 0000000000000000000000000000000000000000..fd14c3e0de183ddebdc748cd5541fab8614f699b
GIT binary patch
literal 6148
zcmZQzU|@7AO)+F(5MW?n;9!8zOq>i@0Z1N%F(jFwA|RR(Y=$m_0fRY%E<+JRDpYQi
z8r&fOiaTzG5{3c>e+GXB<oGL2DlaZb%E?b+U|`suRFIQdTw-8wjgg6&g_Vt+gPnt$
zBQ`iAzdX1kv81%vDX}OT#0$yK&q;!@6O+O+Q_JH8M4a>UN)j{kQj0)Jf-_T6lM;(!
z!ZY(y^2?p_OY>5S!Fr(*9Go1S@dD!2)#fHT3Z^E;wK@vbmPQ6T3MOVIwY8iaqRRT#
zLGjr+xq11Wkg#QBgwPDUP#Q*cF)%RT@LXANQC?1dUOFf%z?6^DqaiRF0;3@?QbGV)
zY;tgq6c3O3b2J1-LxAWI0F@64&<2tNlx~2~ASnh$1_n^`5k#}V42ARq7(ikmtsokt
z6-0xyGBAQzU^Bp485kKLS{cFJ5Rg7lmjpzEwKFg>fVDF)GJv%+z}k9@5bX?%5bX?%
z&>jjSL^}f`L^}f`L_5rRqx5J9jD`R-1ehVT0I2?VWnjS7|A(j=B}YSGGz5la2r#m^
z1iLtaD`o8d1J$*l`ZNJ54XXV?)iEQeo<@j)t70a|fT9Fc7*ySZw1Q}GRm{i$smVth
P0<aJorAI@6{viMW-kM8#
literal 0
HcmV?d00001
diff --git a/src/tp07/tpOO-07-res/BidirectionalPhoneBookTest.java b/src/tp07/tpOO-07-res/BidirectionalPhoneBookTest.java
new file mode 100644
index 0000000..fc2aad5
--- /dev/null
+++ b/src/tp07/tpOO-07-res/BidirectionalPhoneBookTest.java
@@ -0,0 +1,189 @@
+package tpOO.tp07;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+public class BidirectionalPhoneBookTest {
+ public String s1, s2, s3;
+ public String name1, name2, name3;
+ public ProPhoneNumber ppn1, ppn2, ppn3, ppn4, ppn5;
+ public BidirectionalPhoneBook bpb1;
+
+ @BeforeEach
+ void initialization() {
+ s1 = "1234";
+ s2 = "1111";
+ s3 = "2222";
+ name1 = "alice";
+ name2 = "bruno";
+ name3 = "clément";
+ ppn1 = new ProPhoneNumber(s1, UniversityDepartment.IUT);
+ ppn2 = new ProPhoneNumber(s1, UniversityDepartment.FST);
+ ppn3 = new ProPhoneNumber(s2, UniversityDepartment.IUT);
+ ppn4 = new ProPhoneNumber(s1, UniversityDepartment.IUT);
+ ppn5 = new ProPhoneNumber(s3, UniversityDepartment.IUT);
+ bpb1 = new BidirectionalPhoneBook();
+ }
+
+ @Test
+ void testAdd() {
+ assertEquals(0, bpb1.getNbEntries());
+ assertTrue(bpb1.add(name1, UniversityDepartment.IUT, s1));
+ assertEquals(1, bpb1.getNbEntries());
+ assertFalse(bpb1.add(name1, UniversityDepartment.IUT, s1));
+ assertEquals(1, bpb1.getNbEntries());
+ assertFalse(bpb1.add(name2, UniversityDepartment.IUT, s1));
+ assertEquals(1, bpb1.getNbEntries());
+ assertFalse(bpb1.add(name1, UniversityDepartment.IUT, s2));
+ assertEquals(1, bpb1.getNbEntries());
+ assertTrue(bpb1.add(name2, UniversityDepartment.IUT, s2));
+ assertEquals(2, bpb1.getNbEntries());
+ }
+
+ @Test
+ void testAlreadyRegistered() {
+ assertEquals(0, bpb1.getNbEntries());
+ assertFalse(bpb1.alreadyRegistered(name1));
+ assertFalse(bpb1.alreadyRegistered(UniversityDepartment.IUT.getDiallingCode()+s1));
+ assertFalse(bpb1.alreadyRegistered(name2));
+ assertFalse(bpb1.alreadyRegistered(UniversityDepartment.IUT.getDiallingCode()+s2));
+ assertTrue(bpb1.add(name1, UniversityDepartment.IUT, s1));
+ assertEquals(1, bpb1.getNbEntries());
+ assertTrue(bpb1.alreadyRegistered(name1));
+ assertTrue(bpb1.alreadyRegistered(UniversityDepartment.IUT.getDiallingCode()+s1));
+ assertFalse(bpb1.alreadyRegistered(name2));
+ assertFalse(bpb1.alreadyRegistered(UniversityDepartment.IUT.getDiallingCode()+s2));
+ assertTrue(bpb1.add(name2, UniversityDepartment.IUT, s2));
+ assertEquals(2, bpb1.getNbEntries());
+ assertTrue(bpb1.alreadyRegistered(name1));
+ assertTrue(bpb1.alreadyRegistered(UniversityDepartment.IUT.getDiallingCode()+s1));
+ assertTrue(bpb1.alreadyRegistered(name2));
+ assertTrue(bpb1.alreadyRegistered(UniversityDepartment.IUT.getDiallingCode()+s2));
+ }
+
+ @Test
+ void testGetProPhoneNumberFromName() {
+ assertEquals(0, bpb1.getNbEntries());
+ assertNull(bpb1.getProPhoneNumberFromName(name1));
+ assertNull(bpb1.getProPhoneNumberFromName(name2));
+ assertTrue(bpb1.add(name1, UniversityDepartment.IUT, s1));
+ assertEquals(1, bpb1.getNbEntries());
+ assertEquals(ppn1, bpb1.getProPhoneNumberFromName(name1));
+ assertNull(bpb1.getProPhoneNumberFromName(name2));
+ assertTrue(bpb1.add(name2, UniversityDepartment.FST, s1));
+ assertEquals(2, bpb1.getNbEntries());
+ assertEquals(ppn1, bpb1.getProPhoneNumberFromName(name1));
+ assertEquals(ppn2, bpb1.getProPhoneNumberFromName(name2));
+ }
+
+ @Test
+ void testGetNameFromFiveDigits() {
+ assertEquals(0, bpb1.getNbEntries());
+ assertNull(bpb1.getNameFromFiveDigits(UniversityDepartment.IUT.getDiallingCode()+s1));
+ assertNull(bpb1.getNameFromFiveDigits(UniversityDepartment.FST.getDiallingCode()+s1));
+ assertTrue(bpb1.add(name1, UniversityDepartment.IUT, s1));
+ assertEquals(1, bpb1.getNbEntries());
+ assertEquals(name1, bpb1.getNameFromFiveDigits(UniversityDepartment.IUT.getDiallingCode()+s1));
+ assertNull(bpb1.getNameFromFiveDigits(UniversityDepartment.FST.getDiallingCode()+s1));
+ assertTrue(bpb1.add(name2, UniversityDepartment.FST, s1));
+ assertEquals(2, bpb1.getNbEntries());
+ assertEquals(name1, bpb1.getNameFromFiveDigits(UniversityDepartment.IUT.getDiallingCode()+s1));
+ assertEquals(name2, bpb1.getNameFromFiveDigits(UniversityDepartment.FST.getDiallingCode()+s1));
+ }
+
+ @Test
+ void testListing() {
+ String resultIUT = UniversityDepartment.IUT.getLabelLong() + System.getProperty("line.separator");
+ String resultFST = UniversityDepartment.FST.getLabelLong() + System.getProperty("line.separator");
+ String resultFH = UniversityDepartment.FH.getLabelLong() + System.getProperty("line.separator");
+ assertEquals(0, bpb1.getNbEntries());
+ assertEquals(resultIUT, bpb1.listing(UniversityDepartment.IUT));
+ assertEquals(resultFST, bpb1.listing(UniversityDepartment.FST));
+ assertEquals(resultFH, bpb1.listing(UniversityDepartment.FH));
+ assertTrue(bpb1.add(name1, UniversityDepartment.IUT, s1));
+ resultIUT += name1 + ":" + ppn1.internToString() + System.getProperty("line.separator");
+ assertEquals(1, bpb1.getNbEntries());
+ assertEquals(resultIUT, bpb1.listing(UniversityDepartment.IUT));
+ assertEquals(resultFST, bpb1.listing(UniversityDepartment.FST));
+ assertEquals(resultFH, bpb1.listing(UniversityDepartment.FH));
+ assertTrue(bpb1.add(name2, UniversityDepartment.FST, s1));
+ resultFST += name2 + ":" + ppn2.internToString() + System.getProperty("line.separator");
+ assertEquals(2, bpb1.getNbEntries());
+ assertEquals(resultIUT, bpb1.listing(UniversityDepartment.IUT));
+ assertEquals(resultFST, bpb1.listing(UniversityDepartment.FST));
+ assertEquals(resultFH, bpb1.listing(UniversityDepartment.FH));
+ assertTrue(bpb1.add(name3, UniversityDepartment.IUT, s3));
+ resultIUT = UniversityDepartment.IUT.getLabelLong() + System.getProperty("line.separator")+ name3 + ":" + ppn5.internToString() + System.getProperty("line.separator") + name1 + ":" + ppn1.internToString() + System.getProperty("line.separator");
+ assertEquals(3, bpb1.getNbEntries());
+ assertEquals(resultIUT, bpb1.listing(UniversityDepartment.IUT));
+ assertEquals(resultFST, bpb1.listing(UniversityDepartment.FST));
+ assertEquals(resultFH, bpb1.listing(UniversityDepartment.FH));
+ }
+
+ @Test
+ void testListing2() {
+ // empty listing
+ String result = "";
+ for(int i=0; i<UniversityDepartment.values().length; i++) {
+ UniversityDepartment ud = UniversityDepartment.values()[i];
+ result += ud.getLabelLong() + System.getProperty("line.separator");
+ }
+ assertEquals(0, bpb1.getNbEntries());
+ assertEquals(result, bpb1.listing());
+ // first addition (IUT)
+ assertTrue(bpb1.add(name1, UniversityDepartment.IUT, s1));
+ {result = "";
+ for(int i=0; i<UniversityDepartment.IUT.ordinal(); i++) {
+ UniversityDepartment ud = UniversityDepartment.values()[i];
+ result += ud.getLabelLong() + System.getProperty("line.separator");
+ }
+ result += UniversityDepartment.IUT.getLabelLong() + System.getProperty("line.separator");
+ result += name1 + ":" + ppn1.internToString() + System.getProperty("line.separator");
+ for(int i=UniversityDepartment.IUT.ordinal()+1; i<UniversityDepartment.values().length; i++) {
+ UniversityDepartment ud = UniversityDepartment.values()[i];
+ result += ud.getLabelLong() + System.getProperty("line.separator");
+ }}
+ assertEquals(1, bpb1.getNbEntries());
+ assertEquals(result, bpb1.listing());
+ // second addition (FST)
+ assertTrue(bpb1.add(name2, UniversityDepartment.FST, s1));
+ {result = "";
+ for(int i=0; i<UniversityDepartment.FST.ordinal(); i++) {
+ UniversityDepartment ud = UniversityDepartment.values()[i];
+ result += ud.getLabelLong() + System.getProperty("line.separator");
+ }
+ result += UniversityDepartment.FST.getLabelLong() + System.getProperty("line.separator");
+ result += name2 + ":" + ppn2.internToString() + System.getProperty("line.separator");
+ result += UniversityDepartment.IUT.getLabelLong() + System.getProperty("line.separator");
+ result += name1 + ":" + ppn1.internToString() + System.getProperty("line.separator");
+ for(int i=UniversityDepartment.IUT.ordinal()+1; i<UniversityDepartment.values().length; i++) {
+ UniversityDepartment ud = UniversityDepartment.values()[i];
+ result += ud.getLabelLong() + System.getProperty("line.separator");
+ }}
+ assertEquals(2, bpb1.getNbEntries());
+ assertEquals(result, bpb1.listing());
+ // third addition (IUT)
+ assertTrue(bpb1.add(name3, UniversityDepartment.IUT, s3));
+ {result = "";
+ for(int i=0; i<UniversityDepartment.FST.ordinal(); i++) {
+ UniversityDepartment ud = UniversityDepartment.values()[i];
+ result += ud.getLabelLong() + System.getProperty("line.separator");
+ }
+ result += UniversityDepartment.FST.getLabelLong() + System.getProperty("line.separator");
+ result += name2 + ":" + ppn2.internToString() + System.getProperty("line.separator");
+ result += UniversityDepartment.IUT.getLabelLong() + System.getProperty("line.separator");
+ result += name3 + ":" + ppn5.internToString() + System.getProperty("line.separator");
+ result += name1 + ":" + ppn1.internToString() + System.getProperty("line.separator");
+ for(int i=UniversityDepartment.IUT.ordinal()+1; i<UniversityDepartment.values().length; i++) {
+ UniversityDepartment ud = UniversityDepartment.values()[i];
+ result += ud.getLabelLong() + System.getProperty("line.separator");
+ }}
+ assertEquals(3, bpb1.getNbEntries());
+ assertEquals(result, bpb1.listing());
+ }
+}
diff --git a/src/tp07/tpOO-07-res/BreedingFarmTest.java b/src/tp07/tpOO-07-res/BreedingFarmTest.java
new file mode 100644
index 0000000..49f8df8
--- /dev/null
+++ b/src/tp07/tpOO-07-res/BreedingFarmTest.java
@@ -0,0 +1,164 @@
+package tpOO.tp07;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertSame;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+public class BreedingFarmTest {
+ int id1, id2, id3, id4, id5, id6, size1;
+ double w1, w2, w3;
+ Duck d1, d2;
+ Hen h1, h2;
+ Goose g1, g2;
+ BreedingFarm bf1, bf2;
+
+ @BeforeEach
+ void testInitialization() {
+ id1=1; id2=2; id3=10; id4=20; id5=100; id6=200;
+ size1=3;
+ w1=3.0; w2=6.0; w3=15.0;
+ d1 = new Duck(id1, w1);
+ d2 = new Duck(id2, w2);
+ h1 = new Hen(id3, w1);
+ h2 = new Hen(id4, w2);
+ g1 = new Goose(id5, w2);
+ g2 = new Goose(id6, w3);
+ bf1 = new BreedingFarm(size1);
+ bf2 = new BreedingFarm();
+ }
+
+ @Test
+ void testAdd() {
+ // bf1 --> élevage taille max = size1
+ // bf2 --> élevage taille max par défaut
+ assertEquals(0, bf1.getFarmSize());
+ assertEquals(0, bf2.getFarmSize());
+ bf1.add(d1); bf2.add(d1);
+ assertEquals(1, bf1.getFarmSize());
+ assertEquals(1, bf2.getFarmSize());
+ bf1.add(h1); bf2.add(h1);
+ assertEquals(2, bf1.getFarmSize());
+ assertEquals(2, bf2.getFarmSize());
+ bf1.add(g1); bf2.add(g1);
+ assertEquals(3, bf1.getFarmSize());
+ assertEquals(3, bf2.getFarmSize());
+ bf1.add(d2); bf2.add(d2);
+ assertEquals(3, bf1.getFarmSize());
+ assertEquals(4, bf2.getFarmSize());
+ }
+
+ @Test
+ void testGetNbDuck() {
+ assertEquals(0, bf1.getNbDuck());
+ bf1.add(d1);
+ assertEquals(1, bf1.getFarmSize());
+ assertEquals(1, bf1.getNbDuck());
+ bf1.add(h1);
+ assertEquals(2, bf1.getFarmSize());
+ assertEquals(1, bf1.getNbDuck());
+ bf1.add(d2);
+ assertEquals(3, bf1.getFarmSize());
+ assertEquals(2, bf1.getNbDuck());
+ }
+
+ @Test
+ void testSearch() {
+ bf1.add(d1); bf1.add(h1); bf1.add(g1);
+ assertEquals(3, bf1.getFarmSize());
+ assertSame(d1, bf1.search(id1));
+ assertNull(bf1.search(id2));
+ assertSame(h1, bf1.search(id3));
+ assertNull(bf1.search(id4));
+ assertSame(g1, bf1.search(id5));
+ assertNull(bf1.search(id6));
+ }
+
+ @Test
+ void testGetDuck() {
+ bf1.add(d1); bf1.add(h1); bf1.add(d2);
+ assertEquals(3, bf1.getFarmSize());
+ assertEquals(2, bf1.getNbDuck());
+ assertSame(d1, bf1.getDuck(1));
+ assertSame(d2, bf1.getDuck(2));
+ assertNull(bf1.getDuck(3));
+ }
+
+ @Test
+ void testUpdateWeight() {
+ bf1.add(d1); bf1.add(h1); bf1.add(g1);
+ assertEquals(3, bf1.getFarmSize());
+ assertEquals(w1, d1.getWeight());
+ bf1.updateWeight(id1, w2);
+ assertEquals(w2, d1.getWeight());
+ }
+
+ @Test
+ void testIsFatEnough() {
+ assertFalse(d1.isFatEnough());
+ assertTrue(d2.isFatEnough());
+ assertFalse(h1.isFatEnough());
+ assertTrue(h2.isFatEnough());
+ assertFalse(g1.isFatEnough());
+ assertTrue(g2.isFatEnough());
+ }
+
+ @Test
+ void testPotentialProfit() {
+ double profit = 0.0;
+ assertEquals(0, bf2.getFarmSize());
+ assertEquals(profit, bf2.potentialProfit());
+ bf2.add(d1); // too thin
+ assertEquals(1, bf2.getFarmSize());
+ assertEquals(profit, bf2.potentialProfit());
+ bf2.add(d2); // can be slaughtered
+ profit += d2.getWeight() * d2.getPriceKg();
+ assertEquals(2, bf2.getFarmSize());
+ assertEquals(profit, bf2.potentialProfit());
+ bf2.add(h1); // too thin
+ assertEquals(3, bf2.getFarmSize());
+ assertEquals(profit, bf2.potentialProfit());
+ bf2.add(h2); // can be slaughtered
+ profit += h2.getWeight() * h2.getPriceKg();
+ assertEquals(4, bf2.getFarmSize());
+ assertEquals(profit, bf2.potentialProfit());
+ bf2.add(g1); // too thin
+ assertEquals(5, bf2.getFarmSize());
+ assertEquals(profit, bf2.potentialProfit());
+ bf2.add(g2); // can be slaughtered
+ profit += g2.getWeight() * g2.getPriceKg();
+ assertEquals(6, bf2.getFarmSize());
+ assertEquals(profit, bf2.potentialProfit());
+ }
+
+ @Test
+ void testSlaughtering() {
+ List<Poultry> toSlaughter = new ArrayList<Poultry>();
+ bf2.add(d1); bf2.add(h1);
+ assertEquals(2, bf2.getFarmSize());
+ toSlaughter = bf2.slaughtering();
+ assertEquals(2, bf2.getFarmSize());
+ assertEquals(0, toSlaughter.size());
+ bf2.add(d2);
+ assertEquals(3, bf2.getFarmSize());
+ toSlaughter = bf2.slaughtering();
+ assertEquals(2, bf2.getFarmSize());
+ assertEquals(1, toSlaughter.size());
+ assertEquals(d2, toSlaughter.get(0));
+ bf2.add(d2); bf2.add(h2);
+ assertEquals(4, bf2.getFarmSize());
+ toSlaughter = bf2.slaughtering();
+ assertEquals(2, bf2.getFarmSize());
+ assertEquals(2, toSlaughter.size());
+ assertEquals(d2, toSlaughter.get(0));
+ assertEquals(h2, toSlaughter.get(1));
+ }
+
+}
diff --git a/src/tp07/tpOO-07-res/DuckTest.java b/src/tp07/tpOO-07-res/DuckTest.java
new file mode 100644
index 0000000..4b8dbb1
--- /dev/null
+++ b/src/tp07/tpOO-07-res/DuckTest.java
@@ -0,0 +1,56 @@
+package tpOO.tp07;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+public class DuckTest {
+ public int id1, id2, id3;
+ public double w1, w2, w3;
+ public Duck d1, d2, d3;
+
+ @BeforeEach
+ void testInitialization() {
+ id1=10; id2=20; id3=30;
+ w1=1.0; w2=2.0; w3=3.0;
+ d1 = new Duck(id1, w1);
+ d2 = new Duck(id2, w2);
+ d3 = new Duck(id3, w3);
+ }
+
+ @Test
+ void testGetIdentity() {
+ assertEquals(id1, d1.getIdentity());
+ assertEquals(id2, d2.getIdentity());
+ assertEquals(id3, d3.getIdentity());
+ }
+
+ @Test
+ void testSetIdentity() {
+ assertEquals(id1, d1.getIdentity());
+ d1.setIdentity(id2);
+ assertEquals(id2, d1.getIdentity());
+ }
+
+ @Test
+ void testGetWeight() {
+ assertEquals(w1, d1.getWeight());
+ assertEquals(w2, d2.getWeight());
+ assertEquals(w3, d3.getWeight());
+ }
+
+ @Test
+ void testSetWeight() {
+ assertEquals(w1, d1.getWeight());
+ d1.setWeight(w2);
+ assertEquals(w2, d1.getWeight());
+ }
+
+ @Test
+ void testGetPrice() {
+ assertEquals(w1*d1.getPriceKg(), d1.getPrice());
+ assertEquals(w2*d2.getPriceKg(), d2.getPrice());
+ assertEquals(w3*d3.getPriceKg(), d3.getPrice());
+ }
+}
diff --git a/src/tp07/tpOO-07-res/GooseTest.java b/src/tp07/tpOO-07-res/GooseTest.java
new file mode 100644
index 0000000..1ee4b04
--- /dev/null
+++ b/src/tp07/tpOO-07-res/GooseTest.java
@@ -0,0 +1,56 @@
+package tpOO.tp07;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+public class GooseTest {
+ public int id1, id2, id3;
+ public double w1, w2, w3;
+ public Goose g1, g2, g3;
+
+ @BeforeEach
+ void testInitialization() {
+ id1=10; id2=20; id3=30;
+ w1=1.0; w2=2.0; w3=3.0;
+ g1 = new Goose(id1, w1);
+ g2 = new Goose(id2, w2);
+ g3 = new Goose(id3, w3);
+ }
+
+ @Test
+ void testGetIdentity() {
+ assertEquals(id1, g1.getIdentity());
+ assertEquals(id2, g2.getIdentity());
+ assertEquals(id3, g3.getIdentity());
+ }
+
+ @Test
+ void testSetIdentity() {
+ assertEquals(id1, g1.getIdentity());
+ g1.setIdentity(id2);
+ assertEquals(id2, g1.getIdentity());
+ }
+
+ @Test
+ void testGetWeight() {
+ assertEquals(w1, g1.getWeight());
+ assertEquals(w2, g2.getWeight());
+ assertEquals(w3, g3.getWeight());
+ }
+
+ @Test
+ void testSetWeight() {
+ assertEquals(w1, g1.getWeight());
+ g1.setWeight(w2);
+ assertEquals(w2, g1.getWeight());
+ }
+
+ @Test
+ void testGetPrice() {
+ assertEquals(w1*g1.getPriceKg(), g1.getPrice());
+ assertEquals(w2*g2.getPriceKg(), g2.getPrice());
+ assertEquals(w3*g3.getPriceKg(), g3.getPrice());
+ }
+}
diff --git a/src/tp07/tpOO-07-res/HenTest.java b/src/tp07/tpOO-07-res/HenTest.java
new file mode 100644
index 0000000..29d883c
--- /dev/null
+++ b/src/tp07/tpOO-07-res/HenTest.java
@@ -0,0 +1,56 @@
+package tpOO.tp07;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+public class HenTest {
+ public int id1, id2, id3;
+ public double w1, w2, w3;
+ public Hen h1, h2, h3;
+
+ @BeforeEach
+ void testInitialization() {
+ id1=10; id2=20; id3=30;
+ w1=1.0; w2=2.0; w3=3.0;
+ h1 = new Hen(id1, w1);
+ h2 = new Hen(id2, w2);
+ h3 = new Hen(id3, w3);
+ }
+
+ @Test
+ void testGetIdentity() {
+ assertEquals(id1, h1.getIdentity());
+ assertEquals(id2, h2.getIdentity());
+ assertEquals(id3, h3.getIdentity());
+ }
+
+ @Test
+ void testSetIdentity() {
+ assertEquals(id1, h1.getIdentity());
+ h1.setIdentity(id2);
+ assertEquals(id2, h1.getIdentity());
+ }
+
+ @Test
+ void testGetWeight() {
+ assertEquals(w1, h1.getWeight());
+ assertEquals(w2, h2.getWeight());
+ assertEquals(w3, h3.getWeight());
+ }
+
+ @Test
+ void testSetWeight() {
+ assertEquals(w1, h1.getWeight());
+ h1.setWeight(w2);
+ assertEquals(w2, h1.getWeight());
+ }
+
+ @Test
+ void testGetPrice() {
+ assertEquals(w1*h1.getPriceKg(), h1.getPrice());
+ assertEquals(w2*h2.getPriceKg(), h2.getPrice());
+ assertEquals(w3*h3.getPriceKg(), h3.getPrice());
+ }
+}
diff --git a/src/tp07/tpOO-07-res/ProPhoneNumberTest.java b/src/tp07/tpOO-07-res/ProPhoneNumberTest.java
new file mode 100644
index 0000000..18bc73c
--- /dev/null
+++ b/src/tp07/tpOO-07-res/ProPhoneNumberTest.java
@@ -0,0 +1,73 @@
+package tpOO.tp07;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+public class ProPhoneNumberTest {
+ public String s1, s2;
+ public ProPhoneNumber un, deux, trois, quatre;
+
+ @BeforeEach
+ void initialization() {
+ s1 = "1234";
+ s2 = "1111";
+ un = new ProPhoneNumber(s1, UniversityDepartment.IUT);
+ deux = new ProPhoneNumber(s1, UniversityDepartment.FST);
+ trois = new ProPhoneNumber(s2, UniversityDepartment.IUT);
+ quatre = new ProPhoneNumber(s1, UniversityDepartment.IUT);
+ }
+
+ @Test
+ void testEquals() {
+ assertTrue(un.equals(un));
+ assertFalse(un.equals(deux));
+ assertFalse(un.equals(trois));
+ assertTrue(un.equals(quatre));
+ assertFalse(deux.equals(trois));
+ assertFalse(deux.equals(quatre));
+ }
+
+ @Test
+ void testEquals2() {
+ assertTrue(un.equals(s1));
+ assertFalse(un.equals(s2));
+ assertTrue(deux.equals(s1));
+ assertFalse(deux.equals(s2));
+ }
+
+ @Test
+ void testInternToString() {
+ String res = "31234(" + UniversityDepartment.IUT.getLabelShort() + ")";
+ assertEquals(res, un.internToString());
+ res = "21234(" + UniversityDepartment.FST.getLabelShort() + ")";
+ assertEquals(res, deux.internToString());
+ res = "31111(" + UniversityDepartment.IUT.getLabelShort() + ")";
+ assertEquals(res, trois.internToString());
+ res = "31234(" + UniversityDepartment.IUT.getLabelShort() + ")";
+ assertEquals(res, quatre.internToString());
+ }
+
+ @Test
+ void testExternToString() {
+ String res = "+33.3.20.03.12.34 (" + UniversityDepartment.IUT.getLabelLong() + ")";
+ assertEquals(res, un.externToString());
+ res = "+33.3.20.02.12.34 (" + UniversityDepartment.FST.getLabelLong() + ")";
+ assertEquals(res, deux.externToString());
+ res = "+33.3.20.03.11.11 (" + UniversityDepartment.IUT.getLabelLong() + ")";
+ assertEquals(res, trois.externToString());
+ res = "+33.3.20.03.12.34 (" + UniversityDepartment.IUT.getLabelLong() + ")";
+ assertEquals(res, quatre.externToString());
+ }
+
+ @Test
+ void testGetDepartment() {
+ assertEquals(UniversityDepartment.IUT, un.getDepartment());
+ assertEquals(UniversityDepartment.FST, deux.getDepartment());
+ assertEquals(UniversityDepartment.IUT, trois.getDepartment());
+ assertEquals(UniversityDepartment.IUT, quatre.getDepartment());
+ }
+}
diff --git a/src/tp07/tpOO-07-res/UniversityDepartment.java b/src/tp07/tpOO-07-res/UniversityDepartment.java
new file mode 100644
index 0000000..ba3e636
--- /dev/null
+++ b/src/tp07/tpOO-07-res/UniversityDepartment.java
@@ -0,0 +1,16 @@
+package tp07; // à adapter éventuellement selon la structure de votre projet
+
+public enum UniversityDepartment {
+ F3S(1,"Faculté des Sciences de Santé et du Sport"),
+ FST(2,"Faculté des Sciences et Technologies"),
+ IUT(3,"Institut Universitaire de Technologies"),
+ FSJPS(4,"Faculté des Sciences Juridiques, Politiques et Sociales"),
+ FSEST(5,"Faculté des Sciences Économiques, Sociales et des Territoires"),
+ FH(6,"Faculté des Humanités"),
+ FLCS(7,"Faculté des Langues, Cultures et Sociétés"),
+ FPSEF(8,"Faculté de Psychologie, Sciences de l’Education et de la Formation");
+
+ public UniversityDepartment(int DialingCode, String LabelShort, String LabelLong){
+
+ }
+}
diff --git a/src/tp07/tpOO-07-res/tp07-res.jar b/src/tp07/tpOO-07-res/tp07-res.jar
new file mode 100644
index 0000000000000000000000000000000000000000..6926c42ee68ba1e984e142fe33e8dd818aae5833
GIT binary patch
literal 4246
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
Q6d4p50@)cD^f^I10JOk}6aWAK
literal 0
HcmV?d00001
--
GitLab