<?php declare(strict_types=1); use Paynow\Http\RequestInfo; use PHPUnit\Framework\TestCase; /** * Class HttpRequestTest * @noInspection */ final class HttpRequestTests extends TestCase { public function testCanSendGetHttpRequest(): void { $new = new \Paynow\Http\Client(new \Paynow\Core\Logger()); $data = $new->execute(RequestInfo::create('http://localhost/client/', 'GET', [])); $this->assertEquals('success', $data); } public function testCanSendHttpRequestWithOneArgument(): void { $new = new \Paynow\Http\Client(new \Paynow\Core\Logger()); $data = $new->execute(RequestInfo::create('http://localhost/client/', 'GET', ['json' => 'true'])); $json = json_decode($data); $this->assertTrue(!is_null($json)); } public function testCanSendHttpRequestWithMultipleArguments(): void { $new = new \Paynow\Http\Client(new \Paynow\Core\Logger()); $data = $new->execute(RequestInfo::create('http://localhost/client/', 'GET', ['json' => 'true', 'fruits' => 'true'])); $json = json_decode($data); $this->assertTrue(is_array($json) && count($json) == 6); } public function testCanSendPostHttpRequest(): void { $new = new \Paynow\Http\Client(new \Paynow\Core\Logger()); $data = $new->execute(RequestInfo::create('http://localhost/client/', 'POST', [])); $this->assertEquals('Yatta!', $data); } public function testCanSendPostHttpRequestWithOneArgument(): void { $new = new \Paynow\Http\Client(new \Paynow\Core\Logger()); $data = $new->execute(RequestInfo::create('http://localhost/client/', 'POST', ['json' => 'true'])); $this->assertEquals('JSON!!!', $data); } public function testCanSendPostHttpRequestWithMultipleArguments(): void { $new = new \Paynow\Http\Client(new \Paynow\Core\Logger()); $data = $new->execute(RequestInfo::create('http://localhost/client/', 'POST', ['fruits' => 'true'])); $this->assertEquals('FRUITY JSON!!!', $data); } }