source: ccr/trunk/nhin-vista/projects/NHINC/Current/Product/Production/Gateway/AggregatorLib/test/gov/hhs/fha/nhinc/gateway/aggregator/dao/AggMessageResultDaoTest.java@ 507

Last change on this file since 507 was 507, checked in by George Lilly, 15 years ago

NHIN gateway and adaptor for use on linux with VistA EHR and RPMS

File size: 6.6 KB
Line 
1/*
2 * To change this template, choose Tools | Templates
3 * and open the template in the editor.
4 */
5package gov.hhs.fha.nhinc.gateway.aggregator.dao;
6
7import gov.hhs.fha.nhinc.gateway.aggregator.model.AggMessageResult;
8import gov.hhs.fha.nhinc.gateway.aggregator.model.AggTransaction;
9import java.text.SimpleDateFormat;
10import java.util.Date;
11import java.util.HashSet;
12import org.junit.After;
13import org.junit.AfterClass;
14import org.junit.Before;
15import org.junit.BeforeClass;
16import org.junit.Test;
17import static org.junit.Assert.*;
18
19/**
20 *
21 * @author westbergl
22 */
23public class AggMessageResultDaoTest
24{
25
26 public AggMessageResultDaoTest()
27 {
28 }
29
30 @BeforeClass
31 public static void setUpClass() throws Exception
32 {
33 }
34
35 @AfterClass
36 public static void tearDownClass() throws Exception
37 {
38 }
39
40 @Before
41 public void setUp()
42 {
43 }
44
45 @After
46 public void tearDown()
47 {
48 }
49
50 /**
51 * Test of save method, of class AggMessageResultDao.
52 */
53 @Test
54 public void testSaveFindAndDelete()
55 {
56 System.out.println("testSaveFindByIdAndDelete");
57
58 System.out.println("Saving transaction with one MessageResult...");
59
60 // AggMessageResult must be associated with a Transaction... So
61 // let's create a transaction first.
62 //-------------------------------------------------------------
63 SimpleDateFormat oFormat = new SimpleDateFormat("MM/dd/yyyy.HH:mm:ss");
64 Date dtNow = new Date();
65
66 AggTransaction oAggTransaction = new AggTransaction();
67 oAggTransaction.setServiceType("docquery");
68 oAggTransaction.setTransactionStartTime(dtNow);
69 AggMessageResult oAggMessageResult = new AggMessageResult();
70 oAggMessageResult.setMessageKey("TheKey1");
71 oAggMessageResult.setMessageOutTime(oAggTransaction.getTransactionStartTime());
72 oAggMessageResult.setResponseMessage("TheMessage1");
73 oAggMessageResult.setResponseMessageType("AMessageType1");
74 oAggMessageResult.setResponseReceivedTime(dtNow);
75 oAggMessageResult.setAggTransaction(oAggTransaction);
76 HashSet<AggMessageResult> hMsgResults = new HashSet<AggMessageResult>();
77 hMsgResults.add(oAggMessageResult);
78 oAggTransaction.setAggMessageResults(hMsgResults);
79
80 AggTransactionDao oAggTransactionDao = new AggTransactionDao();
81 oAggTransactionDao.save(oAggTransaction);
82 assertNotNull("AggTransaction:", oAggTransaction);
83 String sTransactionId = oAggTransaction.getTransactionId();
84 assertNotNull("AggTransaction.getAggMessageResults:", oAggTransaction.getAggMessageResults());
85 assertEquals("AggMessageResults.size", oAggTransaction.getAggMessageResults().size(), 1);
86 AggMessageResult oMsgResult = oAggTransaction.getAggMessageResults().toArray(new AggMessageResult[0])[0];
87 String saMessageId[] = new String[2];
88 saMessageId[0] = oMsgResult.getMessageId();
89
90 System.out.println("Done saving transaction with one MessageResult...");
91
92 System.out.println("Saving a new MessageResult for the same transaction...");
93
94 // Add a MessageResult to the transaction
95 //---------------------------------------
96 oAggMessageResult = new AggMessageResult();
97 oAggMessageResult.setMessageKey("TheKey2");
98 oAggMessageResult.setMessageOutTime(oAggTransaction.getTransactionStartTime());
99 oAggMessageResult.setResponseMessage("TheMessage2");
100 oAggMessageResult.setResponseMessageType("AMessageType2");
101 oAggMessageResult.setResponseReceivedTime(dtNow);
102 oAggMessageResult.setAggTransaction(oAggTransaction);
103
104 AggMessageResultDao oAggMessageResultDao = new AggMessageResultDao();
105 oAggMessageResultDao.save(oAggMessageResult);
106 saMessageId[1] = oAggMessageResult.getMessageId();
107
108 System.out.println("Done saving a new MessageResult for the same transaction...");
109
110 System.out.println("Retrieving by message Id");
111
112 oAggMessageResult = oAggMessageResultDao.findById(saMessageId[0]);
113 assertNotNull("AggMessageResult:", oAggMessageResult);
114 assertEquals("MessageId", oAggMessageResult.getMessageId(), saMessageId[0]);
115 assertEquals("MessageKey", oAggMessageResult.getMessageKey(), "TheKey1");
116 assertEquals("MessageOutTime", oFormat.format(oAggMessageResult.getMessageOutTime()), oFormat.format(dtNow));
117 assertEquals("ResponseMessage", oAggMessageResult.getResponseMessage(), "TheMessage1");
118 assertEquals("ResponseMessageType", oAggMessageResult.getResponseMessageType(), "AMessageType1");
119 assertEquals("ResponseReceivedTime", oFormat.format(oAggMessageResult.getResponseReceivedTime()), oFormat.format(dtNow));
120
121 System.out.println("Done retrieving by message Id");
122
123 System.out.println("Updating AggMessageResult...");
124 oAggMessageResult.setResponseMessage("TheMessage1Updated");
125 oAggMessageResultDao.save(oAggMessageResult);
126
127 System.out.println("Updating AggMessageResult...");
128
129 System.out.println("Retrieving by message key");
130
131 try
132 {
133 oAggMessageResult = oAggMessageResultDao.findByMessageKey(sTransactionId, "TheKey1");
134 }
135 catch (Exception e)
136 {
137 fail("oAggMessageResultDao.findByMessageKey Exception occurred. " + e.getMessage());
138 }
139 assertNotNull("AggMessageResult:", oAggMessageResult);
140 assertEquals("MessageId", oAggMessageResult.getMessageId(), saMessageId[0]);
141 assertEquals("MessageKey", oAggMessageResult.getMessageKey(), "TheKey1");
142 assertEquals("MessageOutTime", oFormat.format(oAggMessageResult.getMessageOutTime()), oFormat.format(dtNow));
143 assertEquals("ResponseMessage", oAggMessageResult.getResponseMessage(), "TheMessage1Updated");
144 assertEquals("ResponseMessageType", oAggMessageResult.getResponseMessageType(), "AMessageType1");
145 assertEquals("ResponseReceivedTime", oFormat.format(oAggMessageResult.getResponseReceivedTime()), oFormat.format(dtNow));
146
147 System.out.println("Done retrieving by message key");
148
149 System.out.println("Deleting records that we created...");
150 oAggMessageResult = oAggMessageResultDao.findById(saMessageId[0]);
151 oAggMessageResultDao.delete(oAggMessageResult);
152
153 oAggTransaction = oAggTransactionDao.findById(sTransactionId);
154 oAggTransactionDao.delete(oAggTransaction);
155
156 System.out.println("Done deleting records that we created...");
157
158 System.out.println("Done with testSaveFindByIdAndDelete");
159 }
160
161}
Note: See TracBrowser for help on using the repository browser.