OSDN Git Service

CVS最新版の全ファイルを追加
[spring-ext/ozacc-mail.git] / src / test / com / ozacc / mail / impl / XMLVelocityMailBuilderImplTest.java
1 package com.ozacc.mail.impl;\r
2 \r
3 import java.io.File;\r
4 \r
5 import javax.mail.internet.InternetAddress;\r
6 \r
7 import junit.framework.TestCase;\r
8 \r
9 import org.apache.log4j.BasicConfigurator;\r
10 import org.apache.velocity.VelocityContext;\r
11 \r
12 import com.ozacc.mail.Mail;\r
13 import com.ozacc.mail.VelocityMailBuilder;\r
14 import com.ozacc.mail.impl.JDomXMLMailBuilderTest.Customer;\r
15 \r
16 /**\r
17  * \r
18  * @since 1.0.1\r
19  * @author Tomohiro Otsuka\r
20  * @version $Id: XMLVelocityMailBuilderImplTest.java,v 1.1.2.1 2004/10/24 10:28:09 otsuka Exp $\r
21  */\r
22 public class XMLVelocityMailBuilderImplTest extends TestCase {\r
23 \r
24         private VelocityMailBuilder builder;\r
25 \r
26         /*\r
27          * @see TestCase#setUp()\r
28          */\r
29         protected void setUp() throws Exception {\r
30                 super.setUp();\r
31                 BasicConfigurator.configure();\r
32                 builder = new XMLVelocityMailBuilderImpl();\r
33         }\r
34 \r
35         /**\r
36          * @see junit.framework.TestCase#tearDown()\r
37          */\r
38         protected void tearDown() throws Exception {\r
39                 BasicConfigurator.resetConfiguration();\r
40         }\r
41 \r
42         public void testBuildMailFromFile() throws Exception {\r
43                 String path = "src/test/com/ozacc/mail/test-mail3-velocity.xml";\r
44                 File file = new File(path);\r
45 \r
46                 String name = "伊東美咲";\r
47                 String email = "misaki@example.com";\r
48                 Customer customer = new Customer(name, email);\r
49                 String item = "GIVE&TAKE (Beige)";\r
50 \r
51                 InternetAddress from = new InternetAddress("shop@example.com", "XMLMailBuilderオンラインショップ");\r
52                 InternetAddress to = new InternetAddress(email, name);\r
53 \r
54                 String subject = "XMLMailBuilderオンラインショップ - ご注文の確認";\r
55                 String text = name + "様\n\nお買い上げありがとうございました。\n\nGIVE&TAKE (Beige)";\r
56 \r
57                 VelocityContext context = new VelocityContext();\r
58                 context.put("customer", customer);\r
59                 context.put("item", item);\r
60 \r
61                 // メール生成実行\r
62                 Mail result = builder.buildMail(file, context);\r
63 \r
64                 assertEquals(from, result.getFrom());\r
65                 assertEquals(to, result.getTo()[0]);\r
66                 assertEquals(subject, result.getSubject());\r
67                 assertEquals(text, result.getText());\r
68         }\r
69 \r
70         public final void testBuildMailStringVelocityContext() throws Exception {\r
71                 String classPath = "/com/ozacc/mail/test-mail3-velocity.xml";\r
72 \r
73                 String name = "伊東美咲";\r
74                 String email = "misaki@example.com";\r
75                 Customer customer = new Customer(name, email);\r
76                 String item = "GIVE&TAKE (Beige)";\r
77 \r
78                 InternetAddress from = new InternetAddress("shop@example.com", "XMLMailBuilderオンラインショップ");\r
79                 InternetAddress to = new InternetAddress(email, name);\r
80 \r
81                 String subject = "XMLMailBuilderオンラインショップ - ご注文の確認";\r
82                 String text = name + "様\n\nお買い上げありがとうございました。\n\nGIVE&TAKE (Beige)";\r
83 \r
84                 VelocityContext context = new VelocityContext();\r
85                 context.put("customer", customer);\r
86                 context.put("item", item);\r
87 \r
88                 // メール生成実行\r
89                 Mail result = builder.buildMail(classPath, context);\r
90 \r
91                 assertEquals(from, result.getFrom());\r
92                 assertEquals(to, result.getTo()[0]);\r
93                 assertEquals(subject, result.getSubject());\r
94                 assertEquals(text, result.getText());\r
95         }\r
96 \r
97         public final void testBuildMailStringVelocityContextWithCache() throws Exception {\r
98                 builder.setCacheEnabled(true);\r
99 \r
100                 String classPath = "/com/ozacc/mail/test-mail3-velocity.xml";\r
101 \r
102                 String name = "伊東美咲";\r
103                 String email = "misaki@example.com";\r
104                 Customer customer = new Customer(name, email);\r
105                 String item = "GIVE&TAKE (Beige)";\r
106 \r
107                 InternetAddress from = new InternetAddress("shop@example.com", "XMLMailBuilderオンラインショップ");\r
108                 InternetAddress to = new InternetAddress(email, name);\r
109                 String subject = "XMLMailBuilderオンラインショップ - ご注文の確認";\r
110                 String text = name + "様\n\nお買い上げありがとうございました。\n\nGIVE&TAKE (Beige)";\r
111 \r
112                 VelocityContext context = new VelocityContext();\r
113                 context.put("customer", customer);\r
114                 context.put("item", item);\r
115 \r
116                 // メール生成実行\r
117                 Mail result = builder.buildMail(classPath, context);\r
118                 Mail result2 = builder.buildMail(classPath, context);\r
119                 builder.clearCache();\r
120                 Mail result3 = builder.buildMail(classPath, context);\r
121 \r
122                 assertEquals(from, result.getFrom());\r
123                 assertEquals(to, result.getTo()[0]);\r
124                 assertEquals(subject, result.getSubject());\r
125                 assertEquals(text, result.getText());\r
126         }\r
127 }