KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > openedit > archive > history > HistoryTest


1 /*
2  * Created on Jul 2, 2006
3  */

4 package com.openedit.archive.history;
5
6 import java.util.Calendar JavaDoc;
7 import java.util.Date JavaDoc;
8 import java.util.GregorianCalendar JavaDoc;
9
10 import com.openedit.WebPageRequest;
11 import com.openedit.archive.Archive;
12 import com.openedit.archive.ArchiveTest;
13 import com.openedit.archive.collection.Collection;
14 import com.openedit.archive.collection.CollectionItem;
15 import com.openedit.archive.collection.UserCollections;
16 import com.openedit.store.Product;
17
18 public class HistoryTest extends ArchiveTest
19 {
20
21     public HistoryTest(String JavaDoc inName)
22     {
23         super(inName);
24     }
25
26     public void testHistory() throws Exception JavaDoc
27     {
28         HistoryModule mod = (HistoryModule)getModule("HistoryModule");
29         
30         WebPageRequest inReq = getFixture().createPageRequest("/testcatalog/index.html");
31         
32         Archive archive = mod.getArchive(inReq); //this inits the store
33

34         Product prod = new Product();
35         prod.setId("test");
36         archive.getStore().getProductArchive().saveProduct(prod);
37
38         inReq.setRequestParameter("productid", "test");
39         UsageHistory history = mod.getUsageHistory(inReq);
40         
41         assertTrue( history.getRecords().size() < 2 );
42
43         HistoryRecord record = new HistoryRecord();
44         record.setId("1");
45         record.putData("cell1","Cell 1");
46
47         history.addRecord(record);
48
49         assertTrue( history.getRecords().size() < 2 );
50         assertEquals( 1, history.getRecords().size() );
51         mod.getHistoryArchive(inReq).save(archive, history);
52     }
53     
54     public void testUsageRestrictsProduct() throws Exception JavaDoc
55     {
56         HistoryModule mod = (HistoryModule)getModule("HistoryModule");
57         
58         WebPageRequest inReq = getFixture().createPageRequest("/testcatalog/index.html");
59         
60         Archive archive = mod.getArchive(inReq); //this inits the store
61

62         Product prod = new Product();
63         prod.setId("testrestriction");
64         archive.getStore().getProductArchive().saveProduct(prod);
65         
66         //Clear the history so the test will be valid
67
inReq.setRequestParameter("productid", "testrestriction");
68         UsageHistory hstry = mod.getUsageHistory(inReq);
69         hstry.clear();
70         mod.getHistoryArchive(inReq).save(archive, hstry);
71
72         //Setup the collection to be saved
73
Collection collection = new Collection();
74         CollectionItem collectionItem = new CollectionItem();
75         collectionItem.setProduct(prod);
76         collection.addItem(collectionItem);
77         archive.setUserCollections(new UserCollections());
78         archive.getUserCollections().setSelectedCollection(collection);
79
80         //Set the parameters to the save routine
81
inReq.setRequestParameter("cIiI", "");
82         inReq.setRequestParameter("isfpo", "true");
83         inReq.setRequestParameter("username", "testuser");
84         inReq.setRequestParameter("use", "test");
85         inReq.setRequestParameter("use2", "");
86         inReq.setRequestParameter("proj", "");
87         inReq.setRequestParameter("nm", "");
88         inReq.setRequestParameter("formID", "none");
89         inReq.setRequestParameter("comments", "");
90         inReq.setRequestParameter("rdays", "182");
91         
92         mod.saveUsageHistoryForCollection(inReq);
93         
94         inReq.setRequestParameter("productid", "testrestriction");
95         UsageHistory history = mod.getUsageHistory(inReq);
96         assertEquals( 1, history.getRecords().size() );
97
98         Product restrictedProduct = history.getProduct();
99         assertEquals( "true", restrictedProduct.get("Restricted"));
100         Calendar JavaDoc calendar = new GregorianCalendar JavaDoc();
101         calendar.add(Calendar.DAY_OF_YEAR, 182);
102         Date JavaDoc releaseDate = restrictedProduct.getDate("Restriction Release Date", "dd/MM/yyyy");
103         assertNotNull(releaseDate);
104         Calendar JavaDoc releaseCalendar = new GregorianCalendar JavaDoc();
105         releaseCalendar.setTime(releaseDate);
106         assertEquals(calendar.get(Calendar.YEAR), releaseCalendar.get(Calendar.YEAR));
107         assertEquals(calendar.get(Calendar.DAY_OF_YEAR), releaseCalendar.get(Calendar.DAY_OF_YEAR));
108     }
109 }
110
Popular Tags