You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by hu...@apache.org on 2006/07/31 02:56:04 UTC
svn commit: r426991 - in /struts/struts2/trunk/apps/mailreader/src:
main/java/mailreader2/ main/resources/sql/ test/java/mailreader2/
test/resources/sql/
Author: husted
Date: Sun Jul 30 17:56:03 2006
New Revision: 426991
URL: http://svn.apache.org/viewvc?rev=426991&view=rev
Log:
WW-1399 Complete first set of tests for iBATIS statements.
Modified:
struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/AppData.java
struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java
struts/struts2/trunk/apps/mailreader/src/main/resources/sql/mailreader-schema.sql
struts/struts2/trunk/apps/mailreader/src/main/resources/sql/sql-map.xml
struts/struts2/trunk/apps/mailreader/src/test/java/mailreader2/MailreaderTest.java
struts/struts2/trunk/apps/mailreader/src/test/resources/sql/mailreader-sample.sql
Modified: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/AppData.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/AppData.java?rev=426991&r1=426990&r2=426991&view=diff
==============================================================================
--- struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/AppData.java (original)
+++ struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/AppData.java Sun Jul 30 17:56:03 2006
@@ -41,8 +41,8 @@
*/
public boolean isHost_auto_checkbox() {
Integer _host_auto = getHost_auto();
- if (_host_auto == null) _host_auto = 0;
- return (_host_auto == 0);
+ if (_host_auto == null) _host_auto = Constants.DB_FALSE;
+ return (_host_auto == Constants.DB_TRUE);
}
/**
@@ -50,8 +50,8 @@
*/
public void setHost_auto_checkbox(boolean host_auto_checkbox) {
if (host_auto_checkbox)
- setHost_auto(1);
- else setHost_auto(0);
+ setHost_auto(Constants.DB_TRUE);
+ else setHost_auto(Constants.DB_FALSE);
}
/**
Modified: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java?rev=426991&r1=426990&r2=426991&view=diff
==============================================================================
--- struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java (original)
+++ struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java Sun Jul 30 17:56:03 2006
@@ -25,6 +25,9 @@
// -- Statements --
+ public static final Integer DB_FALSE = 0;
+ public static final Integer DB_TRUE = 1;
+
public static final String LOCALE_LIST = "LOCALE_LIST";
public static final String REGISTRATION_INSERT_ASSERT = "REGISTRATION_INSERT_ASSERT";
public static final String REGISTRATION_INSERT = "REGISTRATION_INSERT";
Modified: struts/struts2/trunk/apps/mailreader/src/main/resources/sql/mailreader-schema.sql
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/resources/sql/mailreader-schema.sql?rev=426991&r1=426990&r2=426991&view=diff
==============================================================================
--- struts/struts2/trunk/apps/mailreader/src/main/resources/sql/mailreader-schema.sql (original)
+++ struts/struts2/trunk/apps/mailreader/src/main/resources/sql/mailreader-schema.sql Sun Jul 30 17:56:03 2006
@@ -29,7 +29,7 @@
fk_registration char(36),
fk_protocol char(36),
subscription_host char(36),
- subscription_user char(18),
- subscription_pass char(18),
- subscription_auto int
+ host_user char(18),
+ host_pass char(18),
+ host_auto int
);
Modified: struts/struts2/trunk/apps/mailreader/src/main/resources/sql/sql-map.xml
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/resources/sql/sql-map.xml?rev=426991&r1=426990&r2=426991&view=diff
==============================================================================
--- struts/struts2/trunk/apps/mailreader/src/main/resources/sql/sql-map.xml (original)
+++ struts/struts2/trunk/apps/mailreader/src/main/resources/sql/sql-map.xml Sun Jul 30 17:56:03 2006
@@ -39,7 +39,7 @@
SELECT pk_registration AS registration_key, fk_locale AS locale_key,
username, password, fullname, email_from, email_replyto
FROM registration
- WHERE username=#username#;
+ WHERE pk_registration=#registration_key#;
</select>
<update id="REGISTRATION_UPDATE" parameterClass="data">
@@ -49,7 +49,7 @@
WHERE pk_registration=#registration_key#;
</update>
- <select id="SUBSCRIPTION_INSERT_ASSERT" parameterClass="data" resultClass="data">
+ <select id="SUBSCRIPTION_INSERT_ASSERT" parameterClass="data" resultClass="long">
SELECT COUNT(*)
FROM subscription
WHERE fk_registration=#registration_key#
@@ -59,21 +59,23 @@
<insert id="SUBSCRIPTION_INSERT" parameterClass="data">
INSERT INTO subscription
(pk_subscription, fk_registration, fk_protocol, subscription_host, host_user, host_pass, host_auto)
- VALUES (#subscription_key#, #registration_key#, #protocol_key#, #username#,
- #subscription_host#, #host_user#, #host_pass#, #host_auto#);
+ VALUES (#subscription_key#, #registration_key#, #protocol_key#, #subscription_host#,
+ #host_user#, #host_pass#, #host_auto#);
</insert>
<select id="SUBSCRIPTION_LIST" parameterClass="data" resultClass="data">
SELECT pk_subscription AS subscription_key,
subscription_host, host_user, host_pass, host_auto, protocol_name
FROM subscription
- JOIN protocol ON fk_protocol=pk_protocol
+ JOIN protocol ON pk_protocol=fk_protocol
WHERE fk_registration=#registration_key#;
</select>
<select id="SUBSCRIPTION_EDIT" parameterClass="data" resultClass="data">
- SELECT pk_subscription AS subscription_key, fk_registration AS registration_key, fk_protocol AS protocol_key,
- subscription_host, host_user, host_pass, host_auto FROM subscription, protocol
+ SELECT pk_subscription AS subscription_key, fk_protocol AS protocol_key,
+ subscription_host, host_user, host_pass, host_auto, protocol_name
+ FROM subscription
+ JOIN protocol ON pk_protocol=fk_protocol
WHERE pk_subscription=#subscription_key#;
</select>
@@ -81,7 +83,7 @@
UPDATE subscription
SET fk_registration=#registration_key#, fk_protocol=#protocol_key#,
subscription_host=#subscription_host#, host_user=#host_user#, host_pass=#host_pass#, host_auto=#host_auto#
- FROM subscription WHERE pk_subscription=#subscription_key#;
+ WHERE pk_subscription=#subscription_key#;
</update>
</sqlMap>
Modified: struts/struts2/trunk/apps/mailreader/src/test/java/mailreader2/MailreaderTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/test/java/mailreader2/MailreaderTest.java?rev=426991&r1=426990&r2=426991&view=diff
==============================================================================
--- struts/struts2/trunk/apps/mailreader/src/test/java/mailreader2/MailreaderTest.java (original)
+++ struts/struts2/trunk/apps/mailreader/src/test/java/mailreader2/MailreaderTest.java Sun Jul 30 17:56:03 2006
@@ -1,5 +1,7 @@
package mailreader2;
+import java.util.List;
+
/**
* @author Ted Husted
* @version $Revision: 1.0 $ $Date: Jul 29, 2006 5:34:31 PM $
@@ -8,21 +10,37 @@
// DEFAULTS FROM SAMPLE SCRIPT
+ private static int SAMPLE_SIZE = 2;
+
private static String locale_key = "01-en";
private static String registration_key = "01-user";
private static String username = "user";
private static String password = "pass";
private static String fullname = "John Q. User";
- private static String email_from = "zaphod@magrathea.com";
- private static String email_replyto = "zb42@igmail.com";
+ private static String email_from = "John.User@somewhere.com";
+ private static String email_replyto = "";
+ private static String subscription_key = "01-hotmail";
+ private static String subscription_host = "mail.hotmail.com";
+ private static String host_user = "user1234";
+ private static String host_pass = "bar";
+ private static Integer host_auto = Constants.DB_FALSE;
private static String registration_key2 = "02-zaphod";
private static String username2 = "zaphod";
- private static String password2 = "g4rgl3Bl4st3r";
+ private static String password2 = "G4rgl3Bl4st3r";
private static String fullname2 = "Zaphod Beeblebrox";
private static String email_from2 = "zaphod@magrathea.com";
- private static String email_replyto2 = "zb42@igmail.com";
+ private static String email_replyto2 = "zb42@igmail.net";
+
+ private static String protocol_name = "POP3 Protoocol";
+ private static String protocol_key2 = "02-smtp";
+
+ private static String subscription_key2 = "04-igmail";
+ private static String subscription_host2 = "mail.igmail.net";
+ private static String host_user2 = "zb42";
+ private static String host_pass2 = "J4nxSp1r1t";
+ private static Integer host_auto2 = Constants.DB_TRUE;
// SETUP & TEARDOWN
@@ -49,7 +67,7 @@
input.setUsername(username2);
Object output = sqlMap.queryForObject(Constants.REGISTRATION_INSERT_ASSERT,input);
Long count = (Long) output;
- assertTrue("Expected user to already exist",count.intValue()==0);
+ assertTrue("Did not expected user to exist",count.intValue()==0);
}
public void testREGISTRATION_INSERT() throws Exception {
@@ -73,15 +91,112 @@
assertEquals(password,output.getPassword());
}
- public void test() throws Exception {
- }
-
public void testREGISTRATION_FULLNAME() throws Exception {
input.setUsername(username);
AppData output = (AppData) sqlMap.queryForObject(Constants.REGISTRATION_FULLNAME, input);
assertEquals(fullname, output.getFullname());
assertNull("Expected other fields to be null", output.getPassword());
assertNull("Expected other fields to be null",output.getEmail_from());
+ }
+
+ public void testREGISTRATION_EDIT() throws Exception {
+ input.setRegistration_key(registration_key);
+ AppData output = (AppData) sqlMap.queryForObject(Constants.REGISTRATION_EDIT, input);
+ assertNotNull("Registration not found!",output);
+ assertEquals(fullname, output.getFullname());
+ assertEquals(email_from, output.getEmail_from());
+ assertEquals(email_replyto, output.getEmail_replyto());
+ }
+
+ public void testREGISTRATION_UPDATE() throws Exception {
+ input.setRegistration_key(registration_key);
+ input.setUsername(username2);
+ input.setPassword(password2 );
+ input.setFullname(fullname2);
+ input.setEmail_from(email_from2);
+ input.setEmail_replyto(email_replyto2);
+ sqlMap.update(Constants.REGISTRATION_UPDATE,input);
+ // Trust but verify
+ input.setPassword(null);
+ AppData output = (AppData) sqlMap.queryForObject(Constants.REGISTRATION_PASSWORD,input);
+ assertEquals(password2,output.getPassword());
+ }
+
+ public void testREGISTRATION_UPDATE_fails() throws Exception {
+ input.setRegistration_key(null);
+ sqlMap.update(Constants.REGISTRATION_UPDATE,input);
+ }
+
+ public void testSUBSCRIPTION_INSERT_ASSERT_fail() throws Exception {
+ input.setSubscription_key(subscription_key);
+ input.setSubscription_host(subscription_host);
+ Object output = sqlMap.queryForObject(Constants.SUBSCRIPTION_INSERT_ASSERT,input);
+ Long count = (Long) output;
+ assertTrue("Expected subscription to already exist",count.intValue()>0);
+ }
+
+ public void SUBSCRIPTION_INSERT_ASSERT() throws Exception {
+ input.setSubscription_key(subscription_key2);
+ input.setSubscription_host(subscription_host2);
+ Object output = sqlMap.queryForObject(Constants.SUBSCRIPTION_INSERT_ASSERT,input);
+ Long count = (Long) output;
+ assertTrue("Did not expect subscription to exist",count.intValue()==0);
+ }
+
+ public void testSUBSCRIPTION_INSERT() throws Exception {
+ input.setSubscription_key(subscription_key2);
+ input.setRegistration_key(registration_key2);
+ input.setProtocol_key(protocol_key2);
+ input.setSubscription_host(subscription_host2);
+ input.setHost_user(host_user2);
+ input.setHost_pass(host_pass2);
+ input.setHost_auto(host_auto2);
+ sqlMap.insert(Constants.SUBSCRIPTION_INSERT,input);
+ // Trust but verify
+ Object output = sqlMap.queryForObject(Constants.SUBSCRIPTION_INSERT_ASSERT,input);
+ Long count = (Long) output;
+ assertTrue("Expected subscription to NOW exist",count.intValue()>0);
+ }
+
+
+ private void assertSubscription(AppData output) throws Exception {
+ assertEquals(host_user, output.getHost_user());
+ assertEquals(host_pass, output.getHost_pass());
+ assertEquals(protocol_name, output.getProtocol_name());
+ assertEquals(host_auto,output.getHost_auto());
+ assertFalse(output.isHost_auto_checkbox());
+ }
+
+ public void testSUBSCRIPTION_LIST() throws Exception {
+ input.setRegistration_key(registration_key);
+ Object output = sqlMap.queryForList(Constants.SUBSCRIPTION_LIST,input);
+ assertNotNull("Query failed!",output);
+ List list = (List) output;
+ assertEquals(SAMPLE_SIZE,list.size());
+ AppData row1 = (AppData) list.get(0);
+ assertSubscription(row1);
+ }
+
+ public void testSUBSCRIPTION_EDIT() throws Exception {
+ input.setSubscription_key(subscription_key);
+ AppData output = (AppData) sqlMap.queryForObject(Constants.SUBSCRIPTION_EDIT, input);
+ assertNotNull("Subscription not found!",output);
+ assertSubscription(output);
+ }
+
+ public void testSUBSCRIPTION_UPDATE() throws Exception {
+ input.setSubscription_key(subscription_key);
+ input.setRegistration_key(registration_key2);
+ input.setProtocol_key(protocol_key2);
+ input.setSubscription_host(subscription_host2);
+ input.setHost_user(host_user2);
+ input.setHost_pass(host_pass2);
+ input.setHost_auto(host_auto2);
+ sqlMap.update(Constants.SUBSCRIPTION_UPDATE,input);
+ // Trust but verify
+ Object output = sqlMap.queryForObject(Constants.SUBSCRIPTION_INSERT_ASSERT,input);
+ Long count = (Long) output;
+ assertTrue("Expected subscription to exist",count.intValue()>0);
}
}
Modified: struts/struts2/trunk/apps/mailreader/src/test/resources/sql/mailreader-sample.sql
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/test/resources/sql/mailreader-sample.sql?rev=426991&r1=426990&r2=426991&view=diff
==============================================================================
--- struts/struts2/trunk/apps/mailreader/src/test/resources/sql/mailreader-sample.sql (original)
+++ struts/struts2/trunk/apps/mailreader/src/test/resources/sql/mailreader-sample.sql Sun Jul 30 17:56:03 2006
@@ -1,8 +1,23 @@
-INSERT INTO locale (pk_locale, locale_code, locale_name) VALUES ('01-en','en','English'), ('02-ru','ru','Russian'), ('03-ja','ja','Japanese');
+INSERT INTO locale
+ (pk_locale, locale_code, locale_name)
+VALUES ('01-en','en','English'), ('02-ru','ru','Russian'), ('03-ja','ja','Japanese');
-INSERT INTO protocol (pk_protocol, protocol_code, protocol_name) VALUES ('01-pop3','pop3','POP3 Protoocol'), ('02-smtp','smtp','SMTP Protocol');
+INSERT INTO protocol
+ (pk_protocol, protocol_code, protocol_name)
+VALUES ('01-pop3','pop3','POP3 Protoocol');
-INSERT INTO registration (pk_registration, fk_locale, username, password, fullname, email_from, email_replyto) VALUES ('01-user','01-en','user','pass','John Q. User','John.User@somewhere.com','');
+INSERT INTO protocol
+ (pk_protocol, protocol_code, protocol_name)
+VALUES ('02-smtp','smtp','SMTP Protocol');
-INSERT INTO subscription (pk_subscription, fk_registration, fk_protocol, subscription_host, subscription_user, subscription_pass, subscription_auto) VALUES
-('01-subscription','01-user','01-pop3','mail.hotmail.com','user1234','bar',0), ('02-subscription','01-user','02-smtp','mail.yahoo.com','jquser','foo',1);
+INSERT INTO registration
+ (pk_registration, fk_locale, username, password, fullname, email_from, email_replyto)
+VALUES ('01-user','01-en','user','pass','John Q. User','John.User@somewhere.com','');
+
+INSERT INTO subscription
+ (pk_subscription, fk_registration, fk_protocol, subscription_host, host_user, host_pass, host_auto)
+VALUES ('01-hotmail','01-user','01-pop3','mail.hotmail.com','user1234','bar',0);
+
+INSERT INTO subscription
+ (pk_subscription, fk_registration, fk_protocol, subscription_host, host_user, host_pass, host_auto)
+VALUES ('02-yahoo','01-user','02-smtp','mail.yahoo.com','jquser','foo',1);