Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
tok-chef
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Antoine HAZEBROUCK
tok-chef
Commits
df3b1ed0
Commit
df3b1ed0
authored
Sep 13, 2024
by
Antoine Hazebrouck
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
etoiles selon les victoires
parent
85b848a9
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
73 additions
and
13 deletions
+73
-13
FileConcours.java
src/main/java/imt/concours/FileConcours.java
+6
-4
Chef.java
src/main/java/imt/personnes/Chef.java
+20
-3
FileConcoursTest.java
src/test/java/imt/concours/FileConcoursTest.java
+6
-6
ChefTest.java
src/test/java/imt/personnes/ChefTest.java
+41
-0
No files found.
src/main/java/imt/concours/FileConcours.java
View file @
df3b1ed0
...
...
@@ -3,6 +3,7 @@ package imt.concours;
import
java.util.ArrayList
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.Queue
;
import
java.util.stream.Stream
;
...
...
@@ -29,12 +30,13 @@ public class FileConcours {
}
// true is ca a marché, false si le concours actuel est pas bien fini
public
boolean
passerAuConcoursSuivant
()
{
public
Optional
<
Chef
>
passerAuConcoursSuivant
()
{
if
(
concoursActuel
().
estTermine
())
{
concoursTermines
.
add
(
concours
.
poll
());
return
true
;
Concours
current
=
concours
.
poll
();
concoursTermines
.
add
(
current
);
return
Optional
.
of
(
current
.
classement
().
get
(
0
).
getChef
());
}
else
{
return
false
;
return
Optional
.
empty
()
;
}
}
...
...
src/main/java/imt/personnes/Chef.java
View file @
df3b1ed0
...
...
@@ -2,24 +2,28 @@ package imt.personnes;
import
java.util.List
;
import
java.util.Set
;
import
java.util.concurrent.atomic.AtomicInteger
;
import
imt.ingredients.Plat
;
import
lombok.AccessLevel
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.Getter
;
import
lombok.ToString
;
@ToString
(
callSuper
=
true
)
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
public
class
Chef
extends
Person
{
private
final
int
etoiles
;
@Getter
(
value
=
AccessLevel
.
NONE
)
private
final
AtomicInteger
victoires
;
private
final
Specialite
specialite
;
private
final
Set
<
Plat
>
plats
;
public
Chef
(
int
id
,
String
nom
,
String
prenom
,
String
telephone
,
Genre
genre
,
int
etoil
es
,
Specialite
specialite
,
public
Chef
(
int
id
,
String
nom
,
String
prenom
,
String
telephone
,
Genre
genre
,
int
victoir
es
,
Specialite
specialite
,
Set
<
Plat
>
plats
)
{
super
(
id
,
nom
,
prenom
,
telephone
,
genre
);
this
.
etoiles
=
etoiles
;
this
.
victoires
=
new
AtomicInteger
(
victoires
)
;
this
.
specialite
=
specialite
;
this
.
plats
=
plats
;
}
...
...
@@ -30,4 +34,17 @@ public class Chef extends Person {
return
Integer
.
valueOf
(
left
.
getCalories
()).
compareTo
(
Integer
.
valueOf
(
right
.
getCalories
()));
}).
toList
();
}
public
int
getEtoiles
()
{
int
victoires
=
this
.
victoires
.
intValue
();
if
(
victoires
<
1
)
{
return
0
;
}
else
if
(
victoires
<
3
)
{
return
1
;
}
else
if
(
victoires
<
5
)
{
return
2
;
}
else
{
return
3
;
}
}
}
src/test/java/imt/concours/FileConcoursTest.java
View file @
df3b1ed0
...
...
@@ -56,15 +56,15 @@ public class FileConcoursTest {
void
concours_termines
()
{
Concours
CONCOURS_1
=
CONCOURS_1
();
FileConcours
fileConcours
=
new
FileConcours
(
CONCOURS_1
,
CONCOURS_2
(),
CONCOURS_3
());
assertThat
(
fileConcours
.
passerAuConcoursSuivant
()).
is
False
();
forcer
_la_fin_du_c
oncours
(
CONCOURS_1
);
assertThat
(
fileConcours
.
passerAuConcoursSuivant
()).
is
Empty
();
forcer
LaFinDuC
oncours
(
CONCOURS_1
);
assertThat
(
fileConcours
.
passerAuConcoursSuivant
()).
is
True
();
assertThat
(
fileConcours
.
passerAuConcoursSuivant
()).
is
Present
();
assertThat
(
fileConcours
.
concoursTermines
()).
isEqualTo
(
List
.
of
(
CONCOURS_1
));
}
void
forcer_la_fin_du_c
oncours
(
Concours
concours
)
{
public
static
void
forcerLaFinDuC
oncours
(
Concours
concours
)
{
assertThat
(
concours
.
estTermine
()).
isFalse
();
concours
.
noter
(
PROPOSITION_1
,
10
);
concours
.
noter
(
PROPOSITION_2
,
20
);
...
...
@@ -80,9 +80,9 @@ public class FileConcoursTest {
Concours
CONCOURS_2
=
CONCOURS_2
();
FileConcours
fileConcours
=
new
FileConcours
(
CONCOURS_1
,
CONCOURS_2
,
CONCOURS_3
());
forcer
_la_fin_du_c
oncours
(
CONCOURS_1
);
forcer
LaFinDuC
oncours
(
CONCOURS_1
);
fileConcours
.
passerAuConcoursSuivant
();
forcer
_la_fin_du_c
oncours
(
CONCOURS_2
);
forcer
LaFinDuC
oncours
(
CONCOURS_2
);
fileConcours
.
passerAuConcoursSuivant
();
assertThat
(
fileConcours
.
concoursAuquelAParticipe
(
CHEF_1
)).
isEqualTo
(
List
.
of
(
CONCOURS_1
,
CONCOURS_2
));
...
...
src/test/java/imt/personnes/ChefTest.java
View file @
df3b1ed0
package
imt
.
personnes
;
import
static
imt
.
concours
.
ConcoursTest
.
CHEF_1
;
import
static
imt
.
concours
.
FileConcoursTest
.
CONCOURS_1
;
import
static
imt
.
concours
.
FileConcoursTest
.
CONCOURS_2
;
import
static
imt
.
concours
.
FileConcoursTest
.
CONCOURS_3
;
import
static
imt
.
concours
.
FileConcoursTest
.
forcerLaFinDuConcours
;
import
static
imt
.
ingredients
.
IngredientTest
.
AUTRE
;
import
static
imt
.
ingredients
.
IngredientTest
.
OIGNON
;
import
static
imt
.
ingredients
.
IngredientTest
.
STEAK
;
...
...
@@ -10,6 +15,8 @@ import java.util.Set;
import
org.junit.jupiter.api.Test
;
import
imt.concours.Concours
;
import
imt.concours.FileConcours
;
import
imt.ingredients.Ingredient
;
import
imt.ingredients.Plat
;
...
...
@@ -34,4 +41,38 @@ public class ChefTest {
plat2
));
}
@Test
void
augmentation_d_etoiles_pour_une_victoire
()
{
Concours
CONCOURS_1
=
CONCOURS_1
();
Concours
CONCOURS_2
=
CONCOURS_2
();
FileConcours
fileConcours
=
new
FileConcours
(
CONCOURS_1
,
CONCOURS_2
,
CONCOURS_3
());
forcerLaFinDuConcours
(
CONCOURS_1
);
Chef
gagnant
=
fileConcours
.
passerAuConcoursSuivant
().
get
();
// assertThat(gagnant).isEqualTo(CHEF_1);
// assertThat(CHEF_1.getEtoiles()).isEqualTo(1);
// TODO
assertThat
(
false
).
isTrue
();
}
@Test
void
etoiles_selon_victoires
()
{
Chef
zeroEtoile
=
new
Chef
(
1
,
"null"
,
"null"
,
"null"
,
Genre
.
HOMME
,
0
,
null
,
null
);
assertThat
(
zeroEtoile
.
getEtoiles
()).
isZero
();
Chef
uneEtoile
=
new
Chef
(
1
,
"null"
,
"null"
,
"null"
,
Genre
.
HOMME
,
1
,
null
,
null
);
assertThat
(
uneEtoile
.
getEtoiles
()).
isOne
();
Chef
deuxEtoiles
=
new
Chef
(
1
,
"null"
,
"null"
,
"null"
,
Genre
.
HOMME
,
3
,
null
,
null
);
assertThat
(
deuxEtoiles
.
getEtoiles
()).
isEqualTo
(
2
);
Chef
troisEtoile
=
new
Chef
(
1
,
"null"
,
"null"
,
"null"
,
Genre
.
HOMME
,
5
,
null
,
null
);
assertThat
(
troisEtoile
.
getEtoiles
()).
isEqualTo
(
3
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment