001: /*
002: * Copyright (C) 1999-2004 <A href="http://www-ist.massey.ac.nz/JBDietrich" target="_top">Jens Dietrich</a>
003: *
004: * This library is free software; you can redistribute it and/or
005: * modify it under the terms of the GNU Lesser General Public
006: * License as published by the Free Software Foundation; either
007: * version 2 of the License, or (at your option) any later version.
008: *
009: * This library is distributed in the hope that it will be useful,
010: * but WITHOUT ANY WARRANTY; without even the implied warranty of
011: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
012: * Lesser General Public License for more details.
013: *
014: * You should have received a copy of the GNU Lesser General Public
015: * License along with this library; if not, write to the Free Software
016: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
017: */
018: package test.org.mandarax.zkb;
019:
020: import org.mandarax.kernel.ClauseSet;
021: import org.mandarax.kernel.KnowledgeBase;
022: import org.mandarax.reference.AdvancedKnowledgeBase;
023: import org.mandarax.zkb.ObjectPersistencyService;
024: import org.mandarax.zkb.ZKBDriver;
025:
026: /**
027: * Generic test case for ZKB drivers/ OPSs using one clause set.
028: * @author <A href="http://www-ist.massey.ac.nz/JBDietrich" target="_top">Jens Dietrich</A>
029: * @version 3.4 <7 March 05>
030: * @since 2.2
031: */
032: public class ZKBTestCase4ClauseSets extends ZKBTestCase {
033:
034: private KnowledgeBase kb = null;
035: private Object attachment = null;
036:
037: /**
038: * Constructor.
039: * @param driver the zkb driver
040: * @param ops the object persistency service.
041: * @param cs the clause set to be tested
042: * @param name the name of the test case
043: * @param zipOrFolder whether the zkb is stored in a zip file or folder true - zip, false - folder
044: */
045: public ZKBTestCase4ClauseSets(ZKBDriver driver,
046: ObjectPersistencyService ops, ClauseSet cs, String name,
047: boolean zipOrFolder) {
048: super (driver, ops, name, zipOrFolder);
049: kb = new AdvancedKnowledgeBase();
050: kb.add(cs);
051:
052: }
053:
054: /**
055: * Constructor.
056: * @param driver the zkb driver
057: * @param ops the object persistency service.
058: * @param cs the clause set to be tested
059: * @param obj an attachment
060: * @param name the name of the test case
061: * @param zipOrFolder whether the zkb is stored in a zip file or folder true - zip, false - folder
062: */
063: public ZKBTestCase4ClauseSets(ZKBDriver driver,
064: ObjectPersistencyService ops, ClauseSet cs, Object obj,
065: String name, boolean zipOrFolder) {
066: super (driver, ops, name, zipOrFolder);
067: kb = new AdvancedKnowledgeBase();
068: kb.add(cs);
069: attachment = obj;
070:
071: }
072:
073: /**
074: * Constructor.
075: * @param driver the zkb driver
076: * @param ops the object persistency service.
077: * @param cs1 the first clause set
078: * @param cs2 the second clause set
079: * @param name the name of the test case
080: * @param zipOrFolder whether the zkb is stored in a zip file or folder true - zip, false - folder
081: */
082: public ZKBTestCase4ClauseSets(ZKBDriver driver,
083: ObjectPersistencyService ops, ClauseSet cs1, ClauseSet cs2,
084: String name, boolean zipOrFolder) {
085: super (driver, ops, name, zipOrFolder);
086: kb = new AdvancedKnowledgeBase();
087: kb.add(cs1);
088: kb.add(cs2);
089: }
090:
091: /**
092: * Get the knowledge base used as test data.
093: * @return a knowledge base
094: */
095: public KnowledgeBase getKB() {
096: return kb;
097: }
098:
099: /**
100: * Get the attachment to be saved with the knowledge base.
101: * @return a knowledge base
102: */
103: public Object getAttachment() {
104: return attachment;
105: }
106: }
|