Package aima.test.core.unit.logic.propositional.visitors

Source Code of aima.test.core.unit.logic.propositional.visitors.SymbolCollectorTest

package aima.test.core.unit.logic.propositional.visitors;

import java.util.Set;

import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;

import aima.core.logic.propositional.parsing.PEParser;
import aima.core.logic.propositional.parsing.ast.Sentence;
import aima.core.logic.propositional.parsing.ast.Symbol;
import aima.core.logic.propositional.visitors.SymbolCollector;

/**
* @author Ravi Mohan
*
*/
public class SymbolCollectorTest {
  private PEParser parser;

  private SymbolCollector collector;

  @Before
  public void setUp() {
    parser = new PEParser();
    collector = new SymbolCollector();
  }

  @Test
  public void testCollectSymbolsFromComplexSentence() {
    Sentence sentence = (Sentence) parser
        .parse(" (  (  ( NOT B11 )  OR  ( P12 OR P21 ) ) AND  (  ( B11 OR  ( NOT P12 )  ) AND  ( B11 OR  ( NOT P21 )  ) ) )");
    Set<Symbol> s = collector.getSymbolsIn(sentence);
    Assert.assertEquals(3, s.size());
    Sentence b11 = (Sentence) parser.parse("B11");
    Sentence p21 = (Sentence) parser.parse("P21");
    Sentence p12 = (Sentence) parser.parse("P12");
    Assert.assertTrue(s.contains(b11));
    Assert.assertTrue(s.contains(p21));
    Assert.assertTrue(s.contains(p12));
  }
}
TOP

Related Classes of aima.test.core.unit.logic.propositional.visitors.SymbolCollectorTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.