Login   Register  
PHP Classes
elePHPant
Icontem

File: tests/unit/lib/infojunkie/EsriGrid/BasicTest.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Karim Ratib  >  Esri Grid  >  tests/unit/lib/infojunkie/EsriGrid/BasicTest.php  >  Download  
File: tests/unit/lib/infojunkie/EsriGrid/BasicTest.php
Role: Unit test script
Content type: text/plain
Description: Unit test script
Class: Esri Grid
Parse Esri Grid ASCII GIS files
Author: By
Last change:
Date: 1 year ago
Size: 2,007 bytes
 

Contents

Class file image Download
<?php
namespace infojunkie\EsriGrid;

class 
BasicTest extends \PHPUnit_Framework_TestCase {

  public function 
setUp() {
  }

  public function 
testFileNotFound() {
    
$this->setExpectedException('infojunkie\EsriGrid\Exception');
    
$file = new GridFile('notfound');
  }

  public function 
testSingleTile() {
    
$this->max = -99999;
    
$this->min 100000;
    
$file = new GridFile(__DIR__ '/../../../../data/test_dem1.txt');
    
$grid $file->getGridFromPoints(00140230, array($this'calcStats'));
    
$this->assertEquals(array(
      array(  
13,    5,    1),
      array(  
88,   75,   27),
      array(  
32,   42,   50),
      array(   
3,    8,   35),
      array(
null,   20,  100),
    ), 
$grid);
    
$this->assertEquals(1$this->min);
    
$this->assertEquals(100$this->max);
  }

  public function 
testMultipleTiles() {
    
$this->max = -99999;
    
$this->min 100000;
    
$files = new GridFiles(array(
      
__DIR__ '/../../../../data/test_dem1.txt'
      
__DIR__ '/../../../../data/test_dem2.txt'
      
__DIR__ '/../../../../data/test_dem3.txt'
      
__DIR__ '/../../../../data/test_dem4.txt'
      
__DIR__ '/../../../../data/test_dem5.txt'
      
__DIR__ '/../../../../data/test_dem6.txt',
    ));
    
$grid $files->getGridFromPoints(175225325675, array($this'calcStats'));
    
$this->assertEquals(array(
      array(  
36null,   20100),
      array(   
2nullnull,   5),
      array(
null,   13,    5,   1),
      array(   
9,   88,   75,  27),
      array(   
6,   32,   42,  50),
      array(  
10,    3,    8,  35),
      array(  
36null,   20100),
      array(   
2nullnull,   5),
      array(
null,   13,    5,   1),
      array(   
9,   88,   75,  27),
    ), 
$grid);
    
$this->assertEquals(1$this->min);
    
$this->assertEquals(100$this->max);
  }

  function 
calcStats($x$y$elevation) {
    if (!
is_null($elevation)) {
      
$this->max max($this->max$elevation);
      
$this->min min($this->min$elevation);
    }
  }
}