Unidad PHP | función de afirmaciónContainsOnly()

La función assertContainsOnly() es una función incorporada en PHPUnit y se usa para afirmar que una array contiene todos sus valores como el tipo de datos dado. Esta afirmación devolverá verdadero en el caso de que la array contenga valores de solo el tipo de datos dado; de lo contrario, devolverá falso y, en caso de verdadero, el caso de prueba afirmado se aprobó; de lo contrario, el caso de prueba falló.
Sintaxis: 
 

assertContainsOnly(string $dataType, array $array, 
                 boolean $isNativeType = null, string $message = '')

Parámetros: Esta función acepta cuatro parámetros como se muestra en la sintaxis anterior. Los parámetros se describen a continuación: 
 

  • $dataType: este parámetro es una string que consiste en el nombre del tipo de datos.
  • $array: este parámetro es una array para la cual la función de aserción verificará si contiene solo valores del tipo dado o no.
  • $isNativeType: estos parámetros indican si el tipo de datos es un tipo de datos nativo de PHP o no.
  • $mensaje: este parámetro toma valor de string. Cuando el caso de prueba falló, este mensaje de string se mostró como un mensaje de error.

Los siguientes programas ilustran la función assertContainsOnly() en PHPUnit:
Programa 1: 
 

php

<?php
use PHPUnit\Framework\TestCase;
 
class GeeksPhpunitTestCase extends TestCase
{
    public function testNegativeTestcaseForAssertContainsOnly()
    {
        $testArray = array("geeksforgeek", 2);
        $dataType = "string";
        // assert function to test whether testArray contains
        // only string values
        $this->assertContainsOnly($dataType, $testArray, null,
                 "testArray doesn't  contains only string") ;
    }
}
 
?>

Producción: 
 

PHPUnit 8.2.5 by Sebastian Bergmann and contributors.

F                                                                   1 / 1 (100%)

Time: 236 ms, Memory: 10.00 MB

There was 1 failure:

1) GeeksPhpunitTestCase::testNegativeTestcaseForAssertContainsOnly
testArray doesn't  contains only string
Failed asserting that Array &0 (
    0 => 'geeksforgeek'
    1 => 2
) contains only values of type "string".

/home/shivam/Documents/geeks/phpunit/abc.php:11

FAILURES!
Tests: 1, Assertions: 1, Failures: 1.

Programa 2: 
 

php

<?php
use PHPUnit\Framework\TestCase;
 
class GeeksPhpunitTestCase extends TestCase
{
    public function testPositiveTestcaseForAssertContainsOnly()
    {
        $testArray = array("geeksforgeek", "learn");
        $dataType = "string";
        // assert function to test whether testArray contains
        // only string values
        $this->assertContainsOnly($dataType, $testArray, null,
               "testArray doesn't  contains only string") ;
    }
}
 
?>

Producción: 
 

PHPUnit 8.2.5 by Sebastian Bergmann and contributors.

.                                                                   1 / 1 (100%)

Time: 67 ms, Memory: 10.00 MB

OK (1 test, 1 assertion)

Nota: Para ejecutar casos de prueba con phpunit, siga los pasos desde aquí . Además, assertContainsOnly() es compatible con phpunit 7 y superior.
 

Publicación traducida automáticamente

Artículo escrito por Shivam.Pradhan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *