6 changed files with 160 additions and 15 deletions
-
16src/Client.php
-
6src/Laravel/Facade.php
-
4src/Laravel/ServiceProvider.php
-
49src/Laravel/Wrapper.php
-
65tests/Laravel/ServiceProviderTests.php
-
35tests/Laravel/TestCase.php
@ -0,0 +1,65 @@ |
|||||
|
<?php |
||||
|
|
||||
|
namespace RouterOS\Tests\Laravel; |
||||
|
|
||||
|
use RouterOS\Config; |
||||
|
use RouterOS\Laravel\Wrapper; |
||||
|
|
||||
|
class ServiceProviderTests extends TestCase |
||||
|
{ |
||||
|
private $client = [ |
||||
|
"__construct", |
||||
|
"write", |
||||
|
"query", |
||||
|
"read", |
||||
|
"readAsIterator", |
||||
|
"parseResponse", |
||||
|
"connect", |
||||
|
"getSocket", |
||||
|
"w", |
||||
|
"q", |
||||
|
"r", |
||||
|
"ri", |
||||
|
"wr", |
||||
|
"qr", |
||||
|
"wri", |
||||
|
"qri", |
||||
|
]; |
||||
|
|
||||
|
public function testAbstractsAreLoaded(): void |
||||
|
{ |
||||
|
$manager = app(Wrapper::class); |
||||
|
$this->assertInstanceOf(Wrapper::class, $manager); |
||||
|
} |
||||
|
|
||||
|
public function testConfig(): void |
||||
|
{ |
||||
|
$config = \RouterOS::config([ |
||||
|
'host' => '192.168.1.3', |
||||
|
'user' => 'admin', |
||||
|
'pass' => 'admin' |
||||
|
]); |
||||
|
$this->assertInstanceOf(Config::class, $config); |
||||
|
|
||||
|
$params = $config->getParameters(); |
||||
|
$this->assertArrayHasKey('host', $params); |
||||
|
$this->assertArrayHasKey('user', $params); |
||||
|
$this->assertArrayHasKey('pass', $params); |
||||
|
$this->assertArrayHasKey('ssl', $params); |
||||
|
$this->assertArrayHasKey('legacy', $params); |
||||
|
$this->assertArrayHasKey('timeout', $params); |
||||
|
$this->assertArrayHasKey('attempts', $params); |
||||
|
$this->assertArrayHasKey('delay', $params); |
||||
|
} |
||||
|
|
||||
|
public function testClient(): void |
||||
|
{ |
||||
|
$client = \RouterOS::client([ |
||||
|
'host' => '192.168.1.3', |
||||
|
'user' => 'admin', |
||||
|
'pass' => 'admin' |
||||
|
], false); |
||||
|
|
||||
|
$this->assertEquals(get_class_methods($client), $this->client); |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,35 @@ |
|||||
|
<?php |
||||
|
|
||||
|
namespace RouterOS\Tests\Laravel; |
||||
|
|
||||
|
use RouterOS\Laravel\Facade; |
||||
|
use RouterOS\Laravel\ServiceProvider; |
||||
|
use Orchestra\Testbench\TestCase as Orchestra; |
||||
|
|
||||
|
/** |
||||
|
* Class TestCase |
||||
|
* |
||||
|
* @package Tests |
||||
|
*/ |
||||
|
abstract class TestCase extends Orchestra |
||||
|
{ |
||||
|
/** |
||||
|
* @inheritdoc |
||||
|
*/ |
||||
|
protected function getPackageProviders($app): array |
||||
|
{ |
||||
|
return [ |
||||
|
ServiceProvider::class, |
||||
|
]; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @inheritdoc |
||||
|
*/ |
||||
|
protected function getPackageAliases($app): array |
||||
|
{ |
||||
|
return [ |
||||
|
'RouterOS' => Facade::class, |
||||
|
]; |
||||
|
} |
||||
|
} |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue