Cleanup pass based on prior PRs (#21)

* Updates to stub generation

* More idiomatic fixes from PHP team

* Moved tests from src/tests -> tests, got rid of extension-only tests

* fixed up test paths, regenerated arginfo
This commit is contained in:
Justin Boswell
2021-05-05 13:37:47 -07:00
committed by GitHub
parent 531330e1b2
commit 7e925c92fb
30 changed files with 99 additions and 119 deletions
+1 -6
View File
@@ -27,13 +27,8 @@
"src/" "src/"
] ]
}, },
"autoload-dev": {
"classmap": [
"src/tests/"
]
},
"scripts": { "scripts": {
"test": "@php -d extension=modules/awscrt.so vendor/bin/phpunit src/tests" "test": "@php -d extension=modules/awscrt.so vendor/bin/phpunit tests"
}, },
"license": "Apache-2.0" "license": "Apache-2.0"
} }
+4 -1
View File
@@ -1,6 +1,9 @@
<?php <?php
/** @generate-class-entries */ /**
* @generate-class-entries
* @generate-function-entries
*/
function aws_crt_last_error(): int {} function aws_crt_last_error(): int {}
+1 -1
View File
@@ -1,5 +1,5 @@
/* This is a generated file, edit the .stub.php file instead. /* This is a generated file, edit the .stub.php file instead.
* Stub hash: bd274f6b280b27aa5fb7d3be2ce85ad065936943 */ * Stub hash: 5101b351fa7644a60919f40e09b7877a31a6d3bd */
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_aws_crt_last_error, 0, 0, IS_LONG, 0) ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_aws_crt_last_error, 0, 0, IS_LONG, 0)
ZEND_END_ARG_INFO() ZEND_END_ARG_INFO()
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\Auth; namespace AWS\CRT\Auth;
use AWS\CRT\NativeResource as NativeResource; use AWS\CRT\NativeResource as NativeResource;
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\Auth; namespace AWS\CRT\Auth;
use AWS\CRT\NativeResource as NativeResource; use AWS\CRT\NativeResource as NativeResource;
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\Auth; namespace AWS\CRT\Auth;
/** /**
+5 -2
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT; namespace AWS\CRT;
use AWS\CRT\Internal\Extension; use AWS\CRT\Internal\Extension;
@@ -102,7 +105,7 @@ final class CRT {
* @param object $elg Pointer to the event loop group to release * @param object $elg Pointer to the event loop group to release
*/ */
function event_loop_group_release($elg) { function event_loop_group_release($elg) {
return self::$impl->aws_crt_event_loop_group_release($elg); self::$impl->aws_crt_event_loop_group_release($elg);
} }
/** /**
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\HTTP; namespace AWS\CRT\HTTP;
use AWS\CRT\Internal\Encoding; use AWS\CRT\Internal\Encoding;
+5 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\HTTP; namespace AWS\CRT\HTTP;
use AWS\CRT\NativeResource; use AWS\CRT\NativeResource;
@@ -12,6 +15,7 @@ abstract class Message extends NativeResource {
private $headers; private $headers;
public function __construct($method, $path, $query = [], $headers = []) { public function __construct($method, $path, $query = [], $headers = []) {
parent::__construct();
$this->method = $method; $this->method = $method;
$this->path = $path; $this->path = $path;
$this->query = $query; $this->query = $query;
+5 -2
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\HTTP; namespace AWS\CRT\HTTP;
use AWS\CRT\IO\InputStream; use AWS\CRT\IO\InputStream;
@@ -10,7 +13,7 @@ class Request extends Message {
public function __construct($method, $path, $query = [], $headers = [], $body_stream = null) { public function __construct($method, $path, $query = [], $headers = [], $body_stream = null) {
parent::__construct($method, $path, $query, $headers); parent::__construct($method, $path, $query, $headers);
if (!is_null($body_stream) && !($body_stream instanceof InputStream)) { if (!is_null($body_stream) && !($body_stream instanceof InputStream)) {
throw \InvalidArgumentException('body_stream must be an ' . InputStream::class); throw InvalidArgumentException('body_stream must be an instance of ' . InputStream::class);
} }
$this->body_stream = $body_stream; $this->body_stream = $body_stream;
} }
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\HTTP; namespace AWS\CRT\HTTP;
class Response extends Message { class Response extends Message {
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\IO; namespace AWS\CRT\IO;
use AWS\CRT\NativeResource as NativeResource; use AWS\CRT\NativeResource as NativeResource;
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\IO; namespace AWS\CRT\IO;
use AWS\CRT\NativeResource as NativeResource; use AWS\CRT\NativeResource as NativeResource;
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\Internal; namespace AWS\CRT\Internal;
final class Encoding { final class Encoding {
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT\Internal; namespace AWS\CRT\Internal;
use \RuntimeException; use \RuntimeException;
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT; namespace AWS\CRT;
use AWS\CRT\CRT as CRT; use AWS\CRT\CRT as CRT;
+4 -1
View File
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
namespace AWS\CRT; namespace AWS\CRT;
final class Options { final class Options {
-12
View File
@@ -1,12 +0,0 @@
<?php
use AWS\CRT\CRT as CRT;
abstract class CrtTestCase extends PHPUnit_Framework_TestCase {
// Ensure that after every test there are no errors in the CRT itself
protected function assertPostConditions() {
if (CRT::last_error()) {
$this->fail("Test left an error on the stack: " . CRT::error_name(CRT::last_error()));
}
}
}
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
use AWS\CRT\Auth\AwsCredentials as AwsCredentials; use AWS\CRT\Auth\AwsCredentials as AwsCredentials;
use AWS\CRT\Auth\StaticCredentialsProvider as StaticCredentialsProvider; use AWS\CRT\Auth\StaticCredentialsProvider as StaticCredentialsProvider;
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
use AWS\CRT\CRT; use AWS\CRT\CRT;
final class ErrorTest extends PHPUnit_Framework_TestCase { final class ErrorTest extends PHPUnit_Framework_TestCase {
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
use AWS\CRT\IO\EventLoopGroup as EventLoopGroup; use AWS\CRT\IO\EventLoopGroup as EventLoopGroup;
require_once('common.inc'); require_once('common.inc');
@@ -1,6 +1,8 @@
<?php <?php
/**
use AWS\CRT\HTTP\Message; * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
use AWS\CRT\HTTP\Headers; use AWS\CRT\HTTP\Headers;
use AWS\CRT\HTTP\Request; use AWS\CRT\HTTP\Request;
use AWS\CRT\HTTP\Response; use AWS\CRT\HTTP\Response;
@@ -1,5 +1,8 @@
<?php <?php
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
use AWS\CRT\IO\InputStream as InputStream; use AWS\CRT\IO\InputStream as InputStream;
require_once('common.inc'); require_once('common.inc');
-14
View File
@@ -1,14 +0,0 @@
--TEST--
aws_crt_error_debug_str
--SKIPIF--
<?php
require_once(dirname(__FILE__) . '/skipif.inc');
?>
--FILE--
<?php
require_once(dirname(__FILE__) . '/common.inc');
echo aws_crt_error_debug_str(0);
?>
--EXPECT--
aws-c-common: AWS_ERROR_SUCCESS, Success.
-14
View File
@@ -1,14 +0,0 @@
--TEST--
aws_crt_error_name
--SKIPIF--
<?php
require_once(dirname(__FILE__) . '/skipif.inc');
?>
--FILE--
<?php
require_once(dirname(__FILE__) . '/common.inc');
echo aws_crt_error_name(0);
?>
--EXPECT--
AWS_ERROR_SUCCESS
-14
View File
@@ -1,14 +0,0 @@
--TEST--
aws_crt_error_str
--SKIPIF--
<?php
require_once(dirname(__FILE__) . '/skipif.inc');
?>
--FILE--
<?php
require_once(dirname(__FILE__) . '/common.inc');
echo aws_crt_error_str(0);
?>
--EXPECT--
Success.
-16
View File
@@ -1,16 +0,0 @@
--TEST--
aws_crt_event_loop_group
--SKIPIF--
<?php
require_once(dirname(__FILE__) . '/skipif.inc');
?>
--FILE--
<?php
require_once(dirname(__FILE__) . '/common.inc');
$elg = aws_crt_event_loop_group_new(1);
var_dump($elg);
aws_crt_event_loop_group_release($elg);
?>
--EXPECTREGEX--
int\(\d+\)
-14
View File
@@ -1,14 +0,0 @@
--TEST--
aws_crt_last_error
--SKIPIF--
<?php
require_once(dirname(__FILE__) . '/skipif.inc');
?>
--FILE--
<?php
require_once(dirname(__FILE__) . '/common.inc');
echo aws_crt_last_error();
?>
--EXPECT--
0
+14 -2
View File
@@ -1,3 +1,15 @@
<?php <?php
// Common setup for tests: /**
?> * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
use AWS\CRT\CRT as CRT;
abstract class CrtTestCase extends PHPUnit_Framework_TestCase {
// Ensure that after every test there are no errors in the CRT itself
protected function assertPostConditions() {
if (CRT::last_error()) {
$this->fail("Test left an error on the stack: " . CRT::error_name(CRT::last_error()));
}
}
}
-3
View File
@@ -1,3 +0,0 @@
<?php
extension_loaded('awscrt') or die('awscrt is not available in this build');
?>