Compare commits
14 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
cede0cc410 | ||
|
1d2581e78e | ||
|
2eafffbbe5 | ||
|
cc7d01e7eb | ||
|
1d47285b8b | ||
|
7c46919e7d | ||
|
91f4d2c40b | ||
|
2ae840f538 | ||
|
217851c62d | ||
|
7eb8a46366 | ||
|
dabb7262b5 | ||
|
bd40f1946a | ||
|
fb94ea92c5 | ||
|
199cb1d175 |
8
.github/workflows/php.yml
vendored
8
.github/workflows/php.yml
vendored
@ -1,13 +1,13 @@
|
||||
name: PHP
|
||||
|
||||
on: ["push", "pull_request"]
|
||||
on: ["push", "pull_request", "workflow_dispatch"]
|
||||
|
||||
jobs:
|
||||
build_and_test:
|
||||
name: Build and test web3.php with ${{ matrix.php-version }}
|
||||
strategy:
|
||||
matrix:
|
||||
php-version: ["7.3", "7.4"]
|
||||
php-version: ["7.3", "7.4", "8.0"]
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
@ -37,9 +37,9 @@ jobs:
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: vendor
|
||||
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
|
||||
key: ${{ runner.os }}-php-${{ matrix.php-version }}-${{ hashFiles('**/composer.lock') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-php-
|
||||
${{ runner.os }}-php-${{ matrix.php-version }}-
|
||||
|
||||
- name: Install dependencies
|
||||
if: steps.composer-cache.outputs.cache-hit != 'true'
|
||||
|
@ -18,13 +18,13 @@ Set minimum stability to dev
|
||||
|
||||
Then
|
||||
```
|
||||
composer require sc0vu/web3.php dev-master
|
||||
composer require web3p/web3.php dev-master
|
||||
```
|
||||
|
||||
Or you can add this line in composer.json
|
||||
|
||||
```
|
||||
"sc0vu/web3.php": "dev-master"
|
||||
"web3p/web3.php": "dev-master"
|
||||
```
|
||||
|
||||
|
||||
@ -217,7 +217,7 @@ If you are using docker as development machain, you can try [ethdock](https://gi
|
||||
|
||||
1. Clone the repo and install packages.
|
||||
```
|
||||
git clone https://github.com/sc0Vu/web3.php.git && cd web3.php && composer install
|
||||
git clone https://github.com/web3p/web3.php.git && cd web3.php && composer install
|
||||
```
|
||||
|
||||
2. Run test script.
|
||||
@ -229,7 +229,7 @@ vendor/bin/phpunit
|
||||
|
||||
1. Clone the repo and run docker container.
|
||||
```
|
||||
git clone https://github.com/sc0Vu/web3.php.git
|
||||
git clone https://github.com/web3p/web3.php.git
|
||||
```
|
||||
|
||||
2. Copy web3.php to web3.php/docker/app directory and start container.
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "sc0vu/web3.php",
|
||||
"name": "web3p/web3.php",
|
||||
"description": "Ethereum web3 interface.",
|
||||
"type": "library",
|
||||
"license": "MIT",
|
||||
@ -11,13 +11,13 @@
|
||||
],
|
||||
"require": {
|
||||
"guzzlehttp/guzzle": "^6.3|^7.0",
|
||||
"PHP": "^7.1",
|
||||
"PHP": "^7.2|^8.0",
|
||||
"kornrunner/keccak": "~1.0",
|
||||
"phpseclib/phpseclib": "~2.0.11",
|
||||
"phpseclib/phpseclib": "~2.0.30",
|
||||
"ext-mbstring": "*"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~6.0"
|
||||
"phpunit/phpunit": "~8.0|~9.0"
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
|
23
docker/php/Dockerfile-80
Normal file
23
docker/php/Dockerfile-80
Normal file
@ -0,0 +1,23 @@
|
||||
FROM php:8.0-alpine
|
||||
|
||||
MAINTAINER Peter Lai <alk03073135@gmail.com>
|
||||
|
||||
COPY composer-setup.php composer-setup.php
|
||||
# COPY php.ini-production $PHP_INI_DIR/php.ini
|
||||
|
||||
RUN apk update && \
|
||||
apk add git
|
||||
|
||||
# Install gmp
|
||||
Run apk add gmp-dev && \
|
||||
docker-php-ext-install gmp
|
||||
|
||||
# Install nodejs
|
||||
# Run apk add --update nodejs nodejs-npm
|
||||
|
||||
# Install composer
|
||||
RUN php composer-setup.php && \
|
||||
php composer-setup.php --install-dir=/usr/bin --filename=composer && \
|
||||
php -r "unlink('composer-setup.php');"
|
||||
|
||||
WORKDIR /app
|
@ -7,8 +7,7 @@
|
||||
convertNoticesToExceptions="true"
|
||||
convertWarningsToExceptions="true"
|
||||
processIsolation="false"
|
||||
stopOnFailure="false"
|
||||
syntaxCheck="false">
|
||||
stopOnFailure="false">
|
||||
|
||||
<testsuite name="Web3.php unit test">
|
||||
<directory suffix="Test.php">./test/unit</directory>
|
||||
|
@ -529,7 +529,7 @@ class Utils
|
||||
$number = str_replace('-', '', $number, $count);
|
||||
$negative1 = new BigNumber(-1);
|
||||
}
|
||||
if (self::isZeroPrefixed($number) || preg_match('/[a-f]+/', $number) === 1) {
|
||||
if (self::isZeroPrefixed($number) || preg_match('/^[0-9a-f]+$/i', $number) === 1) {
|
||||
$number = self::stripZero($number);
|
||||
$bn = new BigNumber($number, 16);
|
||||
} elseif (empty($number)) {
|
||||
|
@ -37,10 +37,8 @@ class TestCase extends BaseTestCase
|
||||
|
||||
/**
|
||||
* setUp
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
$web3 = new Web3($this->testHost);
|
||||
$this->web3 = $web3;
|
||||
@ -55,8 +53,6 @@ class TestCase extends BaseTestCase
|
||||
|
||||
/**
|
||||
* tearDown
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function tearDown() {}
|
||||
public function tearDown(): void {}
|
||||
}
|
@ -19,7 +19,7 @@ class AddressFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new AddressFormatter;
|
||||
|
@ -47,7 +47,7 @@ class AddressTypeTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->solidityType = new Address;
|
||||
|
@ -19,7 +19,7 @@ class AddressValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new AddressValidator;
|
||||
|
@ -20,7 +20,7 @@ class BigNumberFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new BigNumberFormatter;
|
||||
|
@ -19,7 +19,7 @@ class BlockHashValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new BlockHashValidator;
|
||||
|
@ -20,7 +20,7 @@ class BooleanFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new BooleanFormatter;
|
||||
|
@ -47,7 +47,7 @@ class BooleanTypeTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->solidityType = new Boolean;
|
||||
|
@ -19,7 +19,7 @@ class BooleanValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new BooleanValidator;
|
||||
|
@ -53,7 +53,7 @@ class BytesTypeTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->solidityType = new Bytes;
|
||||
|
@ -19,7 +19,7 @@ class CallValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new CallValidator;
|
||||
|
@ -412,7 +412,7 @@ class ContractTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -53,7 +53,7 @@ class DynamicBytesTypeTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->solidityType = new DynamicBytes;
|
||||
|
@ -21,7 +21,7 @@ class EthApiTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
@ -439,7 +439,7 @@ class EthApiTest extends TestCase
|
||||
if ($err !== null) {
|
||||
return $this->assertTrue($err !== null);
|
||||
}
|
||||
// weired behavior, see https://github.com/sc0Vu/web3.php/issues/16
|
||||
// weird behavior, see https://github.com/web3p/web3.php/issues/16
|
||||
$this->assertTrue($block !== null);
|
||||
});
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ class EthBatchTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -23,7 +23,7 @@ class EthTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -163,7 +163,7 @@ class EthabiTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
// Error: Using $this when not in object context
|
||||
@ -298,7 +298,7 @@ class EthabiTest extends TestCase
|
||||
|
||||
/**
|
||||
* testIssue71
|
||||
* test 33 bytes and 128 bytes string, see: https://github.com/sc0Vu/web3.php/issues/71
|
||||
* test 33 bytes and 128 bytes string, see: https://github.com/web3p/web3.php/issues/71
|
||||
* string generated from: https://www.lipsum.com/
|
||||
*
|
||||
* @return void
|
||||
|
@ -19,7 +19,7 @@ class FilterValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new FilterValidator;
|
||||
|
@ -19,7 +19,7 @@ class HexFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new HexFormatter;
|
||||
|
@ -19,7 +19,7 @@ class HexValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new HexValidator;
|
||||
|
@ -19,7 +19,7 @@ class IdentityValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new IdentityValidator;
|
||||
|
@ -19,7 +19,7 @@ class IntegerFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new IntegerFormatter;
|
||||
|
@ -53,7 +53,7 @@ class IntegerTypeTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->solidityType = new Integer;
|
||||
|
@ -21,7 +21,7 @@ class NetApiTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -20,7 +20,7 @@ class NetBatchTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -23,7 +23,7 @@ class NetTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -19,7 +19,7 @@ class NonceValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new NonceValidator;
|
||||
|
@ -19,7 +19,7 @@ class NumberFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new NumberFormatter;
|
||||
|
@ -19,7 +19,7 @@ class OptionalQuantityFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new OptionalQuantityFormatter;
|
||||
@ -55,6 +55,8 @@ class OptionalQuantityFormatterTest extends TestCase
|
||||
$this->assertEquals('latest', $formatter->format('latest'));
|
||||
$this->assertEquals('earliest', $formatter->format('earliest'));
|
||||
$this->assertEquals('pending', $formatter->format('pending'));
|
||||
$this->assertEquals('0x0', $formatter->format('hello'));
|
||||
|
||||
$this->expectExceptionMessage('toBn number must be valid hex string.');
|
||||
$formatter->format('hello');
|
||||
}
|
||||
}
|
@ -27,7 +27,7 @@ class PersonalApiTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -19,7 +19,7 @@ class PersonalBatchTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -23,7 +23,7 @@ class PersonalTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -19,7 +19,7 @@ class PostFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new PostFormatter;
|
||||
|
@ -19,7 +19,7 @@ class PostValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new PostValidator;
|
||||
|
@ -19,7 +19,7 @@ class QuantityFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new QuantityFormatter;
|
||||
|
@ -19,7 +19,7 @@ class QuantityValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new QuantityValidator;
|
||||
|
@ -21,7 +21,7 @@ class ShhApiTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -19,7 +19,7 @@ class ShhBatchTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -19,7 +19,7 @@ class ShhFilterValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new ShhFilterValidator;
|
||||
|
@ -23,7 +23,7 @@ class ShhTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
|
@ -20,7 +20,7 @@ class SolidityTypeTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->type = new SolidityType();
|
||||
|
@ -47,7 +47,7 @@ class StrTypeTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->solidityType = new Str;
|
||||
|
@ -19,7 +19,7 @@ class StringFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new StringFormatter;
|
||||
|
@ -19,7 +19,7 @@ class StringValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new StringValidator;
|
||||
|
@ -19,7 +19,7 @@ class TagValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new TagValidator;
|
||||
|
@ -19,7 +19,7 @@ class TransactionFormatterTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->formatter = new TransactionFormatter;
|
||||
|
@ -19,7 +19,7 @@ class TransactionValidatorTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->validator = new TransactionValidator;
|
||||
|
@ -53,7 +53,7 @@ class UintegerTypeTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->solidityType = new Uinteger;
|
||||
|
@ -55,7 +55,7 @@ class UtilsTest extends TestCase
|
||||
|
||||
/**
|
||||
* testIssue112Json
|
||||
* see: https://github.com/sc0Vu/web3.php/issues/112
|
||||
* see: https://github.com/web3p/web3.php/issues/112
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
@ -137,7 +137,7 @@ class UtilsTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
}
|
||||
|
@ -29,7 +29,7 @@ class Web3ApiTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
}
|
||||
|
@ -28,7 +28,7 @@ class Web3BatchTest extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
}
|
||||
|
@ -37,7 +37,7 @@ class Web3Test extends TestCase
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUp()
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user