Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
M
m4102_tp3
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Theo Chilinski
m4102_tp3
Commits
bf32032e
Commit
bf32032e
authored
4 years ago
by
Theo Chilinski
Browse files
Options
Downloads
Patches
Plain Diff
Test pizza
parent
a9e20870
No related branches found
No related tags found
No related merge requests found
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java
+37
-2
37 additions, 2 deletions
src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java
src/test/java/fr/ulille/iut/pizzaland/PizzaRessourceTest.java
+159
-5
159 additions, 5 deletions
...test/java/fr/ulille/iut/pizzaland/PizzaRessourceTest.java
with
196 additions
and
7 deletions
src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java
+
37
−
2
View file @
bf32032e
...
...
@@ -3,6 +3,10 @@ package fr.ulille.iut.pizzaland.beans;
import
java.util.List
;
import
java.util.UUID
;
import
fr.ulille.iut.pizzaland.dto.IngredientCreateDto
;
import
fr.ulille.iut.pizzaland.dto.PizzaCreateDto
;
import
fr.ulille.iut.pizzaland.dto.PizzaDto
;
public
class
Pizza
{
private
UUID
id
=
UUID
.
randomUUID
();
...
...
@@ -28,7 +32,7 @@ public class Pizza {
return
name
;
}
public
List
<
Ingredient
>
get
Ingredient
s
()
{
public
List
<
Ingredient
>
get
Pizza
s
()
{
return
this
.
composition
;
}
...
...
@@ -40,10 +44,40 @@ public class Pizza {
this
.
name
=
name
;
}
public
void
set
Ingredient
s
(
List
<
Ingredient
>
compo
)
{
public
void
set
Pizza
s
(
List
<
Ingredient
>
compo
)
{
this
.
composition
=
compo
;
}
public
static
PizzaDto
toDto
(
Pizza
p
)
{
PizzaDto
dto
=
new
PizzaDto
();
dto
.
setId
(
p
.
getId
());
dto
.
setName
(
p
.
getName
());
return
dto
;
}
public
Pizza
fromDto
(
PizzaDto
dto
)
{
Pizza
pizza
=
new
Pizza
();
pizza
.
setId
(
dto
.
getId
());
pizza
.
setName
(
dto
.
getName
());
return
pizza
;
}
public
static
PizzaCreateDto
toCreateDto
(
Pizza
pizza
)
{
PizzaCreateDto
dto
=
new
PizzaCreateDto
();
dto
.
setName
(
pizza
.
getName
());
return
dto
;
}
public
static
Pizza
fromPizzaCreateDto
(
PizzaCreateDto
dto
)
{
Pizza
pizza
=
new
Pizza
();
pizza
.
setName
(
dto
.
getName
());
return
pizza
;
}
@Override
public
String
toString
()
{
StringBuilder
res
=
new
StringBuilder
(
"Pizza [id: "
+
id
+
" name: "
+
name
+
" ingrédients: "
);
...
...
@@ -91,4 +125,5 @@ public class Pizza {
return
false
;
return
true
;
}
}
This diff is collapsed.
Click to expand it.
src/test/java/fr/ulille/iut/pizzaland/PizzaRessourceTest.java
+
159
−
5
View file @
bf32032e
...
...
@@ -2,13 +2,167 @@ package fr.ulille.iut.pizzaland;
import
static
org
.
junit
.
Assert
.*;
import
java.util.List
;
import
java.util.UUID
;
import
java.util.logging.Logger
;
import
org.glassfish.jersey.test.JerseyTest
;
import
org.junit.After
;
import
org.junit.Before
;
import
org.junit.Test
;
public
class
PizzaRessourceTest
{
import
fr.ulille.iut.pizzaland.beans.Pizza
;
import
fr.ulille.iut.pizzaland.dao.PizzaDao
;
import
fr.ulille.iut.pizzaland.dto.PizzaCreateDto
;
import
fr.ulille.iut.pizzaland.dto.PizzaDto
;
import
jakarta.ws.rs.client.Entity
;
import
jakarta.ws.rs.core.Form
;
import
jakarta.ws.rs.core.GenericType
;
import
jakarta.ws.rs.core.MediaType
;
import
jakarta.ws.rs.core.Response
;
public
class
PizzaRessourceTest
extends
JerseyTest
{
private
static
final
Logger
LOGGER
=
Logger
.
getLogger
(
PizzaRessourceTest
.
class
.
getName
());
private
PizzaDao
dao
;
@Before
public
void
setEnvUp
()
{
dao
=
BDDFactory
.
buildDao
(
PizzaDao
.
class
);
dao
.
createPizzaTable
();
}
@After
public
void
tearEnvDown
()
throws
Exception
{
dao
.
dropTable
();
}
@Test
public
void
testGetEmptyList
()
{
Response
response
=
target
(
"/Pizzas"
).
request
().
get
();
assertEquals
(
Response
.
Status
.
OK
.
getStatusCode
(),
response
.
getStatus
());
List
<
PizzaDto
>
Pizzas
;
Pizzas
=
response
.
readEntity
(
new
GenericType
<
List
<
PizzaDto
>>()
{
});
assertEquals
(
0
,
Pizzas
.
size
());
}
@Test
public
void
testGetExistingPizza
()
{
Pizza
Pizza
=
new
Pizza
();
Pizza
.
setName
(
"Chorizo"
);
dao
.
insert
(
Pizza
);
Response
response
=
target
(
"/Pizzas"
).
path
(
Pizza
.
getId
().
toString
()).
request
(
MediaType
.
APPLICATION_JSON
).
get
();
assertEquals
(
Response
.
Status
.
OK
.
getStatusCode
(),
response
.
getStatus
());
Pizza
result
=
Pizza
.
fromDto
(
response
.
readEntity
(
PizzaDto
.
class
));
assertEquals
(
Pizza
,
result
);
}
@Test
public
void
testGetNotExistingPizza
()
{
Response
response
=
target
(
"/Pizzas"
).
path
(
UUID
.
randomUUID
().
toString
()).
request
().
get
();
assertEquals
(
Response
.
Status
.
NOT_FOUND
.
getStatusCode
(),
response
.
getStatus
());
}
@Test
public
void
testCreatePizza
()
{
PizzaCreateDto
PizzaCreateDto
=
new
PizzaCreateDto
();
PizzaCreateDto
.
setName
(
"Chorizo"
);
Response
response
=
target
(
"/Pizzas"
).
request
().
post
(
Entity
.
json
(
PizzaCreateDto
));
assertEquals
(
Response
.
Status
.
CREATED
.
getStatusCode
(),
response
.
getStatus
());
PizzaDto
returnedEntity
=
response
.
readEntity
(
PizzaDto
.
class
);
assertEquals
(
target
(
"/Pizzas/"
+
returnedEntity
.
getId
()).
getUri
(),
response
.
getLocation
());
assertEquals
(
returnedEntity
.
getName
(),
PizzaCreateDto
.
getName
());
}
@Test
public
void
testCreateSamePizza
()
{
Pizza
Pizza
=
new
Pizza
();
Pizza
.
setName
(
"Chorizo"
);
dao
.
insert
(
Pizza
);
PizzaCreateDto
PizzaCreateDto
=
Pizza
.
toCreateDto
(
Pizza
);
Response
response
=
target
(
"/Pizzas"
).
request
().
post
(
Entity
.
json
(
PizzaCreateDto
));
assertEquals
(
Response
.
Status
.
CONFLICT
.
getStatusCode
(),
response
.
getStatus
());
}
@Test
public
void
testCreatePizzaWithoutName
()
{
PizzaCreateDto
PizzaCreateDto
=
new
PizzaCreateDto
();
Response
response
=
target
(
"/Pizzas"
).
request
().
post
(
Entity
.
json
(
PizzaCreateDto
));
assertEquals
(
Response
.
Status
.
NOT_ACCEPTABLE
.
getStatusCode
(),
response
.
getStatus
());
}
@Test
public
void
testDeleteExistingPizza
()
{
Pizza
Pizza
=
new
Pizza
();
Pizza
.
setName
(
"Chorizo"
);
dao
.
insert
(
Pizza
);
Response
response
=
target
(
"/Pizzas/"
).
path
(
Pizza
.
getId
().
toString
()).
request
().
delete
();
assertEquals
(
Response
.
Status
.
ACCEPTED
.
getStatusCode
(),
response
.
getStatus
());
Pizza
result
=
dao
.
findById
(
Pizza
.
getId
());
assertEquals
(
result
,
null
);
}
@Test
public
void
testDeleteNotExistingPizza
()
{
Response
response
=
target
(
"/Pizzas"
).
path
(
UUID
.
randomUUID
().
toString
()).
request
().
delete
();
assertEquals
(
Response
.
Status
.
NOT_FOUND
.
getStatusCode
(),
response
.
getStatus
());
}
@Test
public
void
testGetPizzaName
()
{
Pizza
Pizza
=
new
Pizza
();
Pizza
.
setName
(
"Chorizo"
);
dao
.
insert
(
Pizza
);
Response
response
=
target
(
"Pizzas"
).
path
(
Pizza
.
getId
().
toString
()).
path
(
"name"
).
request
().
get
();
assertEquals
(
Response
.
Status
.
OK
.
getStatusCode
(),
response
.
getStatus
());
assertEquals
(
"Chorizo"
,
response
.
readEntity
(
String
.
class
));
}
@Test
public
void
testGetNotExistingPizzaName
()
{
Response
response
=
target
(
"Pizzas"
).
path
(
UUID
.
randomUUID
().
toString
()).
path
(
"name"
).
request
().
get
();
assertEquals
(
Response
.
Status
.
NOT_FOUND
.
getStatusCode
(),
response
.
getStatus
());
}
@Test
public
void
test
()
{
fail
(
"Not yet implemented"
);
public
void
testCreateWithForm
()
{
Form
form
=
new
Form
();
form
.
param
(
"name"
,
"chorizo"
);
Entity
<
Form
>
formEntity
=
Entity
.
entity
(
form
,
MediaType
.
APPLICATION_FORM_URLENCODED_TYPE
);
Response
response
=
target
(
"Pizzas"
).
request
().
post
(
formEntity
);
assertEquals
(
Response
.
Status
.
CREATED
.
getStatusCode
(),
response
.
getStatus
());
String
location
=
response
.
getHeaderString
(
"Location"
);
String
id
=
location
.
substring
(
location
.
lastIndexOf
(
'/'
)
+
1
);
Pizza
result
=
dao
.
findById
(
UUID
.
fromString
(
id
));
assertNotNull
(
result
);
}
}
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment