1 package net.sf.flock.hibernate;
2
3 import java.net.URL;
4 import java.util.Date;
5 import java.util.Properties;
6
7 import net.sf.flock.FeedI;
8 import net.sf.flock.ItemI;
9 import net.sf.flock.MetaData;
10 import net.sf.flock.SubscriptionI;
11
12 import junit.framework.TestCase;
13
14 public class HibernateSubscriptionManagerTest extends TestCase {
15
16 private final static Properties PROPERTIES = new Properties();
17 static {
18 PROPERTIES.put("hibernate.dialect", "net.sf.hibernate.dialect.HSQLDialect");
19 PROPERTIES.put("hibernate.connection.driver_class", "org.hsqldb.jdbcDriver");
20 PROPERTIES.put("hibernate.connection.username", "sa");
21 PROPERTIES.put("hibernate.connection.password", "");
22 PROPERTIES.put("hibernate.connection.url", "jdbc:hsqldb:flocktest");
23
24 PROPERTIES.put("hibernate.use_outer_join", "true");
25 PROPERTIES.put("hibernate.show_sql", "true");
26 }
27
28 public HibernateSubscriptionManagerTest(String name) {
29 super(name);
30 }
31
32 public void testPersistence() throws Exception {
33 Feed f = new Feed();
34 f.setSite(new URL("http://foo.net"));
35 f.setTitle("Test title");
36 f.newItem(new Date(), "test item", "Test description blah", new URL("http://foo.net/blah1"));
37 //f.newItem(new Date(), "second test item", "Test description blah", new URL("http://foo.net/blah2"));
38
39 Subscription sub = new Subscription();
40 sub.setLocation(new URL("http://foo.net/feed.rss"));
41 MetaData md = new MetaData();
42 md.set("foo", "bar");
43 md.set("blah", "blah");
44 sub.setMetaData(md);
45 sub.setFeed(f);
46
47 HibernateSubscriptionManager mgr = new HibernateSubscriptionManager( PROPERTIES );
48 mgr.storeSubscription(sub);
49
50 SubscriptionI loadedSub = mgr.loadSubscription(new URL("http://foo.net/feed.rss"));
51
52 assertEquals(sub.getLocation(), loadedSub.getLocation());
53 assertEquals("bar", loadedSub.getMetaData().get("foo"));
54 assertEquals("blah", loadedSub.getMetaData().get("blah"));
55
56 FeedI loadedFeed = loadedSub.getFeed();
57 assertEquals(f.getTitle(), loadedFeed.getTitle());
58 assertEquals(f.getSite(), loadedFeed.getSite());
59 assertEquals(loadedSub, loadedFeed.getSubscriptionInfo());
60
61 ItemI item = (ItemI) loadedFeed.getItems().get(0);
62 assertEquals( loadedFeed, item.getOrigin() );
63 }
64
65 }
This page was automatically generated by Maven