Page MenuHomeIn-Portal Phabricator

D22.id.diff
No OneTemporary

File Metadata

Created
Mon, Jan 6, 5:41 AM

D22.id.diff

Index: composer.json
===================================================================
--- /dev/null
+++ composer.json
@@ -0,0 +1,11 @@
+{
+ "require-dev": {
+ "aik099/phpunit-mink": "~2.0",
+ "qa-tools/qa-tools": "~1.0",
+ "aik099/coding-standard": "dev-in-portal",
+ "mockery/mockery": "~0.9",
+
+ "behat/mink-selenium2-driver": "~1.2",
+ "mindplay/annotations": "~1.2@dev"
+ }
+}
Index: composer.lock
===================================================================
--- /dev/null
+++ composer.lock
@@ -0,0 +1,1377 @@
+{
+ "_readme": [
+ "This file locks the dependencies of your project to a known state",
+ "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
+ "This file is @generated automatically"
+ ],
+ "hash": "5d82992cf53c3b16d1fb33e3d7b47124",
+ "packages": [],
+ "packages-dev": [
+ {
+ "name": "aik099/coding-standard",
+ "version": "dev-in-portal",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/aik099/CodingStandard.git",
+ "reference": "c627526ce12d8541f2389b959b62fb963286d3a3"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/aik099/CodingStandard/zipball/c627526ce12d8541f2389b959b62fb963286d3a3",
+ "reference": "c627526ce12d8541f2389b959b62fb963286d3a3",
+ "shasum": ""
+ },
+ "require-dev": {
+ "squizlabs/php_codesniffer": "~1.5"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Alexander Obuhovich",
+ "email": "aik.bold@gmail.com"
+ }
+ ],
+ "description": "The PHP_CodeSniffer coding standard I'm using on all of my projects.",
+ "keywords": [
+ "PHP_CodeSniffer",
+ "codesniffer"
+ ],
+ "time": "2014-10-22 13:55:02"
+ },
+ {
+ "name": "aik099/phpunit-mink",
+ "version": "v2.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/aik099/phpunit-mink.git",
+ "reference": "2ef91f638cb7d9a30fdc505f6ff0870a450a1eb5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/aik099/phpunit-mink/zipball/2ef91f638cb7d9a30fdc505f6ff0870a450a1eb5",
+ "reference": "2ef91f638cb7d9a30fdc505f6ff0870a450a1eb5",
+ "shasum": ""
+ },
+ "require": {
+ "behat/mink": "~1.5@dev",
+ "behat/mink-selenium2-driver": "~1.1@dev",
+ "php": ">=5.3.2",
+ "phpunit/phpunit": ">=3.7.8",
+ "pimple/pimple": "~2.0",
+ "symfony/event-dispatcher": "~2.4"
+ },
+ "require-dev": {
+ "aik099/coding-standard": "dev-master",
+ "mockery/mockery": "~0.9"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "aik099\\": "./library/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Alexander Obuhovich",
+ "email": "aik.bold@gmail.com"
+ }
+ ],
+ "description": "Library for using Mink in PHPUnit tests. Supports session sharing between tests in a test case.",
+ "homepage": "http://github.com/aik099/phpunit-mink",
+ "keywords": [
+ "BrowserStack",
+ "Mink",
+ "Sauce",
+ "SauceLabs",
+ "phpunit",
+ "selenium",
+ "tests"
+ ],
+ "time": "2014-08-09 12:13:08"
+ },
+ {
+ "name": "behat/mink",
+ "version": "v1.6.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/Behat/Mink.git",
+ "reference": "090900a0049c441f1e072bbd837db4079b2250c5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/Behat/Mink/zipball/090900a0049c441f1e072bbd837db4079b2250c5",
+ "reference": "090900a0049c441f1e072bbd837db4079b2250c5",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.1",
+ "symfony/css-selector": "~2.0"
+ },
+ "suggest": {
+ "behat/mink-browserkit-driver": "extremely fast headless driver for Symfony\\Kernel-based apps (Sf2, Silex)",
+ "behat/mink-goutte-driver": "fast headless driver for any app without JS emulation",
+ "behat/mink-selenium2-driver": "slow, but JS-enabled driver for any app (requires Selenium2)",
+ "behat/mink-zombie-driver": "fast and JS-enabled headless driver for any app (requires node.js)"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.6.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Behat\\Mink": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Konstantin Kudryashov",
+ "email": "ever.zet@gmail.com",
+ "homepage": "http://everzet.com"
+ }
+ ],
+ "description": "Web acceptance testing framework for PHP 5.3",
+ "homepage": "http://mink.behat.org/",
+ "keywords": [
+ "browser",
+ "testing",
+ "web"
+ ],
+ "time": "2014-09-26 09:25:05"
+ },
+ {
+ "name": "behat/mink-selenium2-driver",
+ "version": "v1.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/Behat/MinkSelenium2Driver.git",
+ "reference": "8018fee80bf6573f909ece3e0dfc07d0eb352210"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/Behat/MinkSelenium2Driver/zipball/8018fee80bf6573f909ece3e0dfc07d0eb352210",
+ "reference": "8018fee80bf6573f909ece3e0dfc07d0eb352210",
+ "shasum": ""
+ },
+ "require": {
+ "behat/mink": "~1.6@dev",
+ "instaclick/php-webdriver": "~1.1",
+ "php": ">=5.3.1"
+ },
+ "type": "mink-driver",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.2.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Behat\\Mink\\Driver": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Konstantin Kudryashov",
+ "email": "ever.zet@gmail.com",
+ "homepage": "http://everzet.com"
+ },
+ {
+ "name": "Pete Otaqui",
+ "email": "pete@otaqui.com",
+ "homepage": "https://github.com/pete-otaqui"
+ }
+ ],
+ "description": "Selenium2 (WebDriver) driver for Mink framework",
+ "homepage": "http://mink.behat.org/",
+ "keywords": [
+ "ajax",
+ "browser",
+ "javascript",
+ "selenium",
+ "testing",
+ "webdriver"
+ ],
+ "time": "2014-09-29 13:12:12"
+ },
+ {
+ "name": "doctrine/instantiator",
+ "version": "1.0.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/doctrine/instantiator.git",
+ "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f976e5de371104877ebc89bd8fecb0019ed9c119",
+ "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3,<8.0-DEV"
+ },
+ "require-dev": {
+ "athletic/athletic": "~0.1.8",
+ "ext-pdo": "*",
+ "ext-phar": "*",
+ "phpunit/phpunit": "~4.0",
+ "squizlabs/php_codesniffer": "2.0.*@ALPHA"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Doctrine\\Instantiator\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Marco Pivetta",
+ "email": "ocramius@gmail.com",
+ "homepage": "http://ocramius.github.com/"
+ }
+ ],
+ "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
+ "homepage": "https://github.com/doctrine/instantiator",
+ "keywords": [
+ "constructor",
+ "instantiate"
+ ],
+ "time": "2014-10-13 12:58:55"
+ },
+ {
+ "name": "instaclick/php-webdriver",
+ "version": "1.4.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/instaclick/php-webdriver.git",
+ "reference": "a57b2bcd9467e217134a2248b261b8b3a90ccea0"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/instaclick/php-webdriver/zipball/a57b2bcd9467e217134a2248b261b8b3a90ccea0",
+ "reference": "a57b2bcd9467e217134a2248b261b8b3a90ccea0",
+ "shasum": ""
+ },
+ "require": {
+ "ext-curl": "*",
+ "php": ">=5.3.2"
+ },
+ "require-dev": {
+ "satooshi/php-coveralls": "dev-master"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.4.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "WebDriver": "lib/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "Apache-2.0"
+ ],
+ "authors": [
+ {
+ "name": "Justin Bishop",
+ "email": "jubishop@gmail.com",
+ "role": "Developer"
+ },
+ {
+ "name": "Anthon Pang",
+ "email": "apang@softwaredevelopment.ca",
+ "role": "Fork Maintainer"
+ }
+ ],
+ "description": "PHP WebDriver for Selenium 2",
+ "homepage": "http://instaclick.com/",
+ "keywords": [
+ "browser",
+ "selenium",
+ "webdriver",
+ "webtest"
+ ],
+ "time": "2014-05-12 21:03:05"
+ },
+ {
+ "name": "mindplay/annotations",
+ "version": "dev-master",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-annotations/php-annotations.git",
+ "reference": "404b63f180b9c1fa578c9da5ea39846ee0c430e1"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-annotations/php-annotations/zipball/404b63f180b9c1fa578c9da5ea39846ee0c430e1",
+ "reference": "404b63f180b9c1fa578c9da5ea39846ee0c430e1",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "require-dev": {
+ "phpunit/php-code-coverage": "~1.2.1",
+ "phpunit/php-file-iterator": ">=1.3.0@stable"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.2.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "mindplay\\annotations\\": "src\\annotations"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "LGPL-3.0+"
+ ],
+ "authors": [
+ {
+ "name": "Rasmus Schultz",
+ "email": "rasmus@mindplay.dk"
+ }
+ ],
+ "description": "Source-code annotations for PHP",
+ "homepage": "http://blog.mindplay.dk/",
+ "keywords": [
+ "annotations",
+ "framework"
+ ],
+ "time": "2014-09-07 08:45:38"
+ },
+ {
+ "name": "mockery/mockery",
+ "version": "0.9.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/padraic/mockery.git",
+ "reference": "95a4855380dc70176c51807c678fb3bd6198529a"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/padraic/mockery/zipball/95a4855380dc70176c51807c678fb3bd6198529a",
+ "reference": "95a4855380dc70176c51807c678fb3bd6198529a",
+ "shasum": ""
+ },
+ "require": {
+ "lib-pcre": ">=7.0",
+ "php": ">=5.3.2"
+ },
+ "require-dev": {
+ "hamcrest/hamcrest-php": "~1.1",
+ "phpunit/phpunit": "~4.0",
+ "satooshi/php-coveralls": "~0.7@dev"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "0.9.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Mockery": "library/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Pádraic Brady",
+ "email": "padraic.brady@gmail.com",
+ "homepage": "http://blog.astrumfutura.com"
+ },
+ {
+ "name": "Dave Marshall",
+ "email": "dave.marshall@atstsolutions.co.uk",
+ "homepage": "http://davedevelopment.co.uk"
+ }
+ ],
+ "description": "Mockery is a simple yet flexible PHP mock object framework for use in unit testing with PHPUnit, PHPSpec or any other testing framework. Its core goal is to offer a test double framework with a succint API capable of clearly defining all possible object operations and interactions using a human readable Domain Specific Language (DSL). Designed as a drop in alternative to PHPUnit's phpunit-mock-objects library, Mockery is easy to integrate with PHPUnit and can operate alongside phpunit-mock-objects without the World ending.",
+ "homepage": "http://github.com/padraic/mockery",
+ "keywords": [
+ "BDD",
+ "TDD",
+ "library",
+ "mock",
+ "mock objects",
+ "mockery",
+ "stub",
+ "test",
+ "test double",
+ "testing"
+ ],
+ "time": "2014-09-03 10:11:10"
+ },
+ {
+ "name": "phpunit/php-code-coverage",
+ "version": "2.0.11",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
+ "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/53603b3c995f5aab6b59c8e08c3a663d2cc810b7",
+ "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3",
+ "phpunit/php-file-iterator": "~1.3",
+ "phpunit/php-text-template": "~1.2",
+ "phpunit/php-token-stream": "~1.3",
+ "sebastian/environment": "~1.0",
+ "sebastian/version": "~1.0"
+ },
+ "require-dev": {
+ "ext-xdebug": ">=2.1.4",
+ "phpunit/phpunit": "~4.1"
+ },
+ "suggest": {
+ "ext-dom": "*",
+ "ext-xdebug": ">=2.2.1",
+ "ext-xmlwriter": "*"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.0.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "include-path": [
+ ""
+ ],
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sb@sebastian-bergmann.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
+ "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
+ "keywords": [
+ "coverage",
+ "testing",
+ "xunit"
+ ],
+ "time": "2014-08-31 06:33:04"
+ },
+ {
+ "name": "phpunit/php-file-iterator",
+ "version": "1.3.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
+ "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/acd690379117b042d1c8af1fafd61bde001bf6bb",
+ "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "File/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "include-path": [
+ ""
+ ],
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sb@sebastian-bergmann.de",
+ "role": "lead"
+ }
+ ],
+ "description": "FilterIterator implementation that filters files based on a list of suffixes.",
+ "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
+ "keywords": [
+ "filesystem",
+ "iterator"
+ ],
+ "time": "2013-10-10 15:34:57"
+ },
+ {
+ "name": "phpunit/php-text-template",
+ "version": "1.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-text-template.git",
+ "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/206dfefc0ffe9cebf65c413e3d0e809c82fbf00a",
+ "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "Text/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "include-path": [
+ ""
+ ],
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sb@sebastian-bergmann.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Simple template engine.",
+ "homepage": "https://github.com/sebastianbergmann/php-text-template/",
+ "keywords": [
+ "template"
+ ],
+ "time": "2014-01-30 17:20:04"
+ },
+ {
+ "name": "phpunit/php-timer",
+ "version": "1.0.5",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-timer.git",
+ "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
+ "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "PHP/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "include-path": [
+ ""
+ ],
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sb@sebastian-bergmann.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Utility class for timing",
+ "homepage": "https://github.com/sebastianbergmann/php-timer/",
+ "keywords": [
+ "timer"
+ ],
+ "time": "2013-08-02 07:42:54"
+ },
+ {
+ "name": "phpunit/php-token-stream",
+ "version": "1.3.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-token-stream.git",
+ "reference": "f8d5d08c56de5cfd592b3340424a81733259a876"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/f8d5d08c56de5cfd592b3340424a81733259a876",
+ "reference": "f8d5d08c56de5cfd592b3340424a81733259a876",
+ "shasum": ""
+ },
+ "require": {
+ "ext-tokenizer": "*",
+ "php": ">=5.3.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~4.2"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.3-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Wrapper around PHP's tokenizer extension.",
+ "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
+ "keywords": [
+ "tokenizer"
+ ],
+ "time": "2014-08-31 06:12:13"
+ },
+ {
+ "name": "phpunit/phpunit",
+ "version": "4.3.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/phpunit.git",
+ "reference": "23e4e0310f037aae873cc81b8658dbbb82878f71"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/23e4e0310f037aae873cc81b8658dbbb82878f71",
+ "reference": "23e4e0310f037aae873cc81b8658dbbb82878f71",
+ "shasum": ""
+ },
+ "require": {
+ "ext-dom": "*",
+ "ext-json": "*",
+ "ext-pcre": "*",
+ "ext-reflection": "*",
+ "ext-spl": "*",
+ "php": ">=5.3.3",
+ "phpunit/php-code-coverage": "~2.0",
+ "phpunit/php-file-iterator": "~1.3.2",
+ "phpunit/php-text-template": "~1.2",
+ "phpunit/php-timer": "~1.0.2",
+ "phpunit/phpunit-mock-objects": "~2.3",
+ "sebastian/comparator": "~1.0",
+ "sebastian/diff": "~1.1",
+ "sebastian/environment": "~1.0",
+ "sebastian/exporter": "~1.0",
+ "sebastian/version": "~1.0",
+ "symfony/yaml": "~2.0"
+ },
+ "suggest": {
+ "phpunit/php-invoker": "~1.1"
+ },
+ "bin": [
+ "phpunit"
+ ],
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "4.3.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "include-path": [
+ "",
+ "../../symfony/yaml/"
+ ],
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "The PHP Unit Testing framework.",
+ "homepage": "http://www.phpunit.de/",
+ "keywords": [
+ "phpunit",
+ "testing",
+ "xunit"
+ ],
+ "time": "2014-10-22 11:43:12"
+ },
+ {
+ "name": "phpunit/phpunit-mock-objects",
+ "version": "2.3.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
+ "reference": "c63d2367247365f688544f0d500af90a11a44c65"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/c63d2367247365f688544f0d500af90a11a44c65",
+ "reference": "c63d2367247365f688544f0d500af90a11a44c65",
+ "shasum": ""
+ },
+ "require": {
+ "doctrine/instantiator": "~1.0,>=1.0.1",
+ "php": ">=5.3.3",
+ "phpunit/php-text-template": "~1.2"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~4.3"
+ },
+ "suggest": {
+ "ext-soap": "*"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.3.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sb@sebastian-bergmann.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Mock Object library for PHPUnit",
+ "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
+ "keywords": [
+ "mock",
+ "xunit"
+ ],
+ "time": "2014-10-03 05:12:11"
+ },
+ {
+ "name": "pimple/pimple",
+ "version": "v2.1.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/fabpot/Pimple.git",
+ "reference": "ea22fb2880faf7b7b0e17c9809c6fe25b071fd76"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/fabpot/Pimple/zipball/ea22fb2880faf7b7b0e17c9809c6fe25b071fd76",
+ "reference": "ea22fb2880faf7b7b0e17c9809c6fe25b071fd76",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.1.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Pimple": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ }
+ ],
+ "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
+ "homepage": "http://pimple.sensiolabs.org",
+ "keywords": [
+ "container",
+ "dependency injection"
+ ],
+ "time": "2014-07-24 07:10:08"
+ },
+ {
+ "name": "qa-tools/qa-tools",
+ "version": "v1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/qa-tools/qa-tools.git",
+ "reference": "5456f64af5b94c5655f21a592b8817690c2096c7"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/qa-tools/qa-tools/zipball/5456f64af5b94c5655f21a592b8817690c2096c7",
+ "reference": "5456f64af5b94c5655f21a592b8817690c2096c7",
+ "shasum": ""
+ },
+ "require": {
+ "behat/mink": "~1.6",
+ "mindplay/annotations": "~1.2@dev",
+ "php": ">=5.3.2"
+ },
+ "replace": {
+ "aik099/qa-tools": "self.version"
+ },
+ "require-dev": {
+ "aik099/coding-standard": "dev-master",
+ "behat/mink-selenium2-driver": "~1.2@dev",
+ "brianium/paratest": "~0.7",
+ "mockery/mockery": "~0.9"
+ },
+ "suggest": {
+ "aik099/phpunit-mink": "Allows to use PageObject inside PHPUnit tests and remotely collect code coverage information"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "QATools\\QATools\\": "./library/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Alexander Obuhovich",
+ "email": "aik.bold@gmail.com"
+ },
+ {
+ "name": "Dmitry Kushnikov",
+ "email": "dkushnikov@gmail.com"
+ },
+ {
+ "name": "Michael Geppert",
+ "email": "evangelion1204@aol.com"
+ }
+ ],
+ "description": "Library that provides easy-to-use way of interaction with web-page elements in functional tests using PageObject pattern.",
+ "keywords": [
+ "BEM",
+ "HtmlElements",
+ "Mink",
+ "PageObject",
+ "acceptance",
+ "functional",
+ "phpunit",
+ "tests"
+ ],
+ "time": "2014-09-26 15:15:51"
+ },
+ {
+ "name": "sebastian/comparator",
+ "version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/comparator.git",
+ "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e54a01c0da1b87db3c5a3c4c5277ddf331da4aef",
+ "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3",
+ "sebastian/diff": "~1.1",
+ "sebastian/exporter": "~1.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~4.1"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Jeff Welch",
+ "email": "whatthejeff@gmail.com"
+ },
+ {
+ "name": "Volker Dusch",
+ "email": "github@wallbash.com"
+ },
+ {
+ "name": "Bernhard Schussek",
+ "email": "bschussek@2bepublished.at"
+ },
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Provides the functionality to compare PHP values for equality",
+ "homepage": "http://www.github.com/sebastianbergmann/comparator",
+ "keywords": [
+ "comparator",
+ "compare",
+ "equality"
+ ],
+ "time": "2014-05-11 23:00:21"
+ },
+ {
+ "name": "sebastian/diff",
+ "version": "1.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/diff.git",
+ "reference": "5843509fed39dee4b356a306401e9dd1a931fec7"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/5843509fed39dee4b356a306401e9dd1a931fec7",
+ "reference": "5843509fed39dee4b356a306401e9dd1a931fec7",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~4.2"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.2-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Kore Nordmann",
+ "email": "mail@kore-nordmann.de"
+ },
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Diff implementation",
+ "homepage": "http://www.github.com/sebastianbergmann/diff",
+ "keywords": [
+ "diff"
+ ],
+ "time": "2014-08-15 10:29:00"
+ },
+ {
+ "name": "sebastian/environment",
+ "version": "1.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/environment.git",
+ "reference": "0d9bf79554d2a999da194a60416c15cf461eb67d"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/0d9bf79554d2a999da194a60416c15cf461eb67d",
+ "reference": "0d9bf79554d2a999da194a60416c15cf461eb67d",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~4.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.2.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Provides functionality to handle HHVM/PHP environments",
+ "homepage": "http://www.github.com/sebastianbergmann/environment",
+ "keywords": [
+ "Xdebug",
+ "environment",
+ "hhvm"
+ ],
+ "time": "2014-10-22 06:38:05"
+ },
+ {
+ "name": "sebastian/exporter",
+ "version": "1.0.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/exporter.git",
+ "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/c7d59948d6e82818e1bdff7cadb6c34710eb7dc0",
+ "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~4.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Jeff Welch",
+ "email": "whatthejeff@gmail.com"
+ },
+ {
+ "name": "Volker Dusch",
+ "email": "github@wallbash.com"
+ },
+ {
+ "name": "Bernhard Schussek",
+ "email": "bschussek@2bepublished.at"
+ },
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ },
+ {
+ "name": "Adam Harvey",
+ "email": "aharvey@php.net"
+ }
+ ],
+ "description": "Provides the functionality to export PHP variables for visualization",
+ "homepage": "http://www.github.com/sebastianbergmann/exporter",
+ "keywords": [
+ "export",
+ "exporter"
+ ],
+ "time": "2014-09-10 00:51:36"
+ },
+ {
+ "name": "sebastian/version",
+ "version": "1.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/version.git",
+ "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43",
+ "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43",
+ "shasum": ""
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library that helps with managing the version number of Git-hosted PHP projects",
+ "homepage": "https://github.com/sebastianbergmann/version",
+ "time": "2014-03-07 15:35:33"
+ },
+ {
+ "name": "symfony/css-selector",
+ "version": "v2.5.6",
+ "target-dir": "Symfony/Component/CssSelector",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/CssSelector.git",
+ "reference": "7cdf543a3f31935aae58de4e6e607d4bdeb3f5dc"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/CssSelector/zipball/7cdf543a3f31935aae58de4e6e607d4bdeb3f5dc",
+ "reference": "7cdf543a3f31935aae58de4e6e607d4bdeb3f5dc",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.5-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Symfony\\Component\\CssSelector\\": ""
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Symfony Community",
+ "homepage": "http://symfony.com/contributors"
+ },
+ {
+ "name": "Jean-François Simon",
+ "email": "jeanfrancois.simon@sensiolabs.com"
+ },
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ }
+ ],
+ "description": "Symfony CssSelector Component",
+ "homepage": "http://symfony.com",
+ "time": "2014-10-09 16:00:03"
+ },
+ {
+ "name": "symfony/event-dispatcher",
+ "version": "v2.5.6",
+ "target-dir": "Symfony/Component/EventDispatcher",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/EventDispatcher.git",
+ "reference": "804eb28dbbfba9ffdab21fe2066744906cea2212"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/804eb28dbbfba9ffdab21fe2066744906cea2212",
+ "reference": "804eb28dbbfba9ffdab21fe2066744906cea2212",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "require-dev": {
+ "psr/log": "~1.0",
+ "symfony/config": "~2.0",
+ "symfony/dependency-injection": "~2.0,<2.6.0",
+ "symfony/stopwatch": "~2.2"
+ },
+ "suggest": {
+ "symfony/dependency-injection": "",
+ "symfony/http-kernel": ""
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.5-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Symfony\\Component\\EventDispatcher\\": ""
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Symfony Community",
+ "homepage": "http://symfony.com/contributors"
+ },
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ }
+ ],
+ "description": "Symfony EventDispatcher Component",
+ "homepage": "http://symfony.com",
+ "time": "2014-10-01 15:43:05"
+ },
+ {
+ "name": "symfony/yaml",
+ "version": "v2.5.6",
+ "target-dir": "Symfony/Component/Yaml",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/Yaml.git",
+ "reference": "2d9f527449cabfa8543dd7fa3a466d6ae83d6726"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/Yaml/zipball/2d9f527449cabfa8543dd7fa3a466d6ae83d6726",
+ "reference": "2d9f527449cabfa8543dd7fa3a466d6ae83d6726",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.5-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Symfony\\Component\\Yaml\\": ""
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Symfony Community",
+ "homepage": "http://symfony.com/contributors"
+ },
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ }
+ ],
+ "description": "Symfony Yaml Component",
+ "homepage": "http://symfony.com",
+ "time": "2014-10-01 05:50:18"
+ }
+ ],
+ "aliases": [],
+ "minimum-stability": "stable",
+ "stability-flags": {
+ "aik099/coding-standard": 20,
+ "mindplay/annotations": 20
+ },
+ "prefer-stable": false,
+ "platform": [],
+ "platform-dev": []
+}
Index: core/kernel/startup.php
===================================================================
--- core/kernel/startup.php
+++ core/kernel/startup.php
@@ -191,6 +191,10 @@
kUtil::includeOnce($a_file);
}
+ if ( version_compare(PHP_VERSION, '5.3.2', '>=') && file_exists(FULL_PATH . '/vendor/autoload.php') ) {
+ kUtil::includeOnce(FULL_PATH . '/vendor/autoload.php');
+ }
+
if (defined('DEBUG_MODE') && DEBUG_MODE && isset($debugger)) {
$debugger->AttachToApplication();
}
@@ -201,4 +205,6 @@
// system users
define('USER_ROOT', -1);
- define('USER_GUEST', -2);
\ No newline at end of file
+ define('USER_GUEST', -2);
+
+ $GLOBALS['PHPUNIT_COVERAGE_DATA_DIRECTORY'] = WRITEABLE . '/remote_code_coverage';
Index: tools/build/build.properties.dist
===================================================================
--- /dev/null
+++ tools/build/build.properties.dist
@@ -0,0 +1,13 @@
+local.build=1
+base.dir=../..
+client.ip.address=
+cli.key=b674006f3edb1d9cd4d838c150b0567d
+
+website.domain=
+website.path=
+
+db.host=localhost
+db.user=
+db.password=
+db.name=
+db.tableprefix=
Index: tools/build/build_all.xml
===================================================================
--- /dev/null
+++ tools/build/build_all.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="In-Portal (full)" default="build">
+ <property file="build.properties" />
+ <resolvepath propertyName="base.dir" file="${base.dir}"/>
+
+ <property name="scan.dir" value="${base.dir}"/>
+ <property name="phpmd.exclude" value="blog,build,core/editor,core/ckeditor,modules/mpdf,system,vendor"/>
+ <property name="phpcpd.exclude" value="--exclude blog --exclude build --exclude core/editor --exclude core/ckeditor --exclude modules/mpdf --exclude system --exclude vendor"/>
+
+ <import file="targets/common.xml"/>
+
+ <fileset dir="${base.dir}" id="php.files">
+ <include name="**/*.php"/>
+ <exclude name="blog/**"/>
+ <exclude name="build/**"/>
+ <exclude name="core/editor/**"/>
+ <exclude name="core/ckeditor/**"/>
+ <exclude name="modules/mpdf/**"/>
+ <exclude name="system/**"/>
+ <exclude name="vendor/**"/>
+ </fileset>
+</project>
Index: tools/build/build_custom.xml
===================================================================
--- /dev/null
+++ tools/build/build_custom.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="In-Portal (custom module only)" default="build">
+ <property file="build.properties" />
+ <resolvepath propertyName="base.dir" file="${base.dir}"/>
+
+ <property name="scan.dir" value="${base.dir}/modules/custom"/>
+
+ <!--TODO: update tasks, that uses "phpmd.exclude" and "phpcpd.exclude" to handle empty exclusion list-->
+ <property name="phpmd.exclude" value="no-match"/>
+ <property name="phpcpd.exclude" value="--exclude no-match"/>
+
+ <import file="targets/common.xml"/>
+
+ <fileset dir="${base.dir}" id="php.files">
+ <include name="modules/custom/**/*.php"/>
+ </fileset>
+</project>
Index: tools/build/inc/custom_phpunit.xml
===================================================================
--- /dev/null
+++ tools/build/inc/custom_phpunit.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<phpunit backupGlobals="true"
+ backupStaticAttributes="false"
+ bootstrap="../../../core/kernel/tests/bootstrap.php"
+ colors="false"
+ convertErrorsToExceptions="true"
+ convertNoticesToExceptions="true"
+ convertWarningsToExceptions="true"
+ processIsolation="false"
+ stopOnFailure="false"
+ strict="true"
+ verbose="true">
+
+ <php>
+ <ini name="memory_limit" value="-1"/>
+ </php>
+
+ <testsuites>
+ <testsuite name="all">
+ <directory>../../../core/tests</directory>
+ <directory>../../../modules/custom/tests</directory>
+ <exclude>../../../core/tests/unit</exclude>
+ </testsuite>
+ </testsuites>
+
+ <listeners>
+ <listener class="\Mockery\Adapter\Phpunit\TestListener"/>
+ </listeners>
+
+ <logging>
+ <!--<log type="coverage-html" target="../../../build/coverage" title="BankAccount"
+ charset="UTF-8" yui="true" highlight="true"
+ lowUpperBound="35" highLowerBound="70"/>
+ <log type="coverage-clover" target="../../../build/logs/clover.xml"/>-->
+ <log type="junit" target="../../../build/logs/junit.xml" logIncompleteSkipped="false"/>
+ </logging>
+
+ <filter>
+ <blacklist>
+ <directory suffix=".php">..</directory>
+ </blacklist>
+ <whitelist addUncoveredFilesFromWhitelist="true">
+ <directory suffix=".php">../../../modules/custom</directory>
+ <exclude>
+ <directory>../../../blog</directory>
+ <directory>../../../modules/mpdf</directory>
+ <directory>../../../core/editor</directory>
+ <directory>../../../core/ckeditor</directory>
+ <directory>../../../system</directory>
+ <directory>../../../vendor</directory>
+
+ <directory>../../../core/tests</directory>
+ <directory>../../../modules/*/tests</directory>
+
+ <file>../../../core/kernel/tests/bootstrap.php</file>
+ </exclude>
+ </whitelist>
+ </filter>
+</phpunit>
Index: tools/build/inc/phpmd.xml
===================================================================
--- /dev/null
+++ tools/build/inc/phpmd.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<ruleset name="InPortal"
+ xmlns="http://pmd.sf.net/ruleset/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
+ xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd">
+ <description>
+ In-Portal standard. Version: 1.0.1 from 21-Mar-2014
+ </description>
+
+ <rule ref="rulesets/codesize.xml">
+ <!-- event handlers are usually large; figure out how to exclude only for them -->
+ <exclude name="TooManyMethods"/>
+ <exclude name="ExcessiveClassComplexity"/>
+ <exclude name="ExcessiveClassLength"/>
+
+ <!-- exclude because defined below -->
+ <exclude name="ExcessiveMethodLength"/>
+ </rule>
+
+ <rule ref="rulesets/codesize.xml/ExcessiveMethodLength">
+ <properties>
+ <property name="minimum" value="120" />
+ </properties>
+ </rule>
+
+ <rule ref="rulesets/design.xml">
+ <!-- event handlers usually do much; figure out how to exclude only for them -->
+ <exclude name="CouplingBetweenObjects"/>
+ </rule>
+ <rule ref="rulesets/naming.xml">
+ <!-- let PHP_CodeSniffer check for them -->
+ <exclude name="LongVariable"/>
+ <exclude name="ConstantNamingConventions"/>
+
+ <!-- exclude because defined below -->
+ <exclude name="ShortVariable"/>
+ </rule>
+
+ <rule ref="rulesets/naming.xml/ShortVariable">
+ <properties>
+ <property name="minimum" value="2" />
+ </properties>
+ </rule>
+
+ <rule ref="rulesets/unusedcode.xml">
+ <!-- let PhpStorm deal with this -->
+ <exclude name="UnusedFormalParameter"/>
+ </rule>
+</ruleset>
Index: tools/build/inc/phpunit.xml
===================================================================
--- /dev/null
+++ tools/build/inc/phpunit.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<phpunit backupGlobals="true"
+ backupStaticAttributes="false"
+ bootstrap="../../../core/kernel/tests/bootstrap.php"
+ colors="false"
+ convertErrorsToExceptions="true"
+ convertNoticesToExceptions="true"
+ convertWarningsToExceptions="true"
+ processIsolation="false"
+ stopOnFailure="false"
+ strict="true"
+ verbose="true">
+
+ <php>
+ <ini name="memory_limit" value="-1"/>
+ </php>
+
+ <testsuites>
+ <testsuite name="all">
+ <directory>../../../core/tests</directory>
+ <directory>../../../modules/*/tests</directory>
+ <exclude>../../../core/tests/unit</exclude>
+ </testsuite>
+ <testsuite name="custom">
+ <directory>../../../modules/custom/tests</directory>
+ </testsuite>
+ </testsuites>
+
+ <listeners>
+ <listener class="\Mockery\Adapter\Phpunit\TestListener"/>
+ </listeners>
+
+ <logging>
+ <!--<log type="coverage-html" target="../../../build/coverage" title="BankAccount"
+ charset="UTF-8" yui="true" highlight="true"
+ lowUpperBound="35" highLowerBound="70"/>
+ <log type="coverage-clover" target="../../../build/logs/clover.xml"/>-->
+ <log type="junit" target="../../../build/logs/junit.xml" logIncompleteSkipped="false"/>
+ </logging>
+
+ <filter>
+ <blacklist>
+ <directory suffix=".php">..</directory>
+ </blacklist>
+ <whitelist addUncoveredFilesFromWhitelist="true">
+ <directory suffix=".php">../../..</directory>
+ <exclude>
+ <directory>../../../blog</directory>
+ <directory>../../../modules/mpdf</directory>
+ <directory>../../../core/editor</directory>
+ <directory>../../../core/ckeditor</directory>
+ <directory>../../../system</directory>
+ <directory>../../../vendor</directory>
+
+ <directory>../../../core/tests</directory>
+ <directory>../../../modules/*/tests</directory>
+
+ <file>../../../core/kernel/tests/bootstrap.php</file>
+ </exclude>
+ </whitelist>
+ </filter>
+</phpunit>
Index: tools/build/targets/common.xml
===================================================================
--- /dev/null
+++ tools/build/targets/common.xml
@@ -0,0 +1,216 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+### Requirements
+
+Using the template requires a range of PEAR packages present. They can be
+installed as follows:
+
+ pear config-set auto_discover 1
+ pear install pear.phpqatools.org/phpqatools
+
+ pear channel-discover pear.phpdoc.org
+ pear install phpdoc/phpDocumentor-alpha
+
+ pear channel-discover pear.phing.info
+ pear install -\-alldeps phing/phing
+
+ pear channel-discover pear.phpunit.de
+ pear install phpunit/PHPUnit_Selenium
+-->
+<project name="inc_common" default="build">
+ <import file="targets/db.xml"/>
+ <import file="targets/deploy.xml"/>
+ <import file="targets/folders.xml"/>
+
+ <php function="ini_set">
+ <param value="memory_limit"/>
+ <param value="-1"/>
+ </php>
+
+ <target name="build" description="Builds a project" depends="init,verify,analyze"/>
+
+ <target name="build-parallel" description="Builds a project (long targets executed in parallel)" depends="init,lint,tools-parallel,phpunit"/>
+
+ <target name="tools-parallel" description="Run tools in parallel">
+ <parallel threadCount="2">
+ <sequential>
+ <phingcall target="pdepend"/>
+ <phingcall target="phpmd-ci"/>
+ </sequential>
+
+ <phingcall target="phpcpd"/>
+ <phingcall target="phpcs-ci"/>
+ <phingcall target="phploc"/>
+ <phingcall target="phpdoc"/>
+ </parallel>
+ </target>
+
+ <!-- ### Verify code consistency
+
+ Make sure that our code is clean and functional. -->
+ <target name="verify" description="Verify code consistency" depends="init,lint"/>
+ <!--<target name="verify" description="Verify code consistency" depends="init,lint,phpunit"/>-->
+
+ <!-- ### Analyze code
+
+ Perform static analysis of the code to generate statistics, identify potential
+ problems and opportunities for refactorings and make sure that the code
+ complies with coding standards. -->
+ <target name="analyze" description="Analyze code" depends="init,phploc,phpmd-ci,phpcs-ci"/>
+ <!--<target name="analyze" description="Analyze code" depends="init,phploc,pdepend,phpmd-ci,phpcpd,phpcs-ci"/>-->
+
+ <!-- ### Generate documentation
+
+ Generate HTML documentation and code browser for the project. -->
+ <target name="docs" description="Generate documentation" depends="init,phpdoc" />
+
+ <!-- ### PHP linting
+
+ Check files for syntax errors. -->
+ <target name="lint" description="Perform syntax check of sourcecode files" depends="init">
+ <phplint haltonfailure="true" deprecatedAsError="true" cachefile="${build.cache.dir}/phplint.txt">
+ <fileset refid="php.files"/>
+ </phplint>
+ </target>
+
+ <!-- ### Generate code statistics
+
+ Measures the size of the project using
+ [phploc](http://sebastianbergmann.github.com/phploc/) and generates
+ statistics. -->
+ <target name="phploc" description="Measure project size using PHPLOC" depends="init">
+ <phploc reportType="csv" reportName="phploc" reportDirectory="${build.logs.dir}">
+ <fileset refid="php.files"/>
+ </phploc>
+ </target>
+
+ <target name="pdepend" description="Calculate software metrics using PHP_Depend" depends="init">
+ <exec executable="pdepend" passthru="true">
+ <arg value="--jdepend-xml=${build.logs.dir}/jdepend.xml"/>
+ <arg value="--jdepend-chart=${build.pdepend.dir}/dependencies.svg"/>
+ <arg value="--overview-pyramid=${build.pdepend.dir}/overview-pyramid.svg"/>
+ <arg value="--ignore=${phpmd.exclude}"/>
+ <arg path="${scan.dir}"/>
+ </exec>
+ </target>
+
+ <!-- ### Detect code mess
+
+ Uses [PHPMD](http://phpmd.org/) to detect code mess and look for potential
+ problems. -->
+ <target name="phpmd" description="Perform project mess detection using PHPMD (print human readable output)" depends="init">
+ <exec executable="phpmd" passthru="true">
+ <arg path="${scan.dir}"/>
+ <arg value="text"/>
+ <arg value="${build.config.dir}/inc/phpmd.xml"/>
+ <arg value="--suffixes"/>
+ <arg value="php"/>
+ <arg value="--exclude=${phpmd.exclude}"/>
+ </exec>
+ </target>
+
+ <!-- ### Detect code mess
+
+ Uses [PHPMD](http://phpmd.org/) to detect code mess and look for potential
+ problems. -->
+ <target name="phpmd-ci" description="Perform project mess detection using PHPMD (creates a log file for the CI server)" depends="init">
+ <exec executable="phpmd" passthru="true">
+ <arg path="${scan.dir}"/>
+ <arg value="xml"/>
+ <arg value="${build.config.dir}/inc/phpmd.xml"/>
+ <arg value="--reportfile"/>
+ <arg value="${build.logs.dir}/pmd.xml"/>
+ <arg value="--suffixes"/>
+ <arg value="php"/>
+ <arg value="--exclude=${phpmd.exclude}"/>
+ </exec>
+ </target>
+
+ <target name="phpcs" description="Find coding standard violations using PHP_CodeSniffer (print human readable output)" depends="init">
+ <!--<exec executable="${base.dir}/vendor/bin/phpcs" passthru="true">-->
+ <!--<exec executable="/home/alex/web/g/direct/PHP_CodeSniffer/scripts/phpcs" passthru="true">-->
+ <exec executable="phpcs" passthru="true">
+ <arg value="--standard=${vendor.dir}/aik099/coding-standard/CodingStandard"/>
+ <arg value="-wvs"/>
+ <arg value="--encoding=UTF-8"/>
+ <arg value="--extensions=php"/>
+ <arg value="--report=diff"/>
+ <arg value="--sniffs=Generic.WhiteSpace.ScopeIndent"/>
+ <arg value="-d"/>
+ <arg value="memory_limit=-1"/>
+ <arg path="${base.dir}/modules/custom/units/widgets/widget_tp.php"/>
+ <!--<arg path="${scan.dir}"/>-->
+ </exec>
+ </target>
+
+ <target name="phpcs-ci" description="Find coding standard violations using PHP_CodeSniffer (creates a log file for the CI server)" depends="init">
+ <!--<exec executable="${base.dir}/vendor/bin/phpcs" passthru="true">-->
+ <!--<exec executable="/home/alex/web/g/direct/PHP_CodeSniffer/scripts/phpcs" passthru="true">-->
+ <exec executable="phpcs" passthru="true">
+ <arg value="--report=checkstyle"/>
+ <arg value="--report-file=${build.logs.dir}/checkstyle.xml"/>
+ <arg value="--standard=${vendor.dir}/aik099/coding-standard/CodingStandard"/>
+ <arg value="-w"/>
+ <arg value="--encoding=UTF-8"/>
+ <arg value="--extensions=php"/>
+ <arg value="-p"/>
+ <arg value="-d"/>
+ <arg value="memory_limit=-1"/>
+ <arg path="${scan.dir}"/>
+ </exec>
+ </target>
+
+ <!-- ### Detect potential copy/pasting
+
+ Uses [phpcpd](https://github.com/sebastianbergmann/phpcpd) to detect duplicate
+ code. This indicates potential refactorings.-->
+ <target name="phpcpd" description="Find duplicate code using PHPCPD" depends="init">
+ <exec executable="phpcpd" passthru="true">
+ <arg value="--log-pmd=${build.logs.dir}/pmd-cpd.xml"/>
+ <arg line="${phpcpd.exclude}"/>
+ <arg path="${scan.dir}"/>
+ </exec>
+ </target>
+
+ <!-- ### Generate documentation -->
+ <!-- #### Generate API Documentation
+
+ Uses [phpDocumentor](http://www.phpdoc.org/) to generate documentation. -->
+ <target name="phpdoc" description="Generate API documentation using phpdoc" depends="init">
+ <phpdoc2 title="API Documentation" destdir="${build.api.dir}" template="responsive" quiet="true">
+ <fileset refid="php.files"/>
+ </phpdoc2>
+ </target>
+
+ <target name="phpunit" description="Run tests with PHPUnit" depends="init">
+ <exec executable="phpunit" logoutput="true" checkreturn="true">
+ <arg value="--configuration"/>
+ <arg path="${build.config.dir}/phpunit.xml"/>
+ <arg value="--testsuite"/>
+ <arg value="custom"/>
+ </exec>
+ </target>
+
+ <target name="init" depends="create-aliases,folders-create" description="Prepare for build">
+ <if>
+ <isfalse value="${local.build}"/>
+ <then>
+ <phingcall target="deploy-ci"/>
+ </then>
+ </if>
+ </target>
+
+ <target name="create-aliases" description="Creating directory aliases" hidden="true">
+ <property name="pdo.dsn.without.db" value="mysql:host=${db.host}"/>
+ <property name="pdo.dsn" value="${pdo.dsn.without.db};dbname=${db.name}"/>
+
+ <property name="build.config.dir" value="."/>
+ <property name="build.dir" value="${base.dir}/build"/>
+ <!--<property name="build.api.dir" value="${build.dir}/api"/>-->
+ <!--<property name="build.coverage.dir" value="${build.dir}/coverage"/>-->
+ <property name="build.logs.dir" value="${build.dir}/logs"/>
+ <property name="build.cache.dir" value="${build.dir}/cache"/>
+ <!--<property name="build.pdepend.dir" value="${build.dir}/pdepend"/>-->
+ <property name="vendor.dir" value="${base.dir}/vendor"/>
+ </target>
+</project>
Index: tools/build/targets/db.xml
===================================================================
--- /dev/null
+++ tools/build/targets/db.xml
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="inc_db" default="build">
+ <target name="db-fill-ci" description="Inserts testing data into database" depends="create-aliases,db-clean-ci,config-create">
+ <echo msg="Filling database '${db.name}' with demo data"/>
+
+ <foreach param="filename" absparam="db.file" target="db-import-file">
+ <filelist dir="${base.dir}/system" files="build-schema.sql,build-data.sql,build-patch.sql"/>
+ </foreach>
+ </target>
+
+ <target name="db-clean-ci" description="Cleans the database">
+ <echo msg="Deleting database '${db.name}'"/>
+ <phingcall target="db-inline-query">
+ <property name="skip-db" value="true"/>
+ <property name="db.query" value="DROP DATABASE ${db.name};"/>
+ </phingcall>
+
+ <echo msg="Creating database '${db.name}'"/>
+ <phingcall target="db-inline-query">
+ <property name="skip-db" value="true"/>
+ <property name="db.query" value="CREATE DATABASE ${db.name};"/>
+ </phingcall>
+ </target>
+
+ <target name="db-dump" description="Dumps database (to be used in CI)" depends="create-aliases">
+ <echo msg="Truncating '${db.tableprefix}SystemCache' table in '${db.name}' database"/>
+ <phingcall target="db-inline-query">
+ <property name="db.query" value="TRUNCATE TABLE ${db.tableprefix}SystemCache;"/>
+ </phingcall>
+
+ <echo msg="Truncating '${db.tableprefix}SystemLog' table in '${db.name}' database"/>
+ <phingcall target="db-inline-query">
+ <property name="db.query" value="TRUNCATE TABLE ${db.tableprefix}SystemLog;"/>
+ </phingcall>
+
+ <echo msg="Dumping database '${db.name}' schema"/>
+ <exec executable="mysqldump" checkreturn="true">
+ <arg value="--host=${db.host}"/>
+ <arg value="--user=${db.user}"/>
+ <arg value="--password=${db.password}"/>
+ <arg value="--compact"/>
+ <arg value="--no-data"/>
+ <arg value="${db.name}"/>
+ <arg value="&gt;"/>
+ <arg path="${base.dir}/system/build-schema.sql"/>
+ </exec>
+
+ <echo msg="Dumping database '${db.name}' data"/>
+ <exec executable="mysqldump" checkreturn="true">
+ <arg value="--host=${db.host}"/>
+ <arg value="--user=${db.user}"/>
+ <arg value="--password=${db.password}"/>
+ <arg value="--compact"/>
+ <arg value="--no-create-info"/>
+ <arg value="${db.name}"/>
+ <arg value="&gt;"/>
+ <arg path="${base.dir}/system/build-data.sql"/>
+ </exec>
+
+ <echo msg="Creating empty '${db.name}' patch"/>
+ <touch file="${base.dir}/system/build-patch.sql" />
+ </target>
+
+ <!-- ## Helper targets
+
+ These targets are used throughout the project and should normally not be
+ executed directly.-->
+ <target name="db-import-file" description="Import file into database" hidden="true">
+ <echo msg="Importing '${db.file}' into '${db.name}' database"/>
+
+ <!--<pdosqlexec url="${pdo.dsn}" userid="${db.user}" password="${db.password}" encoding="utf-8">
+ <transaction src="${db.file}"/>
+ </pdosqlexec>-->
+
+ <exec executable="mysql" checkreturn="true">
+ <arg value="--host=${db.host}"/>
+ <arg value="--user=${db.user}"/>
+ <arg value="--password=${db.password}"/>
+ <arg value="${db.name}"/>
+ <arg value="&lt;"/>
+ <arg path="${db.file}"/>
+ </exec>
+ </target>
+
+ <target name="db-inline-query" description="Runs sql query in database" hidden="true">
+ <property name="skip-db" value="false"/>
+
+ <if>
+ <isfalse value="${skip-db}"/>
+ <then>
+ <exec executable="mysql" checkreturn="true">
+ <arg value="--host=${db.host}"/>
+ <arg value="--user=${db.user}"/>
+ <arg value="--password=${db.password}"/>
+ <arg value="${db.name}"/>
+ <arg value="-BNe"/>
+ <arg value="${db.query}"/>
+ </exec>
+ </then>
+ <else>
+ <exec executable="mysql" checkreturn="true">
+ <arg value="--host=${db.host}"/>
+ <arg value="--user=${db.user}"/>
+ <arg value="--password=${db.password}"/>
+ <arg value="-BNe"/>
+ <arg value="${db.query}"/>
+ </exec>
+ </else>
+ </if>
+ </target>
+</project>
Index: tools/build/targets/deploy.xml
===================================================================
--- /dev/null
+++ tools/build/targets/deploy.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="inc_deploy" default="build">
+ <target name="deploy-ci" description="Deployment tasks, that are required after SVN checkout" depends="create-aliases,db-fill-ci">
+ <property name="tools.dir" value="${base.dir}/tools"/>
+
+ <echo msg="Fixing shell scripts permissions under '/tools' folder"/>
+ <chmod mode="0755" verbose="true" failonerror="true">
+ <fileset dir="${tools.dir}">
+ <include name="*.sh"/>
+ </fileset>
+ </chmod>
+
+ <echo msg="Fixing '/system' folder permissions"/>
+ <exec dir="${tools.dir}" command="./fix_perms.sh" logoutput="true"/>
+
+ <echo msg="Removing compiled templates under '/system/cache' folder"/>
+ <exec dir="${tools.dir}" command="./clear_cache.sh" logoutput="true"/>
+
+ <composer command="install" composer="/usr/local/bin/composer">
+ <arg value="--working-dir"/>
+ <arg path="${base.dir}"/>
+ <arg value="--ansi"/>
+ </composer>
+
+ <phingcall target="inportal-deploy"/>
+ </target>
+
+ <target name="inportal-deploy" description="Runs In-Portal deployment script">
+ <echo msg="Running In-Portal Deployment Script (part of 'do_update') ..."/>
+
+ <exec executable="php" logoutput="true" checkreturn="true">
+ <arg path="${base.dir}/tools/run_event.php"/>
+ <arg value="adm:OnDeploy"/>
+ <arg value="${cli.key}"/>
+ <arg value="${client.ip.address}"/>
+ </exec>
+ </target>
+</project>
Index: tools/build/targets/folders.xml
===================================================================
--- /dev/null
+++ tools/build/targets/folders.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="inc_folders" default="build">
+ <target name="folders-create" description="Creates folders, to store build artifacts" depends="create-aliases,folders-delete">
+ <!--<mkdir dir="${build.api.dir}"/>-->
+ <!--<mkdir dir="${build.coverage.dir}"/>-->
+ <mkdir dir="${build.logs.dir}"/>
+ <!--<mkdir dir="${build.pdepend.dir}"/>-->
+ <mkdir dir="${build.cache.dir}"/>
+ <mkdir dir="${build.dir}/test_data"/>
+ <mkdir dir="${build.dir}/system/remote_code_coverage"/>
+
+ <copy todir="${base.dir}/system" overwrite="true">
+ <fileset dir="${build.dir}/test_data">
+ <include name="**/*"/>
+ </fileset>
+ </copy>
+
+ <if>
+ <isfalse value="${local.build}"/>
+ <then>
+ <echo message="Setting 'RewriteBase /' to solve problems with 'VirtualDocumentRoot' option"/>
+ <echo file="${base.dir}/.htaccess" append="true">
+ RewriteBase /
+ </echo>
+ </then>
+ </if>
+ </target>
+
+ <target name="folders-delete" description="Deletes folders, where build artifacts are stored" depends="create-aliases">
+ <!--<delete dir="${build.api.dir}"/>-->
+ <!--<delete dir="${build.coverage.dir}"/>-->
+ <delete dir="${build.logs.dir}"/>
+ <!--<delete dir="${build.pdepend.dir}"/>-->
+ </target>
+
+ <target name="config-create" description="Creates '/system/config.php' file" depends="create-aliases,config-delete">
+ <touch file="${base.dir}/system/config.php" />
+
+ <echo file="${base.dir}/system/config.php">&lt;?php
+ $_CONFIG['Misc']['WriteablePath'] = '/system';
+ $_CONFIG['Misc']['RestrictedPath'] = '/system/.restricted';
+ $_CONFIG['Misc']['WebsitePath'] = '${website.path}';
+ $_CONFIG['Misc']['Domain'] = '${website.domain}';
+ $_CONFIG['Misc']['AdminDirectory'] = '/admin';
+ $_CONFIG['Misc']['AdminPresetsDirectory'] = '/admin';
+ $_CONFIG['Misc']['ApplicationClass'] = 'kApplication';
+ $_CONFIG['Misc']['ApplicationPath'] = '/core/kernel/application.php';
+ $_CONFIG['Misc']['CacheHandler'] = 'Fake';
+ $_CONFIG['Misc']['MemcacheServers'] = 'localhost:11211';
+ $_CONFIG['Misc']['CompressionEngine'] = 'php';
+ $_CONFIG['Misc']['WebsiteCharset'] = 'utf-8';
+ $_CONFIG['Misc']['EnableSystemLog'] = '1';
+ $_CONFIG['Misc']['SystemLogMaxLevel'] = '5';
+ $_CONFIG['Misc']['TrustProxy'] = '0';
+
+ $_CONFIG['Database']['DBType'] = 'mysql';
+ $_CONFIG['Database']['DBHost'] = '${db.host}';
+ $_CONFIG['Database']['DBName'] = '${db.name}';
+ $_CONFIG['Database']['DBUser'] = '${db.user}';
+ $_CONFIG['Database']['DBUserPassword'] = '${db.password}';
+ $_CONFIG['Database']['DBCollation'] = 'utf8_general_ci';
+ $_CONFIG['Database']['TablePrefix'] = '${db.tableprefix}';
+ $_CONFIG['Database']['DBCharset'] = 'utf8';
+ </echo>
+ </target>
+
+ <target name="config-delete" description="Deletes '/system/config.php' file" depends="create-aliases">
+ <delete file="${base.dir}/system/config.php"/>
+ </target>
+</project>

Event Timeline