1 4 package com.openedit.archive.history; 5 6 import java.util.Calendar ; 7 import java.util.Date ; 8 import java.util.GregorianCalendar ; 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 inName) 22 { 23 super(inName); 24 } 25 26 public void testHistory() throws Exception 27 { 28 HistoryModule mod = (HistoryModule)getModule("HistoryModule"); 29 30 WebPageRequest inReq = getFixture().createPageRequest("/testcatalog/index.html"); 31 32 Archive archive = mod.getArchive(inReq); 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 55 { 56 HistoryModule mod = (HistoryModule)getModule("HistoryModule"); 57 58 WebPageRequest inReq = getFixture().createPageRequest("/testcatalog/index.html"); 59 60 Archive archive = mod.getArchive(inReq); 62 Product prod = new Product(); 63 prod.setId("testrestriction"); 64 archive.getStore().getProductArchive().saveProduct(prod); 65 66 inReq.setRequestParameter("productid", "testrestriction"); 68 UsageHistory hstry = mod.getUsageHistory(inReq); 69 hstry.clear(); 70 mod.getHistoryArchive(inReq).save(archive, hstry); 71 72 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 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 calendar = new GregorianCalendar (); 101 calendar.add(Calendar.DAY_OF_YEAR, 182); 102 Date releaseDate = restrictedProduct.getDate("Restriction Release Date", "dd/MM/yyyy"); 103 assertNotNull(releaseDate); 104 Calendar releaseCalendar = new GregorianCalendar (); 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 |