Skip to content

Commit 059bf0b

Browse files
author
Reza Rahman
committed
Rest test working.
1 parent 53f674e commit 059bf0b

3 files changed

Lines changed: 168 additions & 71 deletions

File tree

actionbazaar/src/main/java/com/actionbazaar/interfaces/rest/BidRestService.java

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -18,34 +18,34 @@
1818
@Path("/bids")
1919
public class BidRestService {
2020

21-
@EJB
22-
private BidService bidService;
23-
24-
@POST
25-
@Consumes("application/json")
26-
@Produces("application/json")
27-
public Bid addBid(Bid bid) {
28-
return bidService.addBid(bid);
29-
}
30-
31-
@GET
32-
@Path("{id}")
33-
@Produces("application/json")
34-
public Bid getBid(@PathParam("id") Long id) {
35-
return bidService.getBid(id);
36-
}
37-
38-
@PUT
39-
@Path("{id}")
40-
@Consumes("application/json")
41-
public void updateBid(@PathParam("id") Long id, Bid bid) {
42-
bidService.updateBid(bid);
43-
}
44-
45-
@DELETE
46-
@Path("{id}")
47-
public void deleteBid(@PathParam("id") Long id) {
48-
Bid bid = bidService.getBid(id);
49-
bidService.deleteBid(bid);
50-
}
21+
@EJB
22+
private BidService bidService;
23+
24+
@POST
25+
@Consumes("application/json")
26+
@Produces("application/json")
27+
public Bid addBid(Bid bid) {
28+
return bidService.addBid(bid);
29+
}
30+
31+
@GET
32+
@Path("{id}")
33+
@Produces("application/json")
34+
public Bid getBid(@PathParam("id") Long id) {
35+
return bidService.getBid(id);
36+
}
37+
38+
@PUT
39+
@Path("{id}")
40+
@Consumes("application/json")
41+
public void updateBid(@PathParam("id") Long id, Bid bid) {
42+
bidService.updateBid(bid);
43+
}
44+
45+
@DELETE
46+
@Path("{id}")
47+
public void deleteBid(@PathParam("id") Long id) {
48+
Bid bid = bidService.getBid(id);
49+
bidService.deleteBid(bid);
50+
}
5151
}
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
package com.actionbazaar.interfaces.rest;
2+
3+
import com.actionbazaar.application.BidService;
4+
import com.actionbazaar.application.DefaultBidService;
5+
import com.actionbazaar.domain.Bid;
6+
import com.actionbazaar.repository.BidDao;
7+
import com.actionbazaar.repository.DefaultBidDao;
8+
import javax.ws.rs.client.ClientBuilder;
9+
import javax.ws.rs.client.Entity;
10+
import javax.ws.rs.client.WebTarget;
11+
import org.jboss.arquillian.container.test.api.Deployment;
12+
import org.jboss.arquillian.junit.Arquillian;
13+
import org.jboss.arquillian.junit.InSequence;
14+
import org.jboss.shrinkwrap.api.ShrinkWrap;
15+
import org.jboss.shrinkwrap.api.asset.EmptyAsset;
16+
import org.jboss.shrinkwrap.api.spec.WebArchive;
17+
import static org.junit.Assert.assertEquals;
18+
import static org.junit.Assert.assertNull;
19+
import org.junit.Test;
20+
import org.junit.runner.RunWith;
21+
22+
@RunWith(Arquillian.class)
23+
public class BidRestServiceTest {
24+
25+
private static Long bidId;
26+
27+
@Deployment
28+
public static WebArchive createDeployment() {
29+
return ShrinkWrap
30+
.create(WebArchive.class, "actionbazaar-test.war")
31+
.addClasses(BidRestService.class, RestConfiguration.class,
32+
BidService.class, DefaultBidService.class,
33+
BidDao.class, DefaultBidDao.class, Bid.class)
34+
.addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml")
35+
.addAsWebInfResource("test-weblogic.xml", "weblogic.xml")
36+
.addAsResource("test-persistence.xml",
37+
"META-INF/persistence.xml");
38+
}
39+
40+
@Test
41+
@InSequence(1)
42+
public void testAddBid() {
43+
WebTarget target = ClientBuilder.newClient()
44+
.target("http://localhost:7001/actionbazaar-test/rest/bids");
45+
// Save a new bid.
46+
Bid bid = new Bid();
47+
48+
bid.setBidder("nrahman");
49+
bid.setItem("Test item");
50+
bid.setAmount(130.75);
51+
52+
bid = target.request("application/json").post(Entity.json(bid), Bid.class);
53+
54+
// Make sure it was correctly saved.
55+
bidId = bid.getId();
56+
57+
bid = target.path("{id}").resolveTemplate("id", bidId)
58+
.request("application/json").get(Bid.class);
59+
60+
assertEquals("nrahman", bid.getBidder());
61+
assertEquals("Test item", bid.getItem());
62+
assertEquals(new Double(130.75), bid.getAmount());
63+
}
64+
65+
@Test
66+
@InSequence(2)
67+
public void testUpdateBid() {
68+
WebTarget target = ClientBuilder.newClient()
69+
.target("http://localhost:7001/actionbazaar-test/rest/bids/{id}")
70+
.resolveTemplate("id", bidId);
71+
72+
// Update bid.
73+
Bid bid = target.request("application/json").get(Bid.class);
74+
75+
bid.setAmount(150.50);
76+
77+
target.request().put(Entity.json(bid));
78+
79+
// Make sure bid was updated.
80+
bid = target.request("application/json").get(Bid.class);
81+
82+
assertEquals("nrahman", bid.getBidder());
83+
assertEquals("Test item", bid.getItem());
84+
assertEquals(new Double(150.50), bid.getAmount());
85+
}
86+
87+
@Test
88+
@InSequence(3)
89+
public void testDeleteBid() {
90+
WebTarget target = ClientBuilder.newClient()
91+
.target("http://localhost:7001/actionbazaar-test/rest/bids/{id}")
92+
.resolveTemplate("id", bidId);
93+
94+
target.request().delete();
95+
96+
assertNull(target.request("application/json").get(Bid.class));
97+
}
98+
}

actionbazaar/src/test/java/com/actionbazaar/interfaces/web/AddBidTest.java

Lines changed: 40 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -21,59 +21,58 @@
2121
import com.actionbazaar.application.BidService;
2222
import com.actionbazaar.application.DefaultBidService;
2323
import com.actionbazaar.domain.Bid;
24-
import com.actionbazaar.interfaces.web.AddBid;
2524
import com.actionbazaar.repository.BidDao;
2625
import com.actionbazaar.repository.DefaultBidDao;
2726

2827
@RunWith(Arquillian.class)
2928
public class AddBidTest {
3029

31-
@Deployment
32-
public static Archive<?> createDeployment() {
33-
return ShrinkWrap
34-
.create(WebArchive.class, "test.war")
35-
.addClasses(BidService.class, DefaultBidService.class,
36-
BidDao.class, DefaultBidDao.class, Bid.class,
37-
AddBid.class)
38-
.addAsWebInfResource("test-web.xml", "web.xml")
39-
.addAsWebResource("add_bid.xhtml", "add_bid.xhtml")
40-
.addAsWebResource("confirm_bid.xhtml", "confirm_bid.xhtml")
41-
.addAsWebInfResource("test-faces-config.xml",
42-
"faces-config.xml")
43-
.addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml")
44-
.addAsResource("test-persistence.xml",
45-
"META-INF/persistence.xml");
46-
}
30+
@Deployment
31+
public static Archive<?> createDeployment() {
32+
return ShrinkWrap
33+
.create(WebArchive.class, "test.war")
34+
.addClasses(BidService.class, DefaultBidService.class,
35+
BidDao.class, DefaultBidDao.class, Bid.class,
36+
AddBid.class)
37+
.addAsWebInfResource("test-web.xml", "web.xml")
38+
.addAsWebResource("add_bid.xhtml", "add_bid.xhtml")
39+
.addAsWebResource("confirm_bid.xhtml", "confirm_bid.xhtml")
40+
.addAsWebInfResource("test-faces-config.xml",
41+
"faces-config.xml")
42+
.addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml")
43+
.addAsResource("test-persistence.xml",
44+
"META-INF/persistence.xml");
45+
}
4746

48-
@Test
49-
public void testAddBid() throws Exception {
50-
JSFSession session = new JSFSession("/add_bid.jsf");
47+
@Test
48+
public void testAddBid() throws Exception {
49+
JSFSession session = new JSFSession("/add_bid.jsf");
5150

52-
assertTrue(Environment.is12Compatible());
53-
assertTrue(Environment.is20Compatible());
54-
assertEquals(2, Environment.getJSFMajorVersion());
55-
assertEquals(0, Environment.getJSFMinorVersion());
51+
assertTrue(Environment.is12Compatible());
52+
assertTrue(Environment.is20Compatible());
53+
assertEquals(2, Environment.getJSFMajorVersion());
54+
assertEquals(0, Environment.getJSFMinorVersion());
5655

57-
JSFServerSession server = session.getJSFServerSession();
56+
JSFServerSession server = session.getJSFServerSession();
5857

59-
assertEquals(ProjectStage.Development, server.getFacesContext()
60-
.getApplication().getProjectStage());
58+
assertEquals(ProjectStage.Development, server.getFacesContext()
59+
.getApplication().getProjectStage());
6160

62-
assertEquals(null, server.getManagedBeanValue("#{bid.item}"));
63-
assertEquals(null, server.getManagedBeanValue("#{bid.bidder}"));
64-
assertEquals(null, server.getManagedBeanValue("#{bid.amount}"));
61+
assertEquals(null, server.getManagedBeanValue("#{bid.item}"));
62+
assertEquals(null, server.getManagedBeanValue("#{bid.bidder}"));
63+
assertEquals(null, server.getManagedBeanValue("#{bid.amount}"));
6564

66-
JSFClientSession client = session.getJSFClientSession();
65+
JSFClientSession client = session.getJSFClientSession();
6766

68-
client.setValue("item", "Test Item");
69-
client.setValue("bidder", "Test Bidder");
70-
client.setValue("amount", "101.50");
71-
client.click("add");
67+
client.setValue("item", "Test Item");
68+
client.setValue("bidder", "Test Bidder");
69+
client.setValue("amount", "101.50");
70+
client.click("add");
7271

73-
assertEquals("/confirm_bid.xhtml", server.getCurrentViewID());
72+
assertEquals("/confirm_bid.xhtml", server.getCurrentViewID());
7473

75-
assertEquals("Test Item", server.getManagedBeanValue("#{bid.item}"));
76-
assertEquals("Test Bidder", server.getManagedBeanValue("#{bid.bidder}"));
77-
assertEquals(101.50, server.getManagedBeanValue("#{bid.amount}"));
78-
}
79-
}
74+
assertEquals("Test Item", server.getManagedBeanValue("#{bid.item}"));
75+
assertEquals("Test Bidder", server.getManagedBeanValue("#{bid.bidder}"));
76+
assertEquals(101.50, server.getManagedBeanValue("#{bid.amount}"));
77+
}
78+
}

0 commit comments

Comments
 (0)