[Asterisk-java-cvs] CVS: asterisk-java/src/test/net/sf/asterisk/fastagi/impl AGIChannelImplTest.java
Brought to you by:
srt
From: Stefan R. <sr...@us...> - 2005-03-14 14:04:54
|
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(); + } } |