View Javadoc

1   package ca.uhn.hl7v2.hoh.encoder;
2   
3   import static org.junit.Assert.*;
4   
5   import org.junit.Test;
6   
7   import ca.uhn.hl7v2.AcknowledgmentCode;
8   import ca.uhn.hl7v2.hoh.encoder.ResponseCode;
9   import ca.uhn.hl7v2.model.Message;
10  import ca.uhn.hl7v2.model.v25.message.ADT_A05;
11  import ca.uhn.hl7v2.parser.DefaultXMLParser;
12  
13  public class ResponseCodeTest {
14  
15  	@Test
16  	public void testDetectEr7() throws Exception {
17  		
18  		String message = "MSH|^~\\&|||||200803051508||ADT^A31|2|P|2.5\r"
19  				+ "EVN||200803051509\r"
20  				+ "PID|||ZZZZZZ83M64Z148R^^^SSN^SSN^^20070103\r";
21  		ADT_A05 a05 = new ADT_A05();
22  		a05.parse(message);
23  		
24  		Message ack = a05.generateACK(AcknowledgmentCode.AA, null);
25  		String ackString = ack.encode();
26  		assertEquals(ResponseCode.HTTP_200_OK, ResponseCode.detect(ackString));
27  		
28  		ack = a05.generateACK(AcknowledgmentCode.AE, null);
29  		ackString = ack.encode();
30  		assertEquals(ResponseCode.HTTP_200_OK, ResponseCode.detect(ackString));
31  		
32  		ack = a05.generateACK(AcknowledgmentCode.AR, null);
33  		ackString = ack.encode();
34  		assertEquals(ResponseCode.HTTP_200_OK, ResponseCode.detect(ackString));
35  
36  	}
37  
38  	@Test
39  	public void testDetectXml() throws Exception {
40  		
41  		String message = "MSH|^~\\&|||||200803051508||ADT^A31|2|P|2.5\r"
42  				+ "EVN||200803051509\r"
43  				+ "PID|||ZZZZZZ83M64Z148R^^^SSN^SSN^^20070103\r";
44  		ADT_A05 a05 = new ADT_A05();
45  		a05.parse(message);
46  		a05.setParser(new DefaultXMLParser());
47  
48  		String encoded = a05.encode();
49  		assertTrue(encoded, encoded.contains("<MSH"));
50  
51  		Message ack = a05.generateACK(AcknowledgmentCode.AA, null);
52  		String ackString = ack.encode();
53  		assertTrue(ackString, ackString.contains("<MSH"));
54  		assertEquals(ResponseCode.HTTP_200_OK, ResponseCode.detect(ackString));
55  		
56  		ack = a05.generateACK(AcknowledgmentCode.AE, null);
57  		ackString = ack.encode();
58  		assertEquals(ResponseCode.HTTP_200_OK, ResponseCode.detect(ackString));
59  		
60  		ack = a05.generateACK(AcknowledgmentCode.AR, null);
61  		ackString = ack.encode();
62  		assertEquals(ResponseCode.HTTP_200_OK, ResponseCode.detect(ackString));
63  
64  	}
65  
66  }