| 
<?php
/*
 *      Copyright (c) 2014-2015 Chi Hoang
 *      All rights reserved
 */
 require_once '/usr/share/php5/PEAR/PHPUnit/Autoload.php';
 require_once("ahocorasick.php");
 
 class unittest extends PHPUnit_Framework_TestCase
 {
 public function testexample1()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add ("a");
 $tree->add ("ab");
 $tree->add ("bab");
 $tree->add ("bc");
 $tree->add ("bca");
 $tree->add ("c");
 $tree->add ("caa");
 echo $tree->match ("abccab");
 $this->expectOutputString("a,ab,bc,c,c,a,ab");
 }
 
 public function testexample2()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("bot");
 $tree->add("otis");
 $tree->add("ott");
 $tree->add("otto");
 $tree->add("tea");
 echo $tree->match("botttea");
 $this->expectOutputString("bot,ott,tea");
 }
 
 public function testexample3()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("he");
 $tree->add("she");
 $tree->add("his");
 $tree->add("hers");
 echo $tree->match("ushers");
 $this->expectOutputString("he,she,hers");
 }
 
 public function testexample4()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("ananas");
 $tree->add("antani");
 $tree->add("assassin");
 echo $tree->match ("banananassata");
 $this->expectOutputString("ananas");
 }
 
 public function testexample5()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("fast");
 $tree->add("sofa");
 $tree->add("so");
 $tree->add("take");
 echo $tree->match("takesofasofastfassofatakesossosofastakeso");
 $this->expectOutputString("take,so,sofa,so,sofa,fast,so,sofa,take,so,so,so,sofa,fast,take,so");
 }
 
 public function testexample6()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add ("bc");
 $tree->add ("abc");
 echo $tree->match ("tabc");
 $this->expectOutputString("bc,abc");
 }
 
 public function testexample7()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("hi");
 $tree->add("hips");
 $tree->add("hip");
 $tree->add("hit");
 $tree->add("chip");
 echo $tree->match("microchips");
 $this->expectOutputString("hi,hip,chip,hips");
 }
 
 public function testexample8()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("ab");
 $tree->add("bc");
 $tree->add("bab");
 $tree->add("d");
 $tree->add("abcde");
 echo $tree->match("xbabcdex");
 $this->expectOutputString("ab,bab,bc,d,abcde");
 }
 
 public function testexample9()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("The");
 $tree->add("han");
 $tree->add("and");
 $tree->add("pork");
 $tree->add("port");
 $tree->add("pot");
 $tree->add("ha");
 $tree->add("e");
 echo $tree->match("The pot had a handle");
 $this->expectOutputString("The,e,pot,ha,ha,han,and,e");
 }
 
 public function testexample10()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("mercury");
 $tree->add("venus");
 $tree->add("earth");
 $tree->add("mars");
 $tree->add("jupiter");
 $tree->add("saturn");
 $tree->add("uranus");
 $tree->add("pluto");
 echo $tree->match("XXearthXXvenusaturnXXmarsaturn");
 $this->expectOutputString("earth,venus,saturn,mars,saturn");
 }
 public function testexample11()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("say");
 $tree->add("she");
 $tree->add("shr");
 $tree->add("he");
 $tree->add("her");
 echo $tree->match("yasherhs");
 $this->expectOutputString("she,he,her");
 }
 
 public function testexample12()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("AC");
 $tree->add("GTG");
 $tree->add("AACT");
 echo $tree->match("ACCGAGTGCGTGGACAAACTACGATTGTGGAATGAACT");
 $this->expectOutputString("AC,GTG,GTG,AC,AC,AACT,AC,GTG,AC,AACT");
 }
 public function testexample13()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("mercury");
 $tree->add("venus");
 $tree->add("earth");
 $tree->add("mars");
 $tree->add("jupiter");
 $tree->add("saturn");
 $tree->add("uranus");
 $tree->add("pluto");
 echo $tree->match("XXearthXXvenusaturnXXmarsaturn","ea*turn");
 $this->expectOutputString("earthXXvenusaturn,earthXXvenusaturnXXmarsaturn");
 }
 
 public function testexample14()
 {
 $tree = new Ahocorasick\Ahocorasick();
 $tree->add("AC");
 $tree->add("GTG");
 $tree->add("AACT");
 echo $tree->match("ACCGAGTGCGTGGACAAACTACGATTGTGGAATGAACT","AC*GT");
 $this->expectOutputString("ACCGAGT,ACCGAGTGCGT,ACCGAGTGCGTGGACAAACTACGATTGT,ACAAACTACGATTGT,ACTACGATTGT,ACGATTGT");
 }
 }
 ?>
 |