PHP Classes

File: tests/TestResponse/PageJsTest.php

Recommend this page to a friend!
  Packages of Thierry Feuzeu   Jaxon   tests/TestResponse/PageJsTest.php   Download  
File: tests/TestResponse/PageJsTest.php
Role: Class source
Content type: text/plain
Description: Class source
Class: Jaxon
Call PHP classes from JavaScript using AJAX
Author: By
Last change:
Date: 4 months ago
Size: 10,273 bytes
 

Contents

Class file image Download
<?php namespace Jaxon\Tests\TestResponse; use Jaxon\Jaxon; use Jaxon\Exception\RequestException; use Jaxon\Exception\SetupException; use Nyholm\Psr7Server\ServerRequestCreator; use Psr\Http\Message\ServerRequestInterface; use PHPUnit\Framework\TestCase; class PageJsTest extends TestCase { /** * @throws SetupException */ public function setUp(): void { jaxon()->setOption('core.prefix.class', ''); jaxon()->register(Jaxon::CALLABLE_DIR, __DIR__ . '/../src/response'); } /** * @throws SetupException */ public function tearDown(): void { jaxon()->reset(); parent::tearDown(); } /** * @throws SetupException * @throws RequestException */ function testCommandRedirect() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'redirect', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(2, $xResponse->getCommandCount()); } /** * @throws SetupException * @throws RequestException */ function testCommandConfirm() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'confirm', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(3, $xResponse->getCommandCount()); } /** * @throws SetupException * @throws RequestException */ function testCommandAlert() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'alert', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(1, $xResponse->getCommandCount()); } /** * @throws SetupException * @throws RequestException */ function testCommandDebug() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'debug', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(1, $xResponse->getCommandCount()); } /** * @throws SetupException * @throws RequestException */ function testCommandCall() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'call', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(1, $xResponse->getCommandCount()); } /** * @throws SetupException * @throws RequestException */ function testCommandSetEvent() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'setEvent', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(1, $xResponse->getCommandCount()); } /** * @throws SetupException * @throws RequestException */ function testCommandOnClick() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'onClick', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(1, $xResponse->getCommandCount()); } /** * @throws SetupException * @throws RequestException */ function testCommandAddHandler() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'addHandler', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(1, $xResponse->getCommandCount()); } /** * @throws SetupException * @throws RequestException */ function testCommandRemoveHandler() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'removeHandler', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(1, $xResponse->getCommandCount()); } /** * @throws SetupException * @throws RequestException */ function testCommandSleep() { // Send a request to the registered class jaxon()->di()->set(ServerRequestInterface::class, function($c) { return $c->g(ServerRequestCreator::class) ->fromGlobals() ->withParsedBody([ 'jxncall' => json_encode([ 'type' => 'class', 'name' => 'TestJs', 'method' => 'sleep', 'args' => [], ]), ]) ->withMethod('POST'); }); // Process the request and get the response $this->assertTrue(jaxon()->canProcessRequest()); jaxon()->di()->getRequestHandler()->processRequest(); $xResponse = jaxon()->getResponse(); $this->assertEquals(1, $xResponse->getCommandCount()); } }