package hudson.plugins.nodejs; import hudson.model.Descriptor; import hudson.plugins.nodejs.NodeJsCommandInterpreter; import hudson.tasks.Builder; import junit.framework.TestCase; public class NodeJsCommandInterpreterTest extends TestCase { private static final String COMMAND = "var sys = require('sys'); sys.puts('build number: ' + process.env['BUILD_NUMBER']);"; private NodeJsCommandInterpreter interpreter; private Descriptor<Builder> descriptor; @Override public void setUp() { interpreter = new NodeJsCommandInterpreter(COMMAND); descriptor = interpreter.getDescriptor(); } public void testGetContentsShouldGiveExpectedValue() { assertEquals(COMMAND, interpreter.getCommand()); } public void testGetContentWithEmptyCommandShouldGiveExpectedValue() { assertEquals("", new NodeJsCommandInterpreter("").getCommand()); } public void testGetContentWithNullCommandShouldGiveExpectedValue() { assertNull(new NodeJsCommandInterpreter(null).getCommand()); } public void testGetFileExtensionShouldGiveExpectedValue() { assertEquals(".js", interpreter.getFileExtension()); } public void testGetDescriptorShouldGiveExpectedValue() { assertNotNull(descriptor); assertTrue(descriptor instanceof Descriptor<?>); } public void testDescriptorGetDisplayNameShouldGiveExpectedValue() { assertEquals("Execute NodeJS script", descriptor.getDisplayName()); } public void testDescriptorGetHelpFileShouldGiveExpectedValue() { assertEquals("/plugin/nodejs/help.html", descriptor.getHelpFile()); } }