Skip to content
Extraits de code Groupes Projets
Valider 13b3d8c1 rédigé par marcimat's avatar marcimat Validation de marcimat
Parcourir les fichiers

tests: Boucle Documents, modeles img/doc/emb en PHPUnit

parent 565155ce
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -23,9 +23,8 @@ class OperatorRegexpLikeTest extends SquelettesTestCase ...@@ -23,9 +23,8 @@ class OperatorRegexpLikeTest extends SquelettesTestCase
private function getArticleIdTitle(): array { private function getArticleIdTitle(): array {
$result = $this->getArticle(); $result = $this->getArticle();
[$id_article, $starts_with] = explode(':', trim($result)); [$id_article, $starts_with] = explode(':', trim($result));
$id_article = (int) $id_article;
return [ return [
'id_article' => $id_article, 'id_article' => (int) $id_article,
'starts_with' => $starts_with 'starts_with' => $starts_with
]; ];
} }
......
<?php
declare(strict_types=1);
namespace Spip\Test\Squelettes\Modeles;
use PHPUnit\Framework\Attributes\Depends;
use PHPUnit\Framework\Attributes\DataProvider;
use Spip\Test\SquelettesTestCase;
use Spip\Test\Templating;
class DocumentsTest extends SquelettesTestCase
{
/**
* D'abord une image uploadee en vignette, et sans titre
* On teste le rendu de son src, width, height
*/
#[DataProvider('providerDocumentSansTitreModeles')]
public function testDocumentSansTitreModeles(string $modele): void {
$id_document = $this->getIdDocumentImageSansTitreNiDescriptif();
$modele = sprintf($modele, $id_document);
$this->assertOkCode(<<<SPIP
[(#SET{modele,[(#ENV*{modele}|propre)]})]
[(#SET{src,#GET{modele}|extraire_balise{img}|extraire_attribut{src}})]
[(#GET{src}|quote_amp|=={#URL_DOCUMENT}|oui)OK ]
\<img#ID_DOCUMENT\> src pas bon: "#URL_DOCUMENT" != "[(#GET{src})]"
SPIP,
[
'id_document' => $id_document,
'modele' => $modele,
]
);
}
public static function providerDocumentSansTitreModeles() {
return [
'img' => ['<img%s>'],
'doc' => ['<doc%s>'],
'emb' => ['<emb%s>'],
];
}
private function getIdDocumentImageSansTitreNiDescriptif(): int {
$templating = Templating::fromString();
$result = $templating->render(<<<SPIP
<BOUCLE_d(DOCUMENTS){mode=image}{titre=''}{descriptif=''}{0,1}>#ID_DOCUMENT</BOUCLE_d>
NA Ce test exige une image chargee en mode "image" et n'ayant ni titre ni descriptif
<//B_d>
SPIP);
if ($this->isNa($result)) {
$this->markTestSkipped($result);
}
return (int) $result;
}
}
[(#REM)
On va tester le rendu des documents joints
]
#SET{ok1,''}#SET{ok2,''}#SET{ok3,''}
[(#REM)
D'abord une image uploadee en vignette, et sans titre
On teste le rendu de son src, width, height
]
<BOUCLE_d(DOCUMENTS){mode=image}{titre=''}{descriptif=''}{0,1}>
[(#SET{img,[(#REM|sinon{<img#ID_DOCUMENT>}|propre)]})]
[(#SET{doc,[(#REM|sinon{<doc#ID_DOCUMENT>}|propre)]})]
[(#SET{emb,[(#REM|sinon{<emb#ID_DOCUMENT>}|propre)]})]
[(#GET{img}|extraire_balise{img}|extraire_attribut{src}|quote_amp|=={#URL_DOCUMENT}|?{
#SET{ok1,1}
,' '})
&lt;img#ID_DOCUMENT&gt; src pas bon: &quot;#URL_DOCUMENT&quot; != &quot;[(#GET{img}|extraire_balise{img}|extraire_attribut{src})]&quot;
]
[(#GET{doc}|extraire_balise{img}|extraire_attribut{src}|quote_amp|=={#URL_DOCUMENT}|?{
#SET{ok2,1}
,' '})
&lt;doc#ID_DOCUMENT&gt; src pas bon: &quot;#URL_DOCUMENT&quot; != &quot;[(#GET{doc}|extraire_balise{img}|extraire_attribut{src})]&quot;
]
[(#GET{emb}|extraire_balise{img}|extraire_attribut{src}|quote_amp|=={#URL_DOCUMENT}|?{
#SET{ok3,1}
,' '})
&lt;emb#ID_DOCUMENT&gt; src pas bon: &quot;#URL_DOCUMENT&quot; != &quot;[(#GET{emb}|extraire_balise{img}|extraire_attribut{src})]&quot;
]
</BOUCLE_d>
NA Ce test exige une image chargee en mode "image" et n'ayant ni titre ni descriptif
<//B_d>
[(#GET{ok1}|?{#GET{ok2}}|?{#GET{ok3}}|?{OK})]
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter