- Added links to QBCore and COX MySQL documentation in the main docs index. - Refactored GenerateManifest and GenerateResourceBoilerplate tools to use the correct namespaces. - Updated tests for GenerateManifest and GenerateResourceBoilerplate tools to remove unnecessary parentheses. - Refactored COX event and function tools to use the correct namespaces and updated related tests. - Introduced new tests for GetEventClientReference and GetEventServerReference tools. - Added tests for inventory client and server functions, ensuring they handle various scenarios. - Created tests for native client and server functions, including case insensitivity and example support. - Implemented QBCore client and server event/function reference tests, ensuring proper functionality and error handling. - Removed outdated tests for GetEventReference and GetQBCoreEventReference tools. - Updated SearchFiveMDocs tool to use the correct namespace and improved test coverage.
50 lines
1.6 KiB
PHP
50 lines
1.6 KiB
PHP
<?php
|
|
|
|
use App\Mcp\Tools\FiveM\Server\GetNativeServerFunction;
|
|
use Laravel\Mcp\Request;
|
|
|
|
it('returns server native function info', function () {
|
|
$tool = new GetNativeServerFunction;
|
|
$request = new Request(['function_name' => 'TriggerClientEvent', 'language' => 'lua']);
|
|
|
|
$response = $tool->handle($request);
|
|
|
|
expect((string) $response->content())->toContain('TriggerClientEvent');
|
|
});
|
|
|
|
it('returns not found for invalid function', function () {
|
|
$tool = new GetNativeServerFunction;
|
|
$request = new Request(['function_name' => 'InvalidServerFunction', 'language' => 'lua']);
|
|
|
|
$response = $tool->handle($request);
|
|
|
|
expect((string) $response->content())->toContain('not found');
|
|
});
|
|
|
|
it('supports javascript examples for server natives', function () {
|
|
$tool = new GetNativeServerFunction;
|
|
$request = new Request(['function_name' => 'GetPlayerName', 'language' => 'js']);
|
|
|
|
$response = $tool->handle($request);
|
|
|
|
expect((string) $response->content())->not()->toBeEmpty();
|
|
});
|
|
|
|
it('handles case insensitive server function names', function () {
|
|
$tool = new GetNativeServerFunction;
|
|
$request = new Request(['function_name' => 'getplayername', 'language' => 'lua']);
|
|
|
|
$response = $tool->handle($request);
|
|
|
|
expect((string) $response->content())->toContain('GetPlayerName');
|
|
});
|
|
|
|
it('lists all server functions when no name provided', function () {
|
|
$tool = new GetNativeServerFunction;
|
|
$request = new Request(['function_name' => '', 'language' => 'lua']);
|
|
|
|
$response = $tool->handle($request);
|
|
|
|
expect((string) $response->content())->not()->toBeEmpty();
|
|
});
|