vendredi 6 mai 2016

Testing an abstract of a child-class from an abstract class

To stay with the same example I used here:

I now want to test the implementation of the protected methods in my child-classes.
Because I stub them in my test of the abstract class, the implementations themselves aren't tested.
But a protected-method isn't tested normally, so that's why I'd like your suggestions on how to test them after all.

Parent-class:

abstract class Order
{
    public function __construct( $orderId, User $user )
    {
        $this->id = $this->findOrderId( $user->getId(), $orderId );

        if ($this->id !== false) {
            $this->setOrderData();
        }
    }

    abstract protected function findOrderId( $userId, $orderIdToSearch );

    private function setOrderData()
    {
        ...
    }
}

Child-class to test:

public class OrderTypeA extends Order
{
    protected function findOrderId($userId, $orderId)
    {
        ...
    }
}

Test code:

class OrderTypeATest extends PHPUnit_Framework_TestCase
{
    public function testFindOrderId() {
        ???
    }
}

Aucun commentaire:

Enregistrer un commentaire