Subversion Repositories eFlore/Projets.eflore-projets

Rev

Rev 790 | Blame | Compare with Previous | Last modification | View Log | RSS feed

<?php
require_once dirname(__FILE__).'/../ServiceEflorePhpUnit.php';

class WikipediaTest extends ServiceEflorePhpUnit {
        
        public function __construct() {
                $this->projet = 'wikipedia';
                $this->service = 'textes';
        }
        
        public function testPageComplete() {
                        
                $ressources = array('Viola_alba');
                $parametres = array('txt.format'=> 'htm');
                $url = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres);
                $retour = $this->consulterJson($this->service, $this->projet, $ressources, $parametres);

                $this->assertEquals("Violette blanche", $retour['titre'], "Le titre n'est pas celui attendu. Voir : $url");
                $this->assertArrayHasKey('id', $retour, "Le json ne contient pas d'attribut : id. Voir : $url");
                $this->assertArrayHasKey('titre', $retour, "Le json ne contient pas d'attribut : titre. Voir : $url");
                $this->assertArrayHasKey('texte', $retour, "Le json ne contient pas d'attribut : texte. Voir : $url");
                $this->assertContains("<a href=\"http://fr.wikipedia.org/wiki/Fichier:Viola_alba", $retour['texte'], "Le titre n'est pas celui attendu. Voir : $url");

                $this->assertArrayHasKey('mime', $retour, "Le json ne contient pas d'attribut : mime. Voir : $url");
                $this->assertArrayHasKey('href', $retour, "Le json ne contient pas d'attribut : href. Voir : $url");
        }
        
        public function testDescription() {
                        
                $ressources = array('Viola_alba');
                $parametres = array('txt.format'=> 'htm',
                                                        'txt.section.titre' => 'Description');
                $url = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres);
                $retour = $this->consulterJson($this->service, $this->projet, $ressources, $parametres);
                
                $this->assertArrayHasKey('id', $retour, "Le json ne contient pas d'attribut : id. Voir : $url");
                $this->assertArrayHasKey('titre', $retour, "Le json ne contient pas d'attribut : titre. Voir : $url");
                $this->assertEquals("Violette blanche", $retour['titre'], "Le titre n'est pas celui attendu. Voir : $url");
                $this->assertArrayHasKey('texte', $retour, "Le json ne contient pas d'attribut : texte. Voir : $url");
                $this->assertEquals("<p>C'est une espèce ", substr($retour['texte'], 0, 21), "Le texte n'est pas celui attendu. Voir : $url");
        }
        
        public function testCaracteristiques() {
                        
                $ressources = array('Viola_alba');
                $parametres = array('txt.format'=> 'htm',
                                                                'txt.section.titre' => 'Caractéristiques');
                $url = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres);
                $retour = $this->consulterJson($this->service, $this->projet, $ressources, $parametres);
        
                $this->assertEquals("Violette blanche", $retour['titre'], "Le titre n'est pas celui attendu. Voir : $url");
                $this->assertArrayHasKey('texte', $retour, "Le json ne contient pas d'attribut : texte. Voir : $url");
                $debut_chara = '<ul>
<li>organes repr';
                $this->assertEquals($debut_chara, trim(substr($retour['texte'], 0, 21)), "Le texte n'est pas celui attendu. Voir : $url");
        }
}

?>