File: unittest.php

Recommend this page to a friend!
  Classes of Chi Hoang  >  PHP Aho-Corasick String Matching  >  unittest.php  >  Download  
File: unittest.php
Role: Unit test script
Content type: text/plain
Description: unittest class
Class: PHP Aho-Corasick String Matching
Match string patterns using Aho-Corasick algorithm
Author: By
Last change:
Date: 6 years ago
Size: 4,815 bytes
 

Contents

Class file image Download
<?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");
  }
}
?>

For more information send a message to info at phpclasses dot org.