aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/EmailAddressTest.java112
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/EmailTaskTest.java63
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/MessageTest.java62
3 files changed, 237 insertions, 0 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/EmailAddressTest.java b/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/EmailAddressTest.java
new file mode 100644
index 00000000..31ecafba
--- /dev/null
+++ b/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/EmailAddressTest.java
@@ -0,0 +1,112 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.tools.ant.taskdefs.email;
+
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+/**
+ * @since Ant 1.6
+ */
+public class EmailAddressTest {
+
+ @Test
+ public void test1() {
+ expectNameAddress( new EmailAddress("address (name)") );
+ }
+
+ @Test
+ public void test2() {
+ expectNameAddress( new EmailAddress("(name) address") );
+ }
+
+ @Test
+ public void test3() {
+ expectNameAddress( new EmailAddress("name <address>") );
+ }
+
+ @Test
+ public void test4() {
+ expectNameAddress( new EmailAddress("<address> name") );
+ }
+
+ @Test
+ public void test5() {
+ expectNameAddress( new EmailAddress("<address> (name)") );
+ }
+
+ @Test
+ public void test6() {
+ expectNameAddress( new EmailAddress("(name) <address>") );
+ }
+
+ @Test
+ public void test7() {
+ expectNameAddress2( new EmailAddress("address (<name>)") );
+ }
+
+ @Test
+ public void test8() {
+ expectNameAddress2( new EmailAddress("(<name>) address") );
+ }
+
+ @Test
+ public void test9() {
+ expectNameAddress3( new EmailAddress("address") );
+ }
+
+ @Test
+ public void testA() {
+ expectNameAddress3( new EmailAddress("<address>") );
+ }
+
+ @Test
+ public void testB() {
+ expectNameAddress3( new EmailAddress(" <address> ") );
+ }
+
+ @Test
+ public void testC() {
+ expectNameAddress3( new EmailAddress("< address >") );
+ }
+
+ @Test
+ public void testD() {
+ expectNameAddress3( new EmailAddress(" < address > ") );
+ }
+
+ private void expectNameAddress(EmailAddress e) {
+ assertEquals( "name", e.getName() );
+ assertEquals( "address", e.getAddress() );
+ }
+
+ // where the name contains <>
+ private void expectNameAddress2(EmailAddress e) {
+ assertEquals( "<name>", e.getName() );
+ assertEquals( "address", e.getAddress() );
+ }
+
+ // where only an address is supplied
+ private void expectNameAddress3(EmailAddress e) {
+ assertNull("Expected null, found <" + e.getName() + ">", e.getName());
+ assertEquals( "address", e.getAddress() );
+ }
+}
diff --git a/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/EmailTaskTest.java b/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/EmailTaskTest.java
new file mode 100644
index 00000000..6363f90d
--- /dev/null
+++ b/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/EmailTaskTest.java
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.tools.ant.taskdefs.email;
+
+import org.apache.tools.ant.BuildException;
+import org.apache.tools.ant.BuildFileRule;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+
+import static org.junit.Assert.fail;
+
+/**
+ * TODO : develop these testcases - the email task needs to have attributes allowing
+ * to simulate sending mail and to catch the output in text files or streams
+ */
+public class EmailTaskTest {
+
+ @Rule
+ public BuildFileRule buildRule = new BuildFileRule();
+
+ @Before
+ public void setUp() {
+ buildRule.configureProject("src/etc/testcases/taskdefs/email/mail.xml");
+ }
+
+ @Test
+ public void test1() {
+ try {
+ buildRule.executeTarget("test1");
+ fail("Build exception expected: SMTP auth only possibly with MIME mail");
+ } catch(BuildException ex) {
+ //TODO assert exception message
+ }
+ }
+
+ @Test
+ public void test2() {
+ try {
+ buildRule.executeTarget("test2");
+ fail("Build exception expected: SSL only possibly with MIME mail");
+ } catch(BuildException ex) {
+ //TODO assert exception message
+ }
+ }
+
+}
diff --git a/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/MessageTest.java b/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/MessageTest.java
new file mode 100644
index 00000000..df75067f
--- /dev/null
+++ b/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/taskdefs/email/MessageTest.java
@@ -0,0 +1,62 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.tools.ant.taskdefs.email;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.PrintStream;
+
+import org.apache.tools.ant.Project;
+import org.apache.tools.ant.util.FileUtils;
+import org.junit.After;
+import org.junit.Test;
+
+public class MessageTest {
+ private static final File f = new File(System.getProperty("java.io.tmpdir"),
+ "message.txt");
+ /**
+ * test for bugzilla 48932
+ */
+ @Test
+ public void testPrintStreamDoesNotGetClosed() throws IOException {
+ Message ms = new Message();
+ Project p = new Project();
+ ms.setProject(p);
+ ms.addText("hi, this is an email");
+ FileOutputStream fis = null;
+ try {
+ fis = new FileOutputStream(f);
+ ms.print(new PrintStream(fis));
+ fis.write(120);
+ } finally {
+ FileUtils.close(fis);
+ }
+
+ }
+
+ @After
+ public void tearDown() {
+ if (f.exists()) {
+ FileUtils fu = FileUtils.getFileUtils();
+ fu.tryHardToDelete(f);
+ }
+ }
+
+}