1
2
3
4 package org.paneris.rimauresq.model.test;
5
6 import org.melati.poem.AccessToken;
7 import org.melati.poem.PoemTask;
8 import org.melati.poem.UnexpectedExceptionPoemException;
9 import org.paneris.rimauresq.model.RimauresqDatabase;
10 import org.paneris.rimauresq.model.User;
11 import org.paneris.rimauresq.model.UserTable;
12
13 import junit.framework.TestCase;
14
15
16
17
18
19
20 public class UserTableTest extends TestCase {
21
22 protected RimauresqDatabase db = null;
23 protected UserTable ut;
24 protected static final String dbUrl = "jdbc:hsqldb:mem:melatijunit";
25
26
27
28
29
30 public UserTableTest(String name) {
31 super(name);
32 }
33
34 protected void setUp() {
35 db = new RimauresqDatabase();
36 db.connect("melatijunit", "org.melati.poem.dbms.Hsqldb",
37 dbUrl, "sa",
38 "", 4);
39 ut = (UserTable)db.getUserTable();
40
41 }
42
43
44
45
46 protected void tearDown() throws Exception {
47 db.disconnect();
48 super.tearDown();
49 }
50
51
52
53
54 public void test_newPersistent() {
55 User u = (User)ut.newPersistent();
56 assertTrue(u.troid() == null);
57 }
58
59
60
61
62 public void testCreate() {
63 final User u = (User)ut.newPersistent();
64 db.inSession(AccessToken.root,
65 new PoemTask() {
66 public void run() {
67 try {
68 u.setName("test");
69 u.setEmail("email");
70 ut.create(u);
71 assertTrue(u.troid().toString().equals(u.getLogin()));
72 assertTrue(u.troid().toString().equals(u.getPassword()));
73 } catch (Exception e) {
74 throw new UnexpectedExceptionPoemException(e);
75 }
76 u.delete();
77 }
78 });
79 }
80 }