Skip to content
This repository has been archived by the owner on Jul 7, 2022. It is now read-only.

Commit

Permalink
Merge pull request #54 from AD7six/deprecations
Browse files Browse the repository at this point in the history
Fix deprecation errors.
  • Loading branch information
ADmad authored Nov 15, 2019
2 parents 3e20e23 + 480a77b commit 13ac90f
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 19 deletions.
22 changes: 12 additions & 10 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,13 @@ language: php

php:
- 5.6
- 7.0
- 7.1
- 7.2
- 7.3
- '7.4snapshot'

services:
- postgresql
- mysql

env:
matrix:
Expand All @@ -21,31 +25,29 @@ matrix:
- php: 5.6
env: PREFER_LOWEST=1 DB=mysql db_dsn='mysql://[email protected]/cakephp_test'

- php: 7.1
- php: 7.2
env: PHPCS=1 DEFAULT=0

- php: 7.1
- php: 7.2
env: PHPSTAN=1 DEFAULT=0

before_script:
- phpenv config-rm xdebug.ini

- if [[ $PREFER_LOWEST != 1 ]]; then composer install --no-interaction --prefer-source; fi
- if [[ $PREFER_LOWEST = 1 ]]; then composer update --no-interaction --prefer-source --prefer-lowest --prefer-stable; fi

- if [[ $DB = 'mysql' ]]; then mysql -e 'CREATE DATABASE cakephp_test;'; fi
- if [[ $DB = 'pgsql' ]]; then psql -c 'CREATE DATABASE cakephp_test;' -U postgres; fi

script:
- if [[ $DEFAULT = 1 && $TRAVIS_PHP_VERSION != 7.1 ]]; then vendor/bin/phpunit; fi
- if [[ $DEFAULT = 1 && $TRAVIS_PHP_VERSION = 7.1 ]]; then phpdbg -qrr vendor/bin/phpunit --coverage-clover=clover.xml; fi
- if [[ $DEFAULT = 1 && $TRAVIS_PHP_VERSION != 7.2 ]]; then vendor/bin/phpunit; fi
- if [[ $DEFAULT = 1 && $TRAVIS_PHP_VERSION = 7.2 ]]; then phpdbg -qrr vendor/bin/phpunit --coverage-clover=clover.xml; fi

- if [[ $PHPCS = 1 ]]; then vendor/bin/phpcs -p -n --extensions=php --standard=vendor/cakephp/cakephp-codesniffer/CakePHP ./src ./tests; fi

- if [[ $PHPSTAN = 1 ]]; then composer require --dev phpstan/phpstan:^0.9 && vendor/bin/phpstan analyse -l 5 src; fi
- if [[ $PHPSTAN = 1 ]]; then composer require --dev phpstan/phpstan:^0.11 && vendor/bin/phpstan analyse src; fi

after_success:
- if [[ $DEFAULT = 1 && $DB = 'mysql' && $TRAVIS_PHP_VERSION = 7.1 ]]; then bash <(curl -s https://codecov.io/bash); fi
- if [[ $DEFAULT = 1 && $DB = 'mysql' && $TRAVIS_PHP_VERSION = 7.2 ]]; then bash <(curl -s https://codecov.io/bash); fi

notifications:
email: false
7 changes: 7 additions & 0 deletions phpstan.neon
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
parameters:
level: 5
ignoreErrors:
-
message: "#^Call to function method_exists\\(\\) with 'Cake\\\\\\\\ORM\\\\\\\\Entity' and 'getVisible' will always evaluate to false\\.$#"
count: 1
path: src/Model/Behavior/ShadowTranslateBehavior.php
14 changes: 13 additions & 1 deletion src/Model/Behavior/ShadowTranslateBehavior.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
use Cake\Event\Event;
use Cake\I18n\I18n;
use Cake\ORM\Behavior\TranslateBehavior;
use Cake\ORM\Entity;
use Cake\ORM\Query;
use Cake\ORM\Table;
use Cake\ORM\TableRegistry;
Expand All @@ -16,6 +17,13 @@
*/
class ShadowTranslateBehavior extends TranslateBehavior
{
/**
* Method to use to get visible properties
*
* @var string
*/
protected $_visiblePropertiesMethod = 'visibleProperties';

/**
* Constructor
*
Expand Down Expand Up @@ -44,6 +52,10 @@ public function __construct(Table $table, array $config = [])
'hasOneAlias' => $tableAlias . 'Translation',
];

if (method_exists(Entity::class, 'getVisible')) {
$this->_visiblePropertiesMethod = 'getVisible';
}

parent::__construct($table, $config);
}

Expand Down Expand Up @@ -457,7 +469,7 @@ protected function _rowMapper($results, $locale)

$translation = $row['translation'];

$keys = $hydrated ? $translation->visibleProperties() : array_keys($translation);
$keys = $hydrated ? $translation->{$this->_visiblePropertiesMethod}() : array_keys($translation);

foreach ($keys as $field) {
if ($field === 'locale') {
Expand Down
9 changes: 5 additions & 4 deletions tests/TestCase/Model/Behavior/ShadowTranslateBehaviorTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,13 @@ class ShadowTranslateBehaviorTest extends TranslateBehaviorTest
{
public $fixtures = [
'core.Articles',
'core.Authors',
'core.Comments',
'core.Tags',
'core.ArticlesTags',
'core.SpecialTags',
'core.Authors',
'core.Groups',
'core.SpecialTags',
'core.Tags',
'core.Comments',
'core.Translates',
'plugin.ShadowTranslate.ArticlesTranslations',
'plugin.ShadowTranslate.ArticlesMoreTranslations',
'plugin.ShadowTranslate.AuthorsTranslations',
Expand Down
4 changes: 0 additions & 4 deletions tests/bootstrap.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,3 @@
}

require $root . '/vendor/cakephp/cakephp/tests/bootstrap.php';

Plugin::load('ShadowTranslate', [
'path' => dirname(dirname(__FILE__)) . DS
]);

0 comments on commit 13ac90f

Please sign in to comment.