mschaefers
2012-12-04 428b2244aadeb4724e705044d73ac74be724f6e9
tests/com/gitblit/tests/GroovyScriptTest.java
@@ -23,6 +23,8 @@
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Arrays;
@@ -65,6 +67,31 @@
      if (started.get()) {
         GitBlitSuite.stopGitblit();
      }
   }
   @Test
   public void testSendHtmlMail() throws Exception {
      MockGitblit gitblit = new MockGitblit();
      MockLogger logger = new MockLogger();
      MockClientLogger clientLogger = new MockClientLogger();
      List<ReceiveCommand> commands = new ArrayList<ReceiveCommand>();
      commands.add(new ReceiveCommand(ObjectId
            .fromString("c18877690322dfc6ae3e37bb7f7085a24e94e887"), ObjectId
            .fromString("3fa7c46d11b11d61f1cbadc6888be5d0eae21969"), "refs/heads/master"));
      commands.add(new ReceiveCommand(ObjectId
            .fromString("c18877690322dfc6ae3e37bb7f7085a24e94e887"), ObjectId
            .fromString("3fa7c46d11b11d61f1cbadc6888be5d0eae21969"), "refs/heads/master2"));
      RepositoryModel repository = GitBlit.self().getRepositoryModel("helloworld.git");
      repository.mailingLists.add("list@helloworld.git");
      test("sendmail-html.groovy", gitblit, logger, clientLogger, commands, repository);
      assertEquals(1, logger.messages.size());
      assertEquals(1, gitblit.messages.size());
      MockMail m = gitblit.messages.get(0);
      assertEquals(5, m.toAddresses.size());
      assertTrue(m.message.contains("BIT"));
      assertTrue(m.message.contains("<html>"));
   }
   @Test
@@ -226,8 +253,7 @@
      
      BufferedWriter writer = new BufferedWriter(new FileWriter(tempScript));
      
      writer.write("import com.gitblit.utils.ClientLogger\n");
      writer.write("clientLogger.sendMessage('this is a test message')\n");
      writer.write("clientLogger.info('this is a test message')\n");
      writer.flush();
      writer.close();
@@ -295,6 +321,9 @@
      public void sendMail(String subject, String message, Collection<String> toAddresses) {
         messages.add(new MockMail(subject, message, toAddresses));
      }
      public void sendHtmlMail(String subject, String message, Collection<String> toAddresses) {
         messages.add(new MockMail(subject, message, toAddresses));
      }
   }
   class MockLogger {
@@ -308,9 +337,23 @@
   class MockClientLogger {
      List<String> messages = new ArrayList<String>();
      public void sendMessage(String message) {
      public void info(String message) {
         messages.add(message);
      }
      public void error(String message) {
         messages.add(message);
      }
      public void error(String message, Throwable t) {
         PrintWriter writer = new PrintWriter(new StringWriter());
         if (!StringUtils.isEmpty(message)) {
            writer.append(message);
            writer.append('\n');
         }
         t.printStackTrace(writer);
         messages.add(writer.toString());
      }
   }
   class MockMail {