package hudson.console;
import hudson.Launcher;
import hudson.model.AbstractBuild;
import hudson.model.BuildListener;
import hudson.model.FreeStyleBuild;
import hudson.model.FreeStyleProject;
import org.junit.Rule;
import org.junit.Test;
import org.jvnet.hudson.test.JenkinsRule;
import org.jvnet.hudson.test.TestBuilder;
/**
* @author Kohsuke Kawaguchi
*/
public class ExceptionAnnotationTest {
@Rule
public JenkinsRule j = new JenkinsRule();
@Test
public void test() throws Exception {
FreeStyleProject p = j.createFreeStyleProject();
p.getBuildersList().add(new TestBuilder() {
@Override
public boolean perform(AbstractBuild<?, ?> build, Launcher launcher, BuildListener listener) {
new Throwable().printStackTrace(listener.error("Injecting a failure"));
return true;
}
});
FreeStyleBuild b = j.buildAndAssertSuccess(p);
j.createWebClient().getPage(b,"console");
// TODO: check if the annotation is placed
// TODO: test an exception with cause and message
// interactiveBreak();
}
}