Update of /cvsroot/asterisk-java/asterisk-java/src/test/net/sf/asterisk/fastagi/impl
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24063/src/test/net/sf/asterisk/fastagi/impl
Modified Files:
AGIChannelImplTest.java
Log Message:
Added tests for sendCommand() receiving error replies
Index: AGIChannelImplTest.java
===================================================================
RCS file: /cvsroot/asterisk-java/asterisk-java/src/test/net/sf/asterisk/fastagi/impl/AGIChannelImplTest.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -p -r1.1 -r1.2
--- AGIChannelImplTest.java 11 Mar 2005 15:20:39 -0000 1.1
+++ AGIChannelImplTest.java 14 Mar 2005 14:04:44 -0000 1.2
@@ -20,6 +20,8 @@ import junit.framework.TestCase;
import net.sf.asterisk.fastagi.AGIChannel;
import net.sf.asterisk.fastagi.AGIReader;
import net.sf.asterisk.fastagi.AGIWriter;
+import net.sf.asterisk.fastagi.InvalidCommandSyntaxException;
+import net.sf.asterisk.fastagi.InvalidOrUnknownCommandException;
import net.sf.asterisk.fastagi.command.NoopCommand;
import net.sf.asterisk.fastagi.reply.AGIReply;
@@ -67,4 +69,73 @@ public class AGIChannelImplTest extends
agiWriterMC.verify();
agiReaderMC.verify();
}
+
+ public void testSendCommandWithInvalidOrUnknownCommandResponse() throws Exception
+ {
+ AGIReply reply;
+ NoopCommand command;
+
+ reply = new AGIReply();
+ reply.setStatus(AGIReply.SC_INVALID_OR_UNKNOWN_COMMAND);
+ reply.setResult("0");
+
+ command = new NoopCommand();
+
+ agiWriter.sendCommand(command);
+ agiReader.readReply();
+ agiReaderMC.setReturnValue(reply);
+
+ agiWriterMC.replay();
+ agiReaderMC.replay();
+
+ try
+ {
+ agiChannel.sendCommand(command);
+ fail ("must throw InvalidOrUnknownCommandException");
+ }
+ catch (InvalidOrUnknownCommandException e)
+ {
+ assertEquals("Incorrect message", "Invalid or unknown command: NOOP", e.getMessage());
+ }
+
+ agiWriterMC.verify();
+ agiReaderMC.verify();
+ }
+
+
+ public void testSendCommandWithInvalidCommandSyntaxResponse() throws Exception
+ {
+ AGIReply reply;
+ NoopCommand command;
+
+ reply = new AGIReply();
+ reply.setStatus(AGIReply.SC_INVALID_COMMAND_SYNTAX);
+ reply.setSynopsis("NOOP Synopsis");
+ reply.setUsage("NOOP Usage");
+ reply.setResult("0");
+
+ command = new NoopCommand();
+
+ agiWriter.sendCommand(command);
+ agiReader.readReply();
+ agiReaderMC.setReturnValue(reply);
+
+ agiWriterMC.replay();
+ agiReaderMC.replay();
+
+ try
+ {
+ agiChannel.sendCommand(command);
+ fail ("must throw InvalidCommandSyntaxException");
+ }
+ catch (InvalidCommandSyntaxException e)
+ {
+ assertEquals("Incorrect message", "Invalid command syntax: NOOP Synopsis", e.getMessage());
+ assertEquals("Incorrect sysnopsis", "NOOP Synopsis", e.getSynopsis());
+ assertEquals("Incorrect usage", "NOOP Usage", e.getUsage());
+ }
+
+ agiWriterMC.verify();
+ agiReaderMC.verify();
+ }
}
|