TestTPGetRply.java
上传用户:xfwatch
上传日期:2020-12-14
资源大小:872k
文件大小:4k
源码类别:

中间件编程

开发平台:

Java

  1. /*
  2.  * JBoss, Home of Professional Open Source
  3.  * Copyright 2008, Red Hat, Inc., and others contributors as indicated
  4.  * by the @authors tag. All rights reserved.
  5.  * See the copyright.txt in the distribution for a
  6.  * full listing of individual contributors.
  7.  * This copyrighted material is made available to anyone wishing to use,
  8.  * modify, copy, or redistribute it subject to the terms and conditions
  9.  * of the GNU Lesser General Public License, v. 2.1.
  10.  * This program is distributed in the hope that it will be useful, but WITHOUT A
  11.  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
  12.  * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
  13.  * You should have received a copy of the GNU Lesser General Public License,
  14.  * v.2.1 along with this distribution; if not, write to the Free Software
  15.  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
  16.  * MA  02110-1301, USA.
  17.  */
  18. package org.jboss.blacktie.jatmibroker.xatmi;
  19. import junit.framework.TestCase;
  20. import org.apache.log4j.LogManager;
  21. import org.apache.log4j.Logger;
  22. import org.jboss.blacktie.jatmibroker.RunServer;
  23. import org.jboss.blacktie.jatmibroker.core.conf.ConfigurationException;
  24. public class TestTPGetRply extends TestCase {
  25. private static final Logger log = LogManager.getLogger(TestTPGetRply.class);
  26. private RunServer server = new RunServer();
  27. private Connection connection;
  28. private int sendlen;
  29. private X_OCTET sendbuf;
  30. public void setUp() throws ConnectionException, ConfigurationException {
  31. server.serverinit();
  32. server.tpadvertiseTestTPGetrply();
  33. ConnectionFactory connectionFactory = ConnectionFactory
  34. .getConnectionFactory();
  35. connection = connectionFactory.getConnection();
  36. sendlen = "grply".length() + 1;
  37. sendbuf = (X_OCTET) connection.tpalloc("X_OCTET", null);
  38. sendbuf.setByteArray("grply".getBytes());
  39. }
  40. public void tearDown() throws ConnectionException, ConfigurationException {
  41. connection.close();
  42. server.serverdone();
  43. }
  44. public void test_tpgetrply() throws ConnectionException {
  45. log.info("test_tpgetrply");
  46. int cd = connection.tpacall(server.getServiceNameTestTPGetrply(),
  47. sendbuf, sendlen, 0);
  48. assertTrue(cd != -1);
  49. // RETRIEVE THE RESPONSE
  50. Buffer rcvbuf = connection.tpgetrply(cd, 0).getBuffer();
  51. assertTrue(TestTPConversation.strcmp(rcvbuf, "testtpgetrply_service") == 0);
  52. }
  53. // 8.5
  54. public void test_tpgetrply_baddesc() {
  55. log.info("test_tpgetrply_baddesc");
  56. int cd = 2;
  57. try {
  58. connection.tpgetrply(cd, 0);
  59. fail("Did not get exception");
  60. } catch (ConnectionException e) {
  61. assertTrue(e.getTperrno() == Connection.TPEBADDESC);
  62. }
  63. }
  64. // can't have null cd
  65. // public void test_tpgetrply_nullcd() {
  66. // log.info("test_tpgetrply_nullcd");
  67. // int valToTest = connection.tpgetrply(0);
  68. // assertTrue(valToTest == -1);
  69. // assertTrue(tperrno != 0);
  70. // assertTrue(tperrno != TPEBADDESC);
  71. // assertTrue(tperrno != TPEOTYPE);
  72. // assertTrue(tperrno != TPETIME);
  73. // assertTrue(tperrno != TPESVCFAIL);
  74. // assertTrue(tperrno != TPESVCERR);
  75. // assertTrue(tperrno != TPEBLOCK);
  76. // assertTrue(tperrno == TPEINVAL);
  77. // }
  78. // CAN@T HAVE NULL BUFFERS
  79. // public void test_tpgetrply_nullrcvbuf() {
  80. // log.info("test_tpgetrply_nullrcvbuf");
  81. // int cd = 2;
  82. // int valToTest = connection.tpgetrply(&cd, NULL, &rcvlen, 0);
  83. // assertTrue(valToTest == -1);
  84. // assertTrue(tperrno != 0);
  85. // assertTrue(tperrno != TPEINVAL);
  86. // assertTrue(tperrno != TPEOTYPE);
  87. // assertTrue(tperrno != TPETIME);
  88. // assertTrue(tperrno != TPESVCFAIL);
  89. // assertTrue(tperrno != TPESVCERR);
  90. // assertTrue(tperrno != TPEBLOCK);
  91. // assertTrue(tperrno == TPEBADDESC);
  92. // }
  93. // CANT HAVE NULL RCVLEN
  94. // public void test_tpgetrply_nullrcvlen() {
  95. // log.info("test_tpgetrply_nullrcvlen");
  96. // int cd = 2;
  97. // int valToTest = connection.tpgetrply(&cd, (char **) &rcvbuf, NULL, 0);
  98. // assertTrue(valToTest == -1);
  99. // assertTrue(tperrno != 0);
  100. // assertTrue(tperrno != TPEBADDESC);
  101. // assertTrue(tperrno != TPEOTYPE);
  102. // assertTrue(tperrno != TPETIME);
  103. // assertTrue(tperrno != TPESVCFAIL);
  104. // assertTrue(tperrno != TPESVCERR);
  105. // assertTrue(tperrno != TPEBLOCK);
  106. // assertTrue(tperrno == TPEINVAL);
  107. // }
  108. }