From 60d523d898487ca29b72dc372c56fa122c91143e Mon Sep 17 00:00:00 2001 From: Dries Date: Thu, 14 Feb 2013 13:45:50 -0500 Subject: [PATCH] Issue #1916936 by msonnabaum: Add vendored copy of phpunit. --- core/composer.json | 8 +- core/composer.lock | 468 +- core/vendor/autoload.php | 2 +- core/vendor/bin/phpunit | 1 + core/vendor/composer/autoload_classmap.php | 224 + core/vendor/composer/autoload_real.php | 12 +- core/vendor/composer/include_paths.php | 17 + core/vendor/composer/installed.json | 673 ++- .../phpunit/php-code-coverage/.gitattributes | 1 + .../phpunit/php-code-coverage/.gitignore | 7 + .../phpunit/php-code-coverage/.travis.yml | 22 + .../phpunit/php-code-coverage/CONTRIBUTING.md | 5 + .../php-code-coverage/ChangeLog.markdown | 55 + core/vendor/phpunit/php-code-coverage/LICENSE | 33 + .../php-code-coverage/PHP/CodeCoverage.php | 801 ++++ .../PHP/CodeCoverage/Autoload.php | 90 + .../PHP/CodeCoverage/Autoload.php.in | 70 + .../PHP/CodeCoverage/Driver.php | 70 + .../PHP/CodeCoverage/Driver/Xdebug.php | 97 + .../PHP/CodeCoverage/Exception.php | 59 + .../PHP/CodeCoverage/Filter.php | 343 ++ .../PHP/CodeCoverage/Report/Clover.php | 346 ++ .../PHP/CodeCoverage/Report/Factory.php | 280 ++ .../PHP/CodeCoverage/Report/HTML.php | 222 + .../PHP/CodeCoverage/Report/HTML/Renderer.php | 284 ++ .../Report/HTML/Renderer/Dashboard.php | 240 + .../Report/HTML/Renderer/Directory.php | 132 + .../Report/HTML/Renderer/File.php | 583 +++ .../Renderer/Template/coverage_bar.html.dist | 3 + .../Template/css/bootstrap-responsive.min.css | 9 + .../Renderer/Template/css/bootstrap.min.css | 9 + .../HTML/Renderer/Template/css/style.css | 86 + .../Renderer/Template/dashboard.html.dist | 117 + .../Renderer/Template/directory.html.dist | 58 + .../Template/directory_item.html.dist | 13 + .../HTML/Renderer/Template/file.html.dist | 65 + .../Renderer/Template/file_item.html.dist | 14 + .../img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../Template/img/glyphicons-halflings.png | Bin 0 -> 12799 bytes .../Renderer/Template/js/bootstrap.min.js | 6 + .../HTML/Renderer/Template/js/highcharts.js | 246 + .../HTML/Renderer/Template/js/html5shiv.js | 8 + .../HTML/Renderer/Template/js/jquery.min.js | 2 + .../Renderer/Template/method_item.html.dist | 11 + .../PHP/CodeCoverage/Report/Node.php | 380 ++ .../CodeCoverage/Report/Node/Directory.php | 512 ++ .../PHP/CodeCoverage/Report/Node/File.php | 721 +++ .../PHP/CodeCoverage/Report/Node/Iterator.php | 148 + .../PHP/CodeCoverage/Report/PHP.php | 74 + .../PHP/CodeCoverage/Report/Text.php | 278 ++ .../PHP/CodeCoverage/Util.php | 268 ++ .../Util/InvalidArgumentHelper.php | 80 + .../PHP/CodeCoverage/Version.php | 92 + .../phpunit/php-code-coverage/README.markdown | 43 + .../Tests/PHP/CodeCoverage/FilterTest.php | 298 ++ .../PHP/CodeCoverage/Report/CloverTest.php | 96 + .../PHP/CodeCoverage/Report/FactoryTest.php | 263 ++ .../Tests/PHP/CodeCoverage/UtilTest.php | 194 + .../Tests/PHP/CodeCoverageTest.php | 503 ++ .../php-code-coverage/Tests/TestCase.php | 266 ++ .../Tests/_files/BankAccount-clover.xml | 26 + .../Tests/_files/BankAccount.php | 33 + .../Tests/_files/BankAccountTest.php | 70 + .../_files/CoverageClassExtendedTest.php | 12 + .../Tests/_files/CoverageClassTest.php | 12 + .../Tests/_files/CoverageFunctionTest.php | 11 + .../CoverageMethodOneLineAnnotationTest.php | 12 + .../Tests/_files/CoverageMethodTest.php | 12 + .../Tests/_files/CoverageNoneTest.php | 9 + .../Tests/_files/CoverageNotPrivateTest.php | 12 + .../Tests/_files/CoverageNotProtectedTest.php | 12 + .../Tests/_files/CoverageNotPublicTest.php | 12 + .../Tests/_files/CoverageNothingTest.php | 13 + .../Tests/_files/CoveragePrivateTest.php | 12 + .../Tests/_files/CoverageProtectedTest.php | 12 + .../Tests/_files/CoveragePublicTest.php | 12 + .../CoverageTwoDefaultClassAnnotations.php | 19 + .../Tests/_files/CoveredClass.php | 36 + .../Tests/_files/CoveredFunction.php | 4 + .../NamespaceCoverageClassExtendedTest.php | 12 + .../_files/NamespaceCoverageClassTest.php | 12 + ...NamespaceCoverageCoversClassPublicTest.php | 16 + .../NamespaceCoverageCoversClassTest.php | 21 + .../_files/NamespaceCoverageMethodTest.php | 12 + .../NamespaceCoverageNotPrivateTest.php | 12 + .../NamespaceCoverageNotProtectedTest.php | 12 + .../_files/NamespaceCoverageNotPublicTest.php | 12 + .../_files/NamespaceCoveragePrivateTest.php | 12 + .../_files/NamespaceCoverageProtectedTest.php | 12 + .../_files/NamespaceCoveragePublicTest.php | 12 + .../Tests/_files/NamespaceCoveredClass.php | 38 + .../_files/NotExistingCoveredElementTest.php | 24 + .../Tests/_files/ignored-lines-clover.xml | 17 + .../Tests/_files/source_with_ignore.php | 38 + .../Tests/_files/source_with_namespace.php | 20 + .../source_with_oneline_annotations.php | 13 + .../Tests/_files/source_without_ignore.php | 4 + .../Tests/_files/source_without_namespace.php | 18 + .../phpunit/php-code-coverage/build.xml | 162 + .../ControlSignatureSniff.php | 22 + .../Whitespace/ConcatenationSpacingSniff.php | 22 + .../php-code-coverage/build/PHPCS/ruleset.xml | 35 + .../phpunit/php-code-coverage/build/phpmd.xml | 27 + .../php-code-coverage/build/travis-ci.xml | 24 + .../phpunit/php-code-coverage/composer.json | 41 + .../phpunit/php-code-coverage/package.xml | 134 + .../php-code-coverage/phpunit.xml.dist | 29 + .../php-code-coverage/scripts/auto_append.php | 5 + .../scripts/auto_prepend.php | 10 + .../phpunit/php-file-iterator/.gitattributes | 1 + .../phpunit/php-file-iterator/.gitignore | 7 + .../php-file-iterator/ChangeLog.markdown | 26 + .../php-file-iterator/File/Iterator.php | 196 + .../File/Iterator/Autoload.php | 66 + .../File/Iterator/Autoload.php.in | 64 + .../File/Iterator/Facade.php | 161 + .../File/Iterator/Factory.php | 120 + core/vendor/phpunit/php-file-iterator/LICENSE | 33 + .../phpunit/php-file-iterator/README.markdown | 23 + .../phpunit/php-file-iterator/build.xml | 161 + .../ControlSignatureSniff.php | 22 + .../Whitespace/ConcatenationSpacingSniff.php | 22 + .../php-file-iterator/build/PHPCS/ruleset.xml | 35 + .../phpunit/php-file-iterator/build/phpmd.xml | 27 + .../phpunit/php-file-iterator/composer.json | 33 + .../phpunit/php-file-iterator/package.xml | 65 + .../phpunit/php-text-template/.gitattributes | 1 + .../phpunit/php-text-template/.gitignore | 7 + .../php-text-template/ChangeLog.markdown | 24 + core/vendor/phpunit/php-text-template/LICENSE | 33 + .../phpunit/php-text-template/README.markdown | 23 + .../php-text-template/Text/Template.php | 164 + .../Text/Template/Autoload.php | 65 + .../Text/Template/Autoload.php.in | 65 + .../phpunit/php-text-template/build.xml | 161 + .../ControlSignatureSniff.php | 22 + .../Whitespace/ConcatenationSpacingSniff.php | 22 + .../php-text-template/build/PHPCS/ruleset.xml | 35 + .../phpunit/php-text-template/build/phpmd.xml | 27 + .../phpunit/php-text-template/composer.json | 32 + .../phpunit/php-text-template/package.xml | 59 + core/vendor/phpunit/php-timer/.gitattributes | 1 + core/vendor/phpunit/php-timer/.gitignore | 7 + .../phpunit/php-timer/ChangeLog.markdown | 29 + core/vendor/phpunit/php-timer/LICENSE | 33 + core/vendor/phpunit/php-timer/PHP/Timer.php | 159 + .../phpunit/php-timer/PHP/Timer/Autoload.php | 66 + .../php-timer/PHP/Timer/Autoload.php.in | 66 + core/vendor/phpunit/php-timer/README.markdown | 23 + .../phpunit/php-timer/Tests/TimerTest.php | 108 + core/vendor/phpunit/php-timer/build.xml | 160 + .../ControlSignatureSniff.php | 22 + .../Whitespace/ConcatenationSpacingSniff.php | 22 + .../phpunit/php-timer/build/PHPCS/ruleset.xml | 35 + core/vendor/phpunit/php-timer/build/phpmd.xml | 27 + core/vendor/phpunit/php-timer/composer.json | 32 + core/vendor/phpunit/php-timer/package.xml | 59 + .../vendor/phpunit/php-timer/phpunit.xml.dist | 26 + .../phpunit/php-token-stream/.gitattributes | 1 + .../phpunit/php-token-stream/.gitignore | 7 + .../php-token-stream/ChangeLog.markdown | 35 + core/vendor/phpunit/php-token-stream/LICENSE | 33 + .../phpunit/php-token-stream/PHP/Token.php | 717 +++ .../php-token-stream/PHP/Token/Stream.php | 568 +++ .../PHP/Token/Stream/Autoload.php | 226 + .../PHP/Token/Stream/Autoload.php.in | 65 + .../PHP/Token/Stream/CachingFactory.php | 85 + .../phpunit/php-token-stream/README.markdown | 23 + .../Tests/Token/ClassTest.php | 122 + .../Tests/Token/ClosureTest.php | 125 + .../Tests/Token/FunctionTest.php | 160 + .../Tests/Token/IncludeTest.php | 117 + .../Tests/Token/InterfaceTest.php | 236 + .../Tests/Token/NamespaceTest.php | 124 + .../php-token-stream/Tests/TokenTest.php | 85 + .../_files/classExtendsNamespacedClass.php | 10 + .../Tests/_files/classInNamespace.php | 6 + .../Tests/_files/classInScopedNamespace.php | 9 + .../php-token-stream/Tests/_files/closure.php | 5 + .../php-token-stream/Tests/_files/issue19.php | 3 + ...tipleNamespacesWithOneClassUsingBraces.php | 12 + ...espacesWithOneClassUsingNonBraceSyntax.php | 14 + .../php-token-stream/Tests/_files/source.php | 32 + .../php-token-stream/Tests/_files/source2.php | 6 + .../php-token-stream/Tests/_files/source3.php | 14 + .../php-token-stream/Tests/_files/source4.php | 30 + .../vendor/phpunit/php-token-stream/build.xml | 162 + .../ControlSignatureSniff.php | 22 + .../Whitespace/ConcatenationSpacingSniff.php | 22 + .../php-token-stream/build/PHPCS/ruleset.xml | 35 + .../phpunit/php-token-stream/build/phpmd.xml | 27 + .../phpunit/php-token-stream/composer.json | 33 + .../phpunit/php-token-stream/package.xml | 70 + .../phpunit/php-token-stream/phpunit.xml.dist | 27 + .../phpunit-mock-objects/.gitattributes | 1 + .../phpunit/phpunit-mock-objects/.gitignore | 7 + .../phpunit/phpunit-mock-objects/.travis.yml | 22 + .../phpunit-mock-objects/CONTRIBUTING.md | 5 + .../phpunit-mock-objects/ChangeLog.markdown | 27 + .../phpunit/phpunit-mock-objects/LICENSE | 33 + .../PHPUnit/Framework/MockObject/Autoload.php | 100 + .../Framework/MockObject/Autoload.php.in | 65 + .../Framework/MockObject/Builder/Identity.php | 70 + .../MockObject/Builder/InvocationMocker.php | 193 + .../Framework/MockObject/Builder/Match.php | 66 + .../MockObject/Builder/MethodNameMatch.php | 68 + .../MockObject/Builder/Namespace.php | 79 + .../MockObject/Builder/ParametersMatch.php | 89 + .../Framework/MockObject/Builder/Stub.php | 66 + .../Framework/MockObject/Generator.php | 808 ++++ .../Generator/mocked_class.tpl.dist | 52 + .../Generator/mocked_clone.tpl.dist | 4 + .../Generator/mocked_object_method.tpl.dist | 22 + .../Generator/mocked_static_method.tpl.dist | 22 + .../MockObject/Generator/trait_class.tpl.dist | 4 + .../Generator/unmocked_clone.tpl.dist | 5 + .../MockObject/Generator/wsdl_class.tpl.dist | 9 + .../MockObject/Generator/wsdl_method.tpl.dist | 4 + .../Framework/MockObject/Invocation.php | 58 + .../MockObject/Invocation/Object.php | 75 + .../MockObject/Invocation/Static.php | 191 + .../Framework/MockObject/InvocationMocker.php | 201 + .../Framework/MockObject/Invokable.php | 79 + .../PHPUnit/Framework/MockObject/Matcher.php | 308 ++ .../MockObject/Matcher/AnyInvokedCount.php | 72 + .../MockObject/Matcher/AnyParameters.php | 74 + .../MockObject/Matcher/Invocation.php | 88 + .../MockObject/Matcher/InvokedAtIndex.php | 127 + .../MockObject/Matcher/InvokedAtLeastOnce.php | 85 + .../MockObject/Matcher/InvokedCount.php | 143 + .../MockObject/Matcher/InvokedRecorder.php | 107 + .../MockObject/Matcher/MethodName.php | 102 + .../MockObject/Matcher/Parameters.php | 160 + .../Matcher/StatelessInvocation.php | 96 + .../Framework/MockObject/MockBuilder.php | 291 ++ .../Framework/MockObject/MockObject.php | 94 + .../PHPUnit/Framework/MockObject/Stub.php | 71 + .../MockObject/Stub/ConsecutiveCalls.php | 87 + .../Framework/MockObject/Stub/Exception.php | 80 + .../MockObject/Stub/MatcherCollection.php | 66 + .../Framework/MockObject/Stub/Return.php | 78 + .../MockObject/Stub/ReturnArgument.php | 78 + .../MockObject/Stub/ReturnCallback.php | 94 + .../Framework/MockObject/Stub/ReturnSelf.php | 76 + .../MockObject/Stub/ReturnValueMap.php | 87 + .../Framework/MockObject/Verifiable.php | 65 + .../Tests/GeneratorTest.php | 79 + .../Tests/MockBuilderTest.php | 152 + .../MockObject/Invocation/ObjectTest.php | 82 + .../MockObject/Invocation/StaticTest.php | 52 + .../Tests/MockObject/class.phpt | 128 + .../MockObject/class_call_parent_clone.phpt | 82 + .../class_call_parent_constructor.phpt | 81 + .../class_dont_call_parent_clone.phpt | 81 + .../class_dont_call_parent_constructor.phpt | 81 + ...ing_interface_call_parent_constructor.phpt | 86 + ...nterface_dont_call_parent_constructor.phpt | 86 + .../Tests/MockObject/class_partial.phpt | 107 + .../Tests/MockObject/interface.phpt | 101 + .../invocation_object_clone_object.phpt | 130 + .../invocation_static_clone_object.phpt | 130 + .../Tests/MockObject/namespaced_class.phpt | 131 + .../namespaced_class_call_parent_clone.phpt | 84 + ...espaced_class_call_parent_constructor.phpt | 83 + ...mespaced_class_dont_call_parent_clone.phpt | 83 + ...ed_class_dont_call_parent_constructor.phpt | 83 + ...ing_interface_call_parent_constructor.phpt | 88 + ...nterface_dont_call_parent_constructor.phpt | 88 + .../MockObject/namespaced_class_partial.phpt | 109 + .../MockObject/namespaced_interface.phpt | 103 + .../Tests/MockObject/nonexistent_class.phpt | 78 + .../nonexistent_class_with_namespace.phpt | 86 + ...ith_namespace_starting_with_separator.phpt | 86 + .../Tests/MockObject/wsdl_class.phpt | 36 + .../MockObject/wsdl_class_namespace.phpt | 38 + .../Tests/MockObject/wsdl_class_partial.phpt | 29 + .../Tests/MockObjectTest.php | 696 +++ .../Tests/_files/AbstractMockTestClass.php | 5 + .../Tests/_files/AnInterface.php | 5 + .../Tests/_files/FunctionCallback.php | 9 + .../Tests/_files/GoogleSearch.wsdl | 198 + .../Tests/_files/MethodCallback.php | 21 + .../_files/MethodCallbackByReference.php | 11 + .../Tests/_files/Mockable.php | 28 + .../Tests/_files/PartialMockTestClass.php | 18 + .../Tests/_files/SomeClass.php | 13 + .../Tests/_files/StaticMockTestClass.php | 12 + .../phpunit/phpunit-mock-objects/build.xml | 162 + .../ControlSignatureSniff.php | 22 + .../Whitespace/ConcatenationSpacingSniff.php | 22 + .../build/PHPCS/ruleset.xml | 35 + .../phpunit-mock-objects/build/phpmd.xml | 27 + .../phpunit-mock-objects/build/travis-ci.xml | 28 + .../phpunit-mock-objects/composer.json | 37 + .../phpunit/phpunit-mock-objects/package.xml | 193 + .../phpunit-mock-objects/phpunit.xml.dist | 31 + core/vendor/phpunit/phpunit/.gitattributes | 1 + core/vendor/phpunit/phpunit/.gitignore | 14 + core/vendor/phpunit/phpunit/CONTRIBUTING.md | 55 + core/vendor/phpunit/phpunit/ChangeLog.md | 38 + core/vendor/phpunit/phpunit/LICENSE | 33 + .../phpunit/phpunit/PHPUnit/Autoload.php | 225 + .../phpunit/phpunit/PHPUnit/Autoload.php.in | 108 + .../PHPUnit/Extensions/GroupTestSuite.php | 100 + .../PHPUnit/Extensions/PhptTestCase.php | 270 ++ .../Extensions/PhptTestCase/Logger.php | 63 + .../PHPUnit/Extensions/PhptTestSuite.php | 83 + .../PHPUnit/Extensions/RepeatedTest.php | 156 + .../PHPUnit/Extensions/TestDecorator.php | 150 + .../PHPUnit/Extensions/TicketListener.php | 225 + .../phpunit/PHPUnit/Framework/Assert.php | 2833 +++++++++++ .../PHPUnit/Framework/Assert/Functions.php | 1972 ++++++++ .../PHPUnit/Framework/Assert/Functions.php.in | 44 + .../Framework/AssertionFailedError.php | 69 + .../phpunit/PHPUnit/Framework/Comparator.php | 98 + .../PHPUnit/Framework/Comparator/Array.php | 178 + .../Framework/Comparator/DOMDocument.php | 115 + .../PHPUnit/Framework/Comparator/Double.php | 102 + .../Framework/Comparator/Exception.php | 93 + .../Framework/Comparator/MockObject.php | 87 + .../PHPUnit/Framework/Comparator/Numeric.php | 117 + .../PHPUnit/Framework/Comparator/Object.php | 146 + .../PHPUnit/Framework/Comparator/Resource.php | 98 + .../PHPUnit/Framework/Comparator/Scalar.php | 137 + .../Framework/Comparator/SplObjectStorage.php | 115 + .../PHPUnit/Framework/Comparator/Type.php | 106 + .../PHPUnit/Framework/ComparatorFactory.php | 157 + .../PHPUnit/Framework/ComparisonFailure.php | 167 + .../phpunit/PHPUnit/Framework/Constraint.php | 181 + .../PHPUnit/Framework/Constraint/And.php | 165 + .../Framework/Constraint/ArrayHasKey.php | 115 + .../Framework/Constraint/Attribute.php | 130 + .../PHPUnit/Framework/Constraint/Callback.php | 117 + .../Constraint/ClassHasAttribute.php | 125 + .../Constraint/ClassHasStaticAttribute.php | 99 + .../Framework/Constraint/Composite.php | 115 + .../PHPUnit/Framework/Constraint/Count.php | 129 + .../Framework/Constraint/Exception.php | 130 + .../Framework/Constraint/ExceptionCode.php | 110 + .../Framework/Constraint/ExceptionMessage.php | 110 + .../Framework/Constraint/FileExists.php | 103 + .../Framework/Constraint/GreaterThan.php | 97 + .../Framework/Constraint/IsAnything.php | 103 + .../PHPUnit/Framework/Constraint/IsEmpty.php | 105 + .../PHPUnit/Framework/Constraint/IsEqual.php | 216 + .../PHPUnit/Framework/Constraint/IsFalse.php | 83 + .../Framework/Constraint/IsIdentical.php | 173 + .../Framework/Constraint/IsInstanceOf.php | 122 + .../PHPUnit/Framework/Constraint/IsNull.php | 83 + .../PHPUnit/Framework/Constraint/IsTrue.php | 83 + .../PHPUnit/Framework/Constraint/IsType.php | 191 + .../Framework/Constraint/JsonMatches.php | 127 + .../JsonMatches/ErrorMessageProvider.php | 107 + .../PHPUnit/Framework/Constraint/LessThan.php | 97 + .../PHPUnit/Framework/Constraint/Not.php | 204 + .../Constraint/ObjectHasAttribute.php | 78 + .../PHPUnit/Framework/Constraint/Or.php | 158 + .../Framework/Constraint/PCREMatch.php | 106 + .../PHPUnit/Framework/Constraint/SameSize.php | 74 + .../Framework/Constraint/StringContains.php | 123 + .../Framework/Constraint/StringEndsWith.php | 97 + .../Framework/Constraint/StringMatches.php | 135 + .../Framework/Constraint/StringStartsWith.php | 97 + .../Constraint/TraversableContains.php | 153 + .../Constraint/TraversableContainsOnly.php | 136 + .../PHPUnit/Framework/Constraint/Xor.php | 163 + .../phpunit/PHPUnit/Framework/Error.php | 76 + .../PHPUnit/Framework/Error/Deprecated.php | 66 + .../PHPUnit/Framework/Error/Notice.php | 66 + .../PHPUnit/Framework/Error/Warning.php | 66 + .../phpunit/PHPUnit/Framework/Exception.php | 60 + .../Framework/ExpectationFailedException.php | 83 + .../PHPUnit/Framework/IncompleteTest.php | 61 + .../PHPUnit/Framework/IncompleteTestError.php | 61 + .../phpunit/PHPUnit/Framework/OutputError.php | 61 + .../Framework/Process/TestCaseMethod.tpl.dist | 51 + .../PHPUnit/Framework/SelfDescribing.php | 66 + .../phpunit/PHPUnit/Framework/SkippedTest.php | 60 + .../PHPUnit/Framework/SkippedTestError.php | 61 + .../Framework/SkippedTestSuiteError.php | 61 + .../PHPUnit/Framework/SyntheticError.php | 122 + .../phpunit/PHPUnit/Framework/Test.php | 67 + .../phpunit/PHPUnit/Framework/TestCase.php | 1880 ++++++++ .../phpunit/PHPUnit/Framework/TestFailure.php | 180 + .../PHPUnit/Framework/TestListener.php | 127 + .../phpunit/PHPUnit/Framework/TestResult.php | 957 ++++ .../phpunit/PHPUnit/Framework/TestSuite.php | 951 ++++ .../Framework/TestSuite/DataProvider.php | 71 + .../phpunit/PHPUnit/Framework/Warning.php | 126 + .../phpunit/PHPUnit/Runner/BaseTestRunner.php | 190 + .../Runner/StandardTestSuiteLoader.php | 154 + .../PHPUnit/Runner/TestSuiteLoader.php | 72 + .../phpunit/PHPUnit/Runner/Version.php | 77 + .../phpunit/PHPUnit/TextUI/Command.php | 906 ++++ .../phpunit/PHPUnit/TextUI/ResultPrinter.php | 665 +++ .../phpunit/PHPUnit/TextUI/TestRunner.php | 791 ++++ .../phpunit/phpunit/PHPUnit/Util/Class.php | 364 ++ .../phpunit/PHPUnit/Util/Configuration.php | 1014 ++++ .../PHPUnit/Util/DeprecatedFeature.php | 103 + .../PHPUnit/Util/DeprecatedFeature/Logger.php | 202 + .../phpunit/phpunit/PHPUnit/Util/Diff.php | 293 ++ .../phpunit/PHPUnit/Util/ErrorHandler.php | 133 + .../phpunit/PHPUnit/Util/Fileloader.php | 108 + .../phpunit/PHPUnit/Util/Filesystem.php | 82 + .../phpunit/phpunit/PHPUnit/Util/Filter.php | 138 + .../phpunit/phpunit/PHPUnit/Util/Getopt.php | 208 + .../phpunit/PHPUnit/Util/GlobalState.php | 449 ++ .../PHPUnit/Util/InvalidArgumentHelper.php | 81 + .../phpunit/phpunit/PHPUnit/Util/Log/JSON.php | 255 + .../phpunit/PHPUnit/Util/Log/JUnit.php | 483 ++ .../phpunit/phpunit/PHPUnit/Util/Log/TAP.php | 255 + .../phpunit/phpunit/PHPUnit/Util/PHP.php | 333 ++ .../phpunit/PHPUnit/Util/PHP/Default.php | 68 + .../phpunit/PHPUnit/Util/PHP/Windows.php | 91 + .../phpunit/phpunit/PHPUnit/Util/Printer.php | 209 + .../phpunit/phpunit/PHPUnit/Util/String.php | 119 + .../phpunit/phpunit/PHPUnit/Util/Test.php | 602 +++ .../PHPUnit/Util/TestDox/NamePrettifier.php | 178 + .../PHPUnit/Util/TestDox/ResultPrinter.php | 348 ++ .../Util/TestDox/ResultPrinter/HTML.php | 124 + .../Util/TestDox/ResultPrinter/Text.php | 96 + .../PHPUnit/Util/TestSuiteIterator.php | 149 + .../phpunit/phpunit/PHPUnit/Util/Type.php | 304 ++ .../phpunit/phpunit/PHPUnit/Util/XML.php | 902 ++++ core/vendor/phpunit/phpunit/README.md | 62 + .../Tests/Extensions/RepeatedTestTest.php | 109 + .../phpunit/Tests/Framework/AssertTest.php | 4159 +++++++++++++++++ .../Tests/Framework/ComparatorTest.php | 160 + .../JsonMatches/ErrorMessageProviderTest.php | 122 + .../Framework/Constraint/JsonMatchesTest.php | 90 + .../Tests/Framework/ConstraintTest.php | 3555 ++++++++++++++ .../phpunit/Tests/Framework/SuiteTest.php | 186 + .../phpunit/Tests/Framework/TestCaseTest.php | 440 ++ .../Tests/Framework/TestImplementorTest.php | 80 + .../Tests/Framework/TestListenerTest.php | 146 + .../phpunit/Tests/Regression/1021.phpt | 19 + .../Tests/Regression/1021/Issue1021Test.php | 23 + .../phpunit/phpunit/Tests/Regression/523.phpt | 19 + .../Tests/Regression/523/Issue523Test.php | 13 + .../phpunit/phpunit/Tests/Regression/578.phpt | 37 + .../Tests/Regression/578/Issue578Test.php | 20 + .../phpunit/phpunit/Tests/Regression/684.phpt | 26 + .../Tests/Regression/684/Issue684Test.php | 4 + .../phpunit/phpunit/Tests/Regression/783.phpt | 21 + .../Tests/Regression/783/ChildSuite.php | 15 + .../phpunit/Tests/Regression/783/OneTest.php | 10 + .../Tests/Regression/783/ParentSuite.php | 13 + .../phpunit/Tests/Regression/783/TwoTest.php | 10 + .../phpunit/Tests/Regression/GitHub/244.phpt | 40 + .../Regression/GitHub/244/Issue244Test.php | 55 + .../phpunit/Tests/Regression/GitHub/322.phpt | 28 + .../Regression/GitHub/322/Issue322Test.php | 17 + .../Regression/GitHub/322/phpunit322.xml | 11 + .../phpunit/Tests/Regression/GitHub/433.phpt | 34 + .../Regression/GitHub/433/Issue433Test.php | 21 + .../phpunit/Tests/Regression/GitHub/445.phpt | 35 + .../Regression/GitHub/445/Issue445Test.php | 21 + .../phpunit/Tests/Regression/GitHub/503.phpt | 34 + .../Regression/GitHub/503/Issue503Test.php | 11 + .../phpunit/Tests/Regression/GitHub/581.phpt | 43 + .../Regression/GitHub/581/Issue581Test.php | 10 + .../phpunit/Tests/Regression/GitHub/74.phpt | 31 + .../Regression/GitHub/74/Issue74Test.php | 9 + .../Regression/GitHub/74/NewException.php | 4 + .../Tests/Runner/BaseTestRunnerTest.php | 66 + .../Tests/TextUI/abstract-test-class.phpt | 29 + .../Tests/TextUI/concrete-test-class.phpt | 22 + .../dataprovider-log-xml-isolation.phpt | 49 + .../Tests/TextUI/dataprovider-log-xml.phpt | 50 + .../Tests/TextUI/dataprovider-testdox.phpt | 19 + .../phpunit/phpunit/Tests/TextUI/debug.phpt | 28 + .../Tests/TextUI/default-isolation.phpt | 22 + .../phpunit/phpunit/Tests/TextUI/default.phpt | 21 + .../Tests/TextUI/dependencies-isolation.phpt | 42 + .../phpunit/Tests/TextUI/dependencies.phpt | 42 + .../Tests/TextUI/dependencies2-isolation.phpt | 23 + .../phpunit/Tests/TextUI/dependencies2.phpt | 22 + .../Tests/TextUI/dependencies3-isolation.phpt | 23 + .../phpunit/Tests/TextUI/dependencies3.phpt | 21 + .../phpunit/Tests/TextUI/empty-testcase.phpt | 29 + .../phpunit/Tests/TextUI/exception-stack.phpt | 55 + .../Tests/TextUI/exclude-group-isolation.phpt | 24 + .../phpunit/Tests/TextUI/exclude-group.phpt | 23 + .../Tests/TextUI/failure-isolation.phpt | 144 + .../phpunit/phpunit/Tests/TextUI/failure.phpt | 144 + .../phpunit/Tests/TextUI/fatal-isolation.phpt | 35 + .../phpunit/phpunit/Tests/TextUI/fatal.phpt | 17 + .../Tests/TextUI/filter-class-isolation.phpt | 24 + .../phpunit/Tests/TextUI/filter-class.phpt | 23 + .../Tests/TextUI/filter-method-isolation.phpt | 24 + .../phpunit/Tests/TextUI/filter-method.phpt | 23 + .../Tests/TextUI/filter-no-results.phpt | 23 + .../phpunit/Tests/TextUI/group-isolation.phpt | 24 + .../phpunit/phpunit/Tests/TextUI/group.phpt | 23 + .../phpunit/phpunit/Tests/TextUI/help.phpt | 67 + .../phpunit/phpunit/Tests/TextUI/help2.phpt | 68 + .../phpunit/Tests/TextUI/list-groups.phpt | 22 + .../phpunit/Tests/TextUI/log-json.phpt | 77 + .../phpunit/phpunit/Tests/TextUI/log-tap.phpt | 28 + .../phpunit/phpunit/Tests/TextUI/log-xml.phpt | 31 + .../Tests/TextUI/positional-arguments.phpt | 18 + .../Tests/TextUI/strict-incomplete.phpt | 23 + .../Tests/TextUI/strict-isolation.phpt | 24 + .../phpunit/phpunit/Tests/TextUI/strict.phpt | 23 + .../phpunit/phpunit/Tests/TextUI/tap.phpt | 20 + .../Tests/TextUI/test-suffix-multiple.phpt | 22 + .../Tests/TextUI/test-suffix-single.phpt | 22 + .../phpunit/Tests/TextUI/testdox-html.phpt | 23 + .../phpunit/Tests/TextUI/testdox-text.phpt | 27 + .../phpunit/phpunit/Tests/TextUI/testdox.phpt | 21 + .../phpunit/phpunit/Tests/Util/ClassTest.php | 85 + .../phpunit/Tests/Util/ConfigurationTest.php | 335 ++ .../phpunit/phpunit/Tests/Util/DiffTest.php | 269 ++ .../Tests/Util/TestDox/NamePrettifierTest.php | 109 + .../phpunit/phpunit/Tests/Util/TestTest.php | 237 + .../phpunit/phpunit/Tests/Util/TypeTest.php | 270 ++ .../phpunit/phpunit/Tests/Util/XMLTest.php | 324 ++ .../phpunit/Tests/_files/AbstractTest.php | 7 + .../phpunit/phpunit/Tests/_files/Author.php | 67 + .../phpunit/Tests/_files/BankAccount.php | 117 + .../phpunit/Tests/_files/BankAccountTest.php | 134 + .../Tests/_files/BankAccountTest.test.php | 134 + .../phpunit/phpunit/Tests/_files/Book.php | 60 + .../phpunit/Tests/_files/Calculator.php | 14 + .../ChangeCurrentWorkingDirectoryTest.php | 10 + .../_files/ClassWithNonPublicAttributes.php | 29 + .../Tests/_files/ClassWithToString.php | 62 + .../phpunit/Tests/_files/ConcreteTest.my.php | 9 + .../phpunit/Tests/_files/ConcreteTest.php | 9 + .../phpunit/Tests/_files/DataProviderTest.php | 21 + .../Tests/_files/DependencyFailureTest.php | 22 + .../Tests/_files/DependencySuccessTest.php | 21 + .../Tests/_files/DependencyTestSuite.php | 16 + .../phpunit/Tests/_files/DoubleTestCase.php | 25 + .../Tests/_files/EmptyTestCaseTest.php | 4 + .../phpunit/phpunit/Tests/_files/Error.php | 8 + .../ExceptionInAssertPostConditionsTest.php | 35 + .../ExceptionInAssertPreConditionsTest.php | 35 + .../Tests/_files/ExceptionInSetUpTest.php | 35 + .../Tests/_files/ExceptionInTearDownTest.php | 35 + .../phpunit/Tests/_files/ExceptionInTest.php | 35 + .../Tests/_files/ExceptionNamespaceTest.php | 38 + .../phpunit/Tests/_files/ExceptionStack.php | 23 + .../phpunit/Tests/_files/ExceptionTest.php | 97 + .../phpunit/phpunit/Tests/_files/Failure.php | 8 + .../phpunit/Tests/_files/FailureTest.php | 76 + .../phpunit/Tests/_files/FatalTest.php | 10 + .../phpunit/Tests/_files/IncompleteTest.php | 8 + .../Tests/_files/InheritedTestCase.php | 9 + .../Tests/_files/JsonData/arrayObject.js | 1 + .../Tests/_files/JsonData/simpleObject.js | 1 + .../Tests/_files/JsonData/simpleObject2.js | 1 + .../phpunit/Tests/_files/MockRunner.php | 7 + .../Tests/_files/MultiDependencyTest.php | 23 + .../Tests/_files/NoArgTestCaseTest.php | 7 + .../phpunit/Tests/_files/NoTestCaseClass.php | 4 + .../phpunit/Tests/_files/NoTestCases.php | 7 + .../phpunit/Tests/_files/NonStatic.php | 8 + .../Tests/_files/NotPublicTestCase.php | 11 + .../phpunit/Tests/_files/NotVoidTestCase.php | 4 + .../phpunit/Tests/_files/NothingTest.php | 7 + .../phpunit/Tests/_files/OneTestCase.php | 11 + .../phpunit/Tests/_files/OutputTestCase.php | 27 + .../phpunit/Tests/_files/OverrideTestCase.php | 9 + .../_files/RequirementsClassDocBlockTest.php | 23 + .../phpunit/Tests/_files/RequirementsTest.php | 112 + .../phpunit/Tests/_files/SampleClass.php | 14 + .../_files/SelectorAssertionsFixture.html | 44 + .../phpunit/Tests/_files/Singleton.php | 22 + .../phpunit/Tests/_files/StackTest.php | 24 + .../phpunit/phpunit/Tests/_files/Struct.php | 10 + .../phpunit/phpunit/Tests/_files/Success.php | 7 + .../Tests/_files/TemplateMethodsTest.php | 52 + .../phpunit/Tests/_files/TestIterator.php | 36 + .../Tests/_files/ThrowExceptionTestCase.php | 8 + .../Tests/_files/ThrowNoExceptionTestCase.php | 7 + .../phpunit/phpunit/Tests/_files/WasRun.php | 10 + .../phpunit/phpunit/Tests/_files/bar.xml | 1 + .../phpunit/Tests/_files/configuration.xml | 114 + .../Tests/_files/expectedFileFormat.txt | 1 + .../phpunit/phpunit/Tests/_files/foo.xml | 1 + ...uctureAttributesAreSameButValuesAreNot.xml | 10 + .../Tests/_files/structureExpected.xml | 10 + .../Tests/_files/structureIgnoreTextNodes.xml | 13 + .../_files/structureIsSameButDataIsNot.xml | 10 + .../structureWrongNumberOfAttributes.xml | 10 + .../_files/structureWrongNumberOfNodes.xml | 9 + core/vendor/phpunit/phpunit/build.xml | 227 + .../ControlSignatureSniff.php | 23 + .../Whitespace/ConcatenationSpacingSniff.php | 22 + .../phpunit/phpunit/build/PHPCS/ruleset.xml | 35 + .../phpunit/phpunit/build/assertions.php | 65 + .../phpunit/build/phar-autoload.php.in | 34 + core/vendor/phpunit/phpunit/build/phpmd.xml | 27 + core/vendor/phpunit/phpunit/composer.json | 62 + .../phpunit/phpunit/composer/bin/phpunit | 42 + .../phpunit/phpunit/package-composer.json | 33 + core/vendor/phpunit/phpunit/package.xml | 527 +++ core/vendor/phpunit/phpunit/phpdox.xml.dist | 14 + core/vendor/phpunit/phpunit/phpunit.bat | 43 + core/vendor/phpunit/phpunit/phpunit.php | 46 + core/vendor/phpunit/phpunit/phpunit.xml.dist | 42 + core/vendor/phpunit/phpunit/phpunit.xsd | 251 + 603 files changed, 71306 insertions(+), 211 deletions(-) create mode 120000 core/vendor/bin/phpunit create mode 100644 core/vendor/composer/include_paths.php create mode 100644 core/vendor/phpunit/php-code-coverage/.gitattributes create mode 100644 core/vendor/phpunit/php-code-coverage/.gitignore create mode 100644 core/vendor/phpunit/php-code-coverage/.travis.yml create mode 100644 core/vendor/phpunit/php-code-coverage/CONTRIBUTING.md create mode 100644 core/vendor/phpunit/php-code-coverage/ChangeLog.markdown create mode 100644 core/vendor/phpunit/php-code-coverage/LICENSE create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Autoload.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Autoload.php.in create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver/Xdebug.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Exception.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Filter.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Clover.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Factory.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Dashboard.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Directory.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/File.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/coverage_bar.html.dist create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/bootstrap-responsive.min.css create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/bootstrap.min.css create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/style.css create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/dashboard.html.dist create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/directory.html.dist create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/directory_item.html.dist create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/file.html.dist create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/file_item.html.dist create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/img/glyphicons-halflings-white.png create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/img/glyphicons-halflings.png create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/js/bootstrap.min.js create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/js/highcharts.js create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/js/html5shiv.js create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/js/jquery.min.js create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/method_item.html.dist create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Node.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Node/Directory.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Node/File.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Node/Iterator.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/PHP.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Text.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Util.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Util/InvalidArgumentHelper.php create mode 100644 core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Version.php create mode 100644 core/vendor/phpunit/php-code-coverage/README.markdown create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/PHP/CodeCoverage/FilterTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/PHP/CodeCoverage/Report/CloverTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/PHP/CodeCoverage/Report/FactoryTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/PHP/CodeCoverage/UtilTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/PHP/CodeCoverageTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/TestCase.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/BankAccount-clover.xml create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/BankAccount.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/BankAccountTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageClassExtendedTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageClassTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageFunctionTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageMethodOneLineAnnotationTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageMethodTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageNoneTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageNotPrivateTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageNotProtectedTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageNotPublicTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageNothingTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoveragePrivateTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageProtectedTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoveragePublicTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoverageTwoDefaultClassAnnotations.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoveredClass.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/CoveredFunction.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoverageClassExtendedTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoverageClassTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoverageCoversClassPublicTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoverageCoversClassTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoverageMethodTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoverageNotPrivateTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoverageNotProtectedTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoverageNotPublicTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoveragePrivateTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoverageProtectedTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoveragePublicTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NamespaceCoveredClass.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/NotExistingCoveredElementTest.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/ignored-lines-clover.xml create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/source_with_ignore.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/source_with_namespace.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/source_with_oneline_annotations.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/source_without_ignore.php create mode 100644 core/vendor/phpunit/php-code-coverage/Tests/_files/source_without_namespace.php create mode 100644 core/vendor/phpunit/php-code-coverage/build.xml create mode 100644 core/vendor/phpunit/php-code-coverage/build/PHPCS/Sniffs/ControlStructures/ControlSignatureSniff.php create mode 100644 core/vendor/phpunit/php-code-coverage/build/PHPCS/Sniffs/Whitespace/ConcatenationSpacingSniff.php create mode 100644 core/vendor/phpunit/php-code-coverage/build/PHPCS/ruleset.xml create mode 100644 core/vendor/phpunit/php-code-coverage/build/phpmd.xml create mode 100644 core/vendor/phpunit/php-code-coverage/build/travis-ci.xml create mode 100644 core/vendor/phpunit/php-code-coverage/composer.json create mode 100644 core/vendor/phpunit/php-code-coverage/package.xml create mode 100644 core/vendor/phpunit/php-code-coverage/phpunit.xml.dist create mode 100644 core/vendor/phpunit/php-code-coverage/scripts/auto_append.php create mode 100644 core/vendor/phpunit/php-code-coverage/scripts/auto_prepend.php create mode 100644 core/vendor/phpunit/php-file-iterator/.gitattributes create mode 100644 core/vendor/phpunit/php-file-iterator/.gitignore create mode 100644 core/vendor/phpunit/php-file-iterator/ChangeLog.markdown create mode 100644 core/vendor/phpunit/php-file-iterator/File/Iterator.php create mode 100644 core/vendor/phpunit/php-file-iterator/File/Iterator/Autoload.php create mode 100644 core/vendor/phpunit/php-file-iterator/File/Iterator/Autoload.php.in create mode 100644 core/vendor/phpunit/php-file-iterator/File/Iterator/Facade.php create mode 100644 core/vendor/phpunit/php-file-iterator/File/Iterator/Factory.php create mode 100644 core/vendor/phpunit/php-file-iterator/LICENSE create mode 100644 core/vendor/phpunit/php-file-iterator/README.markdown create mode 100644 core/vendor/phpunit/php-file-iterator/build.xml create mode 100644 core/vendor/phpunit/php-file-iterator/build/PHPCS/Sniffs/ControlStructures/ControlSignatureSniff.php create mode 100644 core/vendor/phpunit/php-file-iterator/build/PHPCS/Sniffs/Whitespace/ConcatenationSpacingSniff.php create mode 100644 core/vendor/phpunit/php-file-iterator/build/PHPCS/ruleset.xml create mode 100644 core/vendor/phpunit/php-file-iterator/build/phpmd.xml create mode 100644 core/vendor/phpunit/php-file-iterator/composer.json create mode 100644 core/vendor/phpunit/php-file-iterator/package.xml create mode 100644 core/vendor/phpunit/php-text-template/.gitattributes create mode 100644 core/vendor/phpunit/php-text-template/.gitignore create mode 100644 core/vendor/phpunit/php-text-template/ChangeLog.markdown create mode 100644 core/vendor/phpunit/php-text-template/LICENSE create mode 100644 core/vendor/phpunit/php-text-template/README.markdown create mode 100644 core/vendor/phpunit/php-text-template/Text/Template.php create mode 100644 core/vendor/phpunit/php-text-template/Text/Template/Autoload.php create mode 100644 core/vendor/phpunit/php-text-template/Text/Template/Autoload.php.in create mode 100644 core/vendor/phpunit/php-text-template/build.xml create mode 100644 core/vendor/phpunit/php-text-template/build/PHPCS/Sniffs/ControlStructures/ControlSignatureSniff.php create mode 100644 core/vendor/phpunit/php-text-template/build/PHPCS/Sniffs/Whitespace/ConcatenationSpacingSniff.php create mode 100644 core/vendor/phpunit/php-text-template/build/PHPCS/ruleset.xml create mode 100644 core/vendor/phpunit/php-text-template/build/phpmd.xml create mode 100644 core/vendor/phpunit/php-text-template/composer.json create mode 100644 core/vendor/phpunit/php-text-template/package.xml create mode 100644 core/vendor/phpunit/php-timer/.gitattributes create mode 100644 core/vendor/phpunit/php-timer/.gitignore create mode 100644 core/vendor/phpunit/php-timer/ChangeLog.markdown create mode 100644 core/vendor/phpunit/php-timer/LICENSE create mode 100644 core/vendor/phpunit/php-timer/PHP/Timer.php create mode 100644 core/vendor/phpunit/php-timer/PHP/Timer/Autoload.php create mode 100644 core/vendor/phpunit/php-timer/PHP/Timer/Autoload.php.in create mode 100644 core/vendor/phpunit/php-timer/README.markdown create mode 100644 core/vendor/phpunit/php-timer/Tests/TimerTest.php create mode 100644 core/vendor/phpunit/php-timer/build.xml create mode 100644 core/vendor/phpunit/php-timer/build/PHPCS/Sniffs/ControlStructures/ControlSignatureSniff.php create mode 100644 core/vendor/phpunit/php-timer/build/PHPCS/Sniffs/Whitespace/ConcatenationSpacingSniff.php create mode 100644 core/vendor/phpunit/php-timer/build/PHPCS/ruleset.xml create mode 100644 core/vendor/phpunit/php-timer/build/phpmd.xml create mode 100644 core/vendor/phpunit/php-timer/composer.json create mode 100644 core/vendor/phpunit/php-timer/package.xml create mode 100644 core/vendor/phpunit/php-timer/phpunit.xml.dist create mode 100644 core/vendor/phpunit/php-token-stream/.gitattributes create mode 100644 core/vendor/phpunit/php-token-stream/.gitignore create mode 100644 core/vendor/phpunit/php-token-stream/ChangeLog.markdown create mode 100644 core/vendor/phpunit/php-token-stream/LICENSE create mode 100644 core/vendor/phpunit/php-token-stream/PHP/Token.php create mode 100644 core/vendor/phpunit/php-token-stream/PHP/Token/Stream.php create mode 100644 core/vendor/phpunit/php-token-stream/PHP/Token/Stream/Autoload.php create mode 100644 core/vendor/phpunit/php-token-stream/PHP/Token/Stream/Autoload.php.in create mode 100644 core/vendor/phpunit/php-token-stream/PHP/Token/Stream/CachingFactory.php create mode 100644 core/vendor/phpunit/php-token-stream/README.markdown create mode 100644 core/vendor/phpunit/php-token-stream/Tests/Token/ClassTest.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/Token/ClosureTest.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/Token/FunctionTest.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/Token/IncludeTest.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/Token/InterfaceTest.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/Token/NamespaceTest.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/TokenTest.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/classExtendsNamespacedClass.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/classInNamespace.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/classInScopedNamespace.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/closure.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/issue19.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/multipleNamespacesWithOneClassUsingBraces.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/multipleNamespacesWithOneClassUsingNonBraceSyntax.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/source.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/source2.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/source3.php create mode 100644 core/vendor/phpunit/php-token-stream/Tests/_files/source4.php create mode 100644 core/vendor/phpunit/php-token-stream/build.xml create mode 100644 core/vendor/phpunit/php-token-stream/build/PHPCS/Sniffs/ControlStructures/ControlSignatureSniff.php create mode 100644 core/vendor/phpunit/php-token-stream/build/PHPCS/Sniffs/Whitespace/ConcatenationSpacingSniff.php create mode 100644 core/vendor/phpunit/php-token-stream/build/PHPCS/ruleset.xml create mode 100644 core/vendor/phpunit/php-token-stream/build/phpmd.xml create mode 100644 core/vendor/phpunit/php-token-stream/composer.json create mode 100644 core/vendor/phpunit/php-token-stream/package.xml create mode 100644 core/vendor/phpunit/php-token-stream/phpunit.xml.dist create mode 100644 core/vendor/phpunit/phpunit-mock-objects/.gitattributes create mode 100644 core/vendor/phpunit/phpunit-mock-objects/.gitignore create mode 100644 core/vendor/phpunit/phpunit-mock-objects/.travis.yml create mode 100644 core/vendor/phpunit/phpunit-mock-objects/CONTRIBUTING.md create mode 100644 core/vendor/phpunit/phpunit-mock-objects/ChangeLog.markdown create mode 100644 core/vendor/phpunit/phpunit-mock-objects/LICENSE create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Autoload.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Autoload.php.in create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/Identity.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/InvocationMocker.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/Match.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/MethodNameMatch.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/Namespace.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/ParametersMatch.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/Stub.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator/mocked_class.tpl.dist create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator/mocked_clone.tpl.dist create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator/mocked_object_method.tpl.dist create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator/mocked_static_method.tpl.dist create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator/trait_class.tpl.dist create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator/unmocked_clone.tpl.dist create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator/wsdl_class.tpl.dist create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator/wsdl_method.tpl.dist create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Invocation.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Invocation/Object.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Invocation/Static.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/InvocationMocker.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Invokable.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/AnyInvokedCount.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/AnyParameters.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/Invocation.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/InvokedAtIndex.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/InvokedAtLeastOnce.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/InvokedCount.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/InvokedRecorder.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/MethodName.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/Parameters.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/StatelessInvocation.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/MockBuilder.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/MockObject.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ConsecutiveCalls.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/Exception.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/MatcherCollection.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/Return.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ReturnArgument.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ReturnCallback.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ReturnSelf.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ReturnValueMap.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Verifiable.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/GeneratorTest.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockBuilderTest.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/Invocation/ObjectTest.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/Invocation/StaticTest.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/class.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/class_call_parent_clone.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/class_call_parent_constructor.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/class_dont_call_parent_clone.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/class_dont_call_parent_constructor.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/class_implementing_interface_call_parent_constructor.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/class_implementing_interface_dont_call_parent_constructor.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/class_partial.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/interface.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/invocation_object_clone_object.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/invocation_static_clone_object.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/namespaced_class.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/namespaced_class_call_parent_clone.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/namespaced_class_call_parent_constructor.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/namespaced_class_dont_call_parent_clone.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/namespaced_class_dont_call_parent_constructor.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/namespaced_class_implementing_interface_call_parent_constructor.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/namespaced_class_implementing_interface_dont_call_parent_constructor.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/namespaced_class_partial.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/namespaced_interface.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/nonexistent_class.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/nonexistent_class_with_namespace.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/nonexistent_class_with_namespace_starting_with_separator.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/wsdl_class.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/wsdl_class_namespace.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/wsdl_class_partial.phpt create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/MockObjectTest.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/AbstractMockTestClass.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/AnInterface.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/FunctionCallback.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/GoogleSearch.wsdl create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/MethodCallback.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/MethodCallbackByReference.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/Mockable.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/PartialMockTestClass.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/SomeClass.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/Tests/_files/StaticMockTestClass.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/build.xml create mode 100644 core/vendor/phpunit/phpunit-mock-objects/build/PHPCS/Sniffs/ControlStructures/ControlSignatureSniff.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/build/PHPCS/Sniffs/Whitespace/ConcatenationSpacingSniff.php create mode 100644 core/vendor/phpunit/phpunit-mock-objects/build/PHPCS/ruleset.xml create mode 100644 core/vendor/phpunit/phpunit-mock-objects/build/phpmd.xml create mode 100644 core/vendor/phpunit/phpunit-mock-objects/build/travis-ci.xml create mode 100644 core/vendor/phpunit/phpunit-mock-objects/composer.json create mode 100644 core/vendor/phpunit/phpunit-mock-objects/package.xml create mode 100644 core/vendor/phpunit/phpunit-mock-objects/phpunit.xml.dist create mode 100644 core/vendor/phpunit/phpunit/.gitattributes create mode 100644 core/vendor/phpunit/phpunit/.gitignore create mode 100644 core/vendor/phpunit/phpunit/CONTRIBUTING.md create mode 100644 core/vendor/phpunit/phpunit/ChangeLog.md create mode 100644 core/vendor/phpunit/phpunit/LICENSE create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Autoload.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Autoload.php.in create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Extensions/GroupTestSuite.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Extensions/PhptTestCase.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Extensions/PhptTestCase/Logger.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Extensions/PhptTestSuite.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Extensions/RepeatedTest.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Extensions/TestDecorator.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Extensions/TicketListener.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Assert.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Assert/Functions.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Assert/Functions.php.in create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/AssertionFailedError.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/Array.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/DOMDocument.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/Double.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/Exception.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/MockObject.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/Numeric.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/Object.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/Resource.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/Scalar.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/SplObjectStorage.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Comparator/Type.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/ComparatorFactory.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/ComparisonFailure.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/And.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/ArrayHasKey.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/Attribute.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/Callback.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/ClassHasAttribute.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/ClassHasStaticAttribute.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/Composite.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/Count.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/Exception.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/ExceptionCode.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/ExceptionMessage.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/FileExists.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/GreaterThan.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/IsAnything.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/IsEmpty.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/IsEqual.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/IsFalse.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/IsIdentical.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/IsInstanceOf.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/IsNull.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/IsTrue.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/IsType.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/JsonMatches.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/JsonMatches/ErrorMessageProvider.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/LessThan.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/Not.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/ObjectHasAttribute.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/Or.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/PCREMatch.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/SameSize.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/StringContains.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/StringEndsWith.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/StringMatches.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/StringStartsWith.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/TraversableContains.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/TraversableContainsOnly.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Constraint/Xor.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Error.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Error/Deprecated.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Error/Notice.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Error/Warning.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Exception.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/ExpectationFailedException.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/IncompleteTest.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/IncompleteTestError.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/OutputError.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Process/TestCaseMethod.tpl.dist create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/SelfDescribing.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/SkippedTest.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/SkippedTestError.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/SkippedTestSuiteError.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/SyntheticError.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Test.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/TestCase.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/TestFailure.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/TestListener.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/TestResult.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/TestSuite.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/TestSuite/DataProvider.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Framework/Warning.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Runner/BaseTestRunner.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Runner/StandardTestSuiteLoader.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Runner/TestSuiteLoader.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Runner/Version.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/TextUI/Command.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/TextUI/ResultPrinter.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/TextUI/TestRunner.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Class.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Configuration.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/DeprecatedFeature.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/DeprecatedFeature/Logger.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Diff.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/ErrorHandler.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Fileloader.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Filesystem.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Filter.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Getopt.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/GlobalState.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/InvalidArgumentHelper.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Log/JSON.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Log/JUnit.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Log/TAP.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/PHP.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/PHP/Default.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/PHP/Windows.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Printer.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/String.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Test.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/TestDox/NamePrettifier.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/TestDox/ResultPrinter.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/TestDox/ResultPrinter/HTML.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/TestDox/ResultPrinter/Text.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/TestSuiteIterator.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/Type.php create mode 100644 core/vendor/phpunit/phpunit/PHPUnit/Util/XML.php create mode 100644 core/vendor/phpunit/phpunit/README.md create mode 100644 core/vendor/phpunit/phpunit/Tests/Extensions/RepeatedTestTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Framework/AssertTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Framework/ComparatorTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Framework/Constraint/JsonMatches/ErrorMessageProviderTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Framework/Constraint/JsonMatchesTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Framework/ConstraintTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Framework/SuiteTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Framework/TestCaseTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Framework/TestImplementorTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Framework/TestListenerTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/1021.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/1021/Issue1021Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/523.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/523/Issue523Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/578.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/578/Issue578Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/684.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/684/Issue684Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/783.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/783/ChildSuite.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/783/OneTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/783/ParentSuite.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/783/TwoTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/244.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/244/Issue244Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/322.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/322/Issue322Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/322/phpunit322.xml create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/433.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/433/Issue433Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/445.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/445/Issue445Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/503.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/503/Issue503Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/581.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/581/Issue581Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/74.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/74/Issue74Test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Regression/GitHub/74/NewException.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Runner/BaseTestRunnerTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/abstract-test-class.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/concrete-test-class.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/dataprovider-log-xml-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/dataprovider-log-xml.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/dataprovider-testdox.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/debug.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/default-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/default.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/dependencies-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/dependencies.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/dependencies2-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/dependencies2.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/dependencies3-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/dependencies3.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/empty-testcase.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/exception-stack.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/exclude-group-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/exclude-group.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/failure-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/failure.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/fatal-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/fatal.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/filter-class-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/filter-class.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/filter-method-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/filter-method.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/filter-no-results.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/group-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/group.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/help.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/help2.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/list-groups.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/log-json.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/log-tap.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/log-xml.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/positional-arguments.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/strict-incomplete.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/strict-isolation.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/strict.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/tap.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/test-suffix-multiple.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/test-suffix-single.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/testdox-html.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/testdox-text.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/TextUI/testdox.phpt create mode 100644 core/vendor/phpunit/phpunit/Tests/Util/ClassTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Util/ConfigurationTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Util/DiffTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Util/TestDox/NamePrettifierTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Util/TestTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Util/TypeTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/Util/XMLTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/AbstractTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/Author.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/BankAccount.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/BankAccountTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/BankAccountTest.test.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/Book.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/Calculator.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ChangeCurrentWorkingDirectoryTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ClassWithNonPublicAttributes.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ClassWithToString.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ConcreteTest.my.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ConcreteTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/DataProviderTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/DependencyFailureTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/DependencySuccessTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/DependencyTestSuite.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/DoubleTestCase.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/EmptyTestCaseTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/Error.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ExceptionInAssertPostConditionsTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ExceptionInAssertPreConditionsTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ExceptionInSetUpTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ExceptionInTearDownTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ExceptionInTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ExceptionNamespaceTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ExceptionStack.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ExceptionTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/Failure.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/FailureTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/FatalTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/IncompleteTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/InheritedTestCase.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/JsonData/arrayObject.js create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/JsonData/simpleObject.js create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/JsonData/simpleObject2.js create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/MockRunner.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/MultiDependencyTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/NoArgTestCaseTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/NoTestCaseClass.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/NoTestCases.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/NonStatic.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/NotPublicTestCase.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/NotVoidTestCase.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/NothingTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/OneTestCase.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/OutputTestCase.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/OverrideTestCase.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/RequirementsClassDocBlockTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/RequirementsTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/SampleClass.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/SelectorAssertionsFixture.html create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/Singleton.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/StackTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/Struct.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/Success.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/TemplateMethodsTest.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/TestIterator.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ThrowExceptionTestCase.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/ThrowNoExceptionTestCase.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/WasRun.php create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/bar.xml create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/configuration.xml create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/expectedFileFormat.txt create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/foo.xml create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/structureAttributesAreSameButValuesAreNot.xml create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/structureExpected.xml create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/structureIgnoreTextNodes.xml create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/structureIsSameButDataIsNot.xml create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/structureWrongNumberOfAttributes.xml create mode 100644 core/vendor/phpunit/phpunit/Tests/_files/structureWrongNumberOfNodes.xml create mode 100644 core/vendor/phpunit/phpunit/build.xml create mode 100644 core/vendor/phpunit/phpunit/build/PHPCS/Sniffs/ControlStructures/ControlSignatureSniff.php create mode 100644 core/vendor/phpunit/phpunit/build/PHPCS/Sniffs/Whitespace/ConcatenationSpacingSniff.php create mode 100644 core/vendor/phpunit/phpunit/build/PHPCS/ruleset.xml create mode 100644 core/vendor/phpunit/phpunit/build/assertions.php create mode 100644 core/vendor/phpunit/phpunit/build/phar-autoload.php.in create mode 100644 core/vendor/phpunit/phpunit/build/phpmd.xml create mode 100644 core/vendor/phpunit/phpunit/composer.json create mode 100755 core/vendor/phpunit/phpunit/composer/bin/phpunit create mode 100644 core/vendor/phpunit/phpunit/package-composer.json create mode 100644 core/vendor/phpunit/phpunit/package.xml create mode 100644 core/vendor/phpunit/phpunit/phpdox.xml.dist create mode 100644 core/vendor/phpunit/phpunit/phpunit.bat create mode 100644 core/vendor/phpunit/phpunit/phpunit.php create mode 100644 core/vendor/phpunit/phpunit/phpunit.xml.dist create mode 100644 core/vendor/phpunit/phpunit/phpunit.xsd diff --git a/core/composer.json b/core/composer.json index ac904800010..4a109a2d5a0 100644 --- a/core/composer.json +++ b/core/composer.json @@ -2,6 +2,11 @@ "name": "drupal/drupal", "description": "Drupal is an open source content management platform powering millions of websites and applications.", "license": "GPL-2.0+", + "repositories": [{ + "type": "vcs", + "url": "https://github.com/msonnabaum/phpunit.git" + } + ], "require": { "symfony/class-loader": "2.2.0-BETA2", "symfony/dependency-injection": "2.2.0-BETA2", @@ -17,7 +22,8 @@ "guzzle/http": "3.1.0", "kriswallsmith/assetic": "1.1.0-alpha1", "symfony-cmf/routing": "dev-master#ea4a10", - "easyrdf/easyrdf": "0.8.0-beta.1" + "easyrdf/easyrdf": "0.8.0-beta.1", + "phpunit/phpunit": "3.7 as dev-3.7" }, "minimum-stability": "dev" } diff --git a/core/composer.lock b/core/composer.lock index 6709d12ebb0..8715a8ee11f 100644 --- a/core/composer.lock +++ b/core/composer.lock @@ -1,5 +1,5 @@ { - "hash": "ab5b183002f04155958ac5b57ed29032", + "hash": "a8c56a3549ec70f775e4bf795e65a993", "packages": [ { "name": "doctrine/common", @@ -63,11 +63,11 @@ "description": "Common Library for Doctrine projects", "homepage": "http://www.doctrine-project.org", "keywords": [ - "collections", - "spl", - "eventmanager", "annotations", - "persistence" + "collections", + "eventmanager", + "persistence", + "spl" ] }, { @@ -92,8 +92,8 @@ }, "require-dev": { "phpunit/phpunit": ">=3.5.15", - "squizlabs/php_codesniffer": ">=1.4.3", - "sami/sami": "dev-master" + "sami/sami": "dev-master", + "squizlabs/php_codesniffer": ">=1.4.3" }, "time": "2013-01-18 15:54:28", "type": "library", @@ -117,11 +117,11 @@ "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.", "homepage": "http://www.easyrdf.org/", "keywords": [ - "rdfa", + "Linked Data", "RDF", "Semantic Web", "Turtle", - "Linked Data" + "rdfa" ] }, { @@ -162,10 +162,10 @@ "description": "Common libraries used by Guzzle", "homepage": "http://guzzlephp.org/", "keywords": [ - "event", - "exception", + "collection", "common", - "collection" + "event", + "exception" ] }, { @@ -184,11 +184,11 @@ "shasum": "" }, "require": { - "php": ">=5.3.2", "ext-curl": "*", "guzzle/common": "self.version", "guzzle/parser": "self.version", - "guzzle/stream": "self.version" + "guzzle/stream": "self.version", + "php": ">=5.3.2" }, "time": "2013-01-13 05:09:32", "type": "library", @@ -216,11 +216,11 @@ "description": "HTTP libraries used by Guzzle", "homepage": "http://guzzlephp.org/", "keywords": [ + "Guzzle", + "client", "curl", "http", - "http client", - "client", - "Guzzle" + "http client" ] }, { @@ -260,11 +260,11 @@ "description": "Interchangeable parsers used by Guzzle", "homepage": "http://guzzlephp.org/", "keywords": [ - "http", - "url", - "message", + "URI Template", "cookie", - "URI Template" + "http", + "message", + "url" ] }, { @@ -283,8 +283,8 @@ "shasum": "" }, "require": { - "php": ">=5.3.2", - "guzzle/common": "self.version" + "guzzle/common": "self.version", + "php": ">=5.3.2" }, "time": "2012-12-07 16:45:11", "type": "library", @@ -312,9 +312,9 @@ "description": "Guzzle stream wrapper component", "homepage": "http://guzzlephp.org/", "keywords": [ - "stream", "Guzzle", - "component" + "component", + "stream" ] }, { @@ -336,16 +336,16 @@ "symfony/process": "2.1.*" }, "require-dev": { - "twig/twig": ">=1.6.0,<2.0", "leafo/lessphp": "*", "leafo/scssphp": "*", - "ptachoire/cssembed": "*" + "ptachoire/cssembed": "*", + "twig/twig": ">=1.6.0,<2.0" }, "suggest": { - "twig/twig": "Assetic provides the integration with the Twig templating engine", "leafo/lessphp": "Assetic provides the integration with the lessphp LESS compiler", "leafo/scssphp": "Assetic provides the integration with the scssphp SCSS compiler", - "ptachoire/cssembed": "Assetic provides the integration with phpcssembed to embed data uris" + "ptachoire/cssembed": "Assetic provides the integration with phpcssembed to embed data uris", + "twig/twig": "Assetic provides the integration with the Twig templating engine" }, "time": "2012-08-28 05:33:44", "type": "library", @@ -378,6 +378,361 @@ "minification" ] }, + { + "name": "phpunit/php-code-coverage", + "version": "1.2.x-dev", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-code-coverage.git", + "reference": "fa8ba7588bdaa48b93cd60629273ee6b9699b280" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/fa8ba7588bdaa48b93cd60629273ee6b9699b280", + "reference": "fa8ba7588bdaa48b93cd60629273ee6b9699b280", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "phpunit/php-file-iterator": ">=1.3.0@stable", + "phpunit/php-text-template": ">=1.1.1@stable", + "phpunit/php-token-stream": ">=1.1.3@stable" + }, + "suggest": { + "ext-dom": "*", + "ext-xdebug": ">=2.0.5" + }, + "time": "2013-02-12 10:55:13", + "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": "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" + ] + }, + { + "name": "phpunit/php-file-iterator", + "version": "dev-master", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "2deb24c65ea78e126daa8d45b2089ddc29ec1d26" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/2deb24c65ea78e126daa8d45b2089ddc29ec1d26", + "reference": "2deb24c65ea78e126daa8d45b2089ddc29ec1d26", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "time": "2013-01-07 10:47:05", + "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" + ] + }, + { + "name": "phpunit/php-text-template", + "version": "dev-master", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-text-template.git", + "reference": "1eeef106193d2f8c539728e566bb4793071a9e18" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/1eeef106193d2f8c539728e566bb4793071a9e18", + "reference": "1eeef106193d2f8c539728e566bb4793071a9e18", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "time": "2013-01-07 10:56:17", + "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" + ] + }, + { + "name": "phpunit/php-timer", + "version": "1.0.x-dev", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-timer.git", + "reference": "ecf7920b27003a9412b07dad79dbb5ad1249e6c3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/ecf7920b27003a9412b07dad79dbb5ad1249e6c3", + "reference": "ecf7920b27003a9412b07dad79dbb5ad1249e6c3", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "time": "2013-01-30 06:08:51", + "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" + ] + }, + { + "name": "phpunit/php-token-stream", + "version": "dev-master", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-token-stream.git", + "reference": "c25dd88e1592e66dee2553c99ef244203d5a1b98" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/c25dd88e1592e66dee2553c99ef244203d5a1b98", + "reference": "c25dd88e1592e66dee2553c99ef244203d5a1b98", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=5.3.3" + }, + "time": "2013-01-07 10:56:35", + "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": "Wrapper around PHP's tokenizer extension.", + "homepage": "https://github.com/sebastianbergmann/php-token-stream/", + "keywords": [ + "tokenizer" + ] + }, + { + "name": "phpunit/phpunit", + "version": "3.7.0", + "source": { + "type": "git", + "url": "https://github.com/msonnabaum/phpunit.git", + "reference": "3.7.0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/msonnabaum/phpunit/zipball/3.7.0", + "reference": "3.7.0", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-pcre": "*", + "ext-reflection": "*", + "ext-spl": "*", + "php": ">=5.3.3", + "phpunit/php-code-coverage": ">=1.2.0@stable", + "phpunit/php-file-iterator": ">=1.3.1@stable", + "phpunit/php-text-template": ">=1.1.1@stable", + "phpunit/php-timer": ">=1.0.2@stable", + "phpunit/phpunit-mock-objects": ">=1.2.0@stable", + "symfony/yaml": ">=2.1.0@stable" + }, + "suggest": { + "ext-json": "*", + "ext-simplexml": "*", + "ext-tokenizer": "*", + "phpunit/php-invoker": ">=1.1.0@stable" + }, + "time": "2012-09-19 05:07:48", + "bin": [ + "composer/bin/phpunit" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.7.x-dev" + } + }, + "autoload": { + "files": [ + "PHPUnit/Autoload.php" + ] + }, + "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" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit/issues", + "irc": "irc://irc.freenode.net/phpunit", + "source": "https://github.com/msonnabaum/phpunit/tree/3.7.0" + } + }, + { + "name": "phpunit/phpunit-mock-objects", + "version": "1.2.x-dev", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/phpunit-mock-objects.git", + "reference": "d49b5683200b5db9b1c64cb06f52f50d147891c4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/d49b5683200b5db9b1c64cb06f52f50d147891c4", + "reference": "d49b5683200b5db9b1c64cb06f52f50d147891c4", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "phpunit/php-text-template": ">=1.1.1@stable" + }, + "suggest": { + "ext-soap": "*" + }, + "time": "2013-02-05 07:46:41", + "type": "library", + "autoload": { + "classmap": [ + "PHPUnit/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "include-path": [ + "" + ], + "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" + ] + }, { "name": "psr/log", "version": "1.0.0", @@ -433,8 +788,8 @@ }, "require": { "php": ">=5.3.2", - "symfony/routing": ">=2.1,<2.3-dev", - "symfony/http-kernel": ">=2.1,<2.3-dev" + "symfony/http-kernel": ">=2.1,<2.3-dev", + "symfony/routing": ">=2.1,<2.3-dev" }, "time": "2013-01-21 20:33:16", "type": "library", @@ -534,12 +889,12 @@ "php": ">=5.3.3" }, "require-dev": { - "symfony/yaml": "2.2.*", - "symfony/config": "2.2.*" + "symfony/config": "2.2.*", + "symfony/yaml": "2.2.*" }, "suggest": { - "symfony/yaml": "2.2.*", - "symfony/config": "2.2.*" + "symfony/config": "2.2.*", + "symfony/yaml": "2.2.*" }, "time": "2013-01-23 20:21:00", "type": "library", @@ -691,9 +1046,9 @@ }, "require": { "php": ">=5.3.3", + "psr/log": ">=1.0,<2.0", "symfony/event-dispatcher": "2.2.*", - "symfony/http-foundation": "2.2.*", - "psr/log": ">=1.0,<2.0" + "symfony/http-foundation": "2.2.*" }, "require-dev": { "symfony/browser-kit": "2.2.*", @@ -804,16 +1159,16 @@ "php": ">=5.3.3" }, "require-dev": { - "symfony/config": "2.2.*", - "symfony/yaml": "2.2.*", - "symfony/http-kernel": "2.2.*", "doctrine/common": ">=2.2,<2.4-dev", - "psr/log": ">=1.0,<2.0" + "psr/log": ">=1.0,<2.0", + "symfony/config": "2.2.*", + "symfony/http-kernel": "2.2.*", + "symfony/yaml": "2.2.*" }, "suggest": { + "doctrine/common": ">=2.2,<2.4-dev", "symfony/config": "2.2.*", - "symfony/yaml": "2.2.*", - "doctrine/common": ">=2.2,<2.4-dev" + "symfony/yaml": "2.2.*" }, "time": "2013-01-21 16:57:32", "type": "library", @@ -898,26 +1253,26 @@ "source": { "type": "git", "url": "https://github.com/symfony/Translation", - "reference": "v2.2.0-BETA2" + "reference": "v2.2.0-RC2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Translation/zipball/v2.2.0-BETA2", - "reference": "v2.2.0-BETA2", + "url": "https://api.github.com/repos/symfony/Translation/zipball/v2.2.0-RC2", + "reference": "v2.2.0-RC2", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "symfony/config": "2.2.*", - "symfony/yaml": "2.2.*" + "symfony/config": ">=2.0,<2.3-dev", + "symfony/yaml": ">=2.2,<3.0" }, "suggest": { "symfony/config": "2.2.*", "symfony/yaml": "2.2.*" }, - "time": "2013-01-17 15:25:59", + "time": "2013-02-08 16:10:57", "type": "library", "extra": { "branch-alias": { @@ -966,16 +1321,16 @@ "symfony/translation": "2.2.*" }, "require-dev": { + "symfony/config": "2.2.*", "symfony/http-foundation": "2.2.*", "symfony/locale": "2.2.*", - "symfony/yaml": "2.2.*", - "symfony/config": "2.2.*" + "symfony/yaml": "2.2.*" }, "suggest": { "doctrine/common": ">=2.1,<2.4-dev", + "symfony/config": "2.2.*", "symfony/http-foundation": "2.2.*", - "symfony/yaml": "2.2.*", - "symfony/config": "2.2.*" + "symfony/yaml": "2.2.*" }, "time": "2013-01-21 16:57:12", "type": "library", @@ -1105,7 +1460,12 @@ ], "packages-dev": null, "aliases": [ - + { + "alias": "dev-3.7", + "alias_normalized": "dev-3.7", + "version": "3.7.0.0", + "package": "phpunit/phpunit" + } ], "minimum-stability": "dev", "stability-flags": { diff --git a/core/vendor/autoload.php b/core/vendor/autoload.php index 299fea1dd55..5a49ae75b5f 100644 --- a/core/vendor/autoload.php +++ b/core/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer' . '/autoload_real.php'; -return ComposerAutoloaderInitf05567eba27abe19ce0204f90ff18248::getLoader(); +return ComposerAutoloaderInit481bddffaf22b51d159ec1b257c2bd7f::getLoader(); diff --git a/core/vendor/bin/phpunit b/core/vendor/bin/phpunit new file mode 120000 index 00000000000..d284b32d0c5 --- /dev/null +++ b/core/vendor/bin/phpunit @@ -0,0 +1 @@ +../phpunit/phpunit/composer/bin/phpunit \ No newline at end of file diff --git a/core/vendor/composer/autoload_classmap.php b/core/vendor/composer/autoload_classmap.php index 590381a3be5..413ca785558 100644 --- a/core/vendor/composer/autoload_classmap.php +++ b/core/vendor/composer/autoload_classmap.php @@ -6,5 +6,229 @@ $vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); return array( + 'File_Iterator' => $baseDir . '/vendor/phpunit/php-file-iterator/File/Iterator.php', + 'File_Iterator_Facade' => $baseDir . '/vendor/phpunit/php-file-iterator/File/Iterator/Facade.php', + 'File_Iterator_Factory' => $baseDir . '/vendor/phpunit/php-file-iterator/File/Iterator/Factory.php', + 'PHPUnit_Framework_MockObject_Builder_Identity' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/Identity.php', + 'PHPUnit_Framework_MockObject_Builder_InvocationMocker' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/InvocationMocker.php', + 'PHPUnit_Framework_MockObject_Builder_Match' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/Match.php', + 'PHPUnit_Framework_MockObject_Builder_MethodNameMatch' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/MethodNameMatch.php', + 'PHPUnit_Framework_MockObject_Builder_Namespace' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/Namespace.php', + 'PHPUnit_Framework_MockObject_Builder_ParametersMatch' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/ParametersMatch.php', + 'PHPUnit_Framework_MockObject_Builder_Stub' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Builder/Stub.php', + 'PHPUnit_Framework_MockObject_Generator' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator.php', + 'PHPUnit_Framework_MockObject_Invocation' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Invocation.php', + 'PHPUnit_Framework_MockObject_InvocationMocker' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/InvocationMocker.php', + 'PHPUnit_Framework_MockObject_Invocation_Object' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Invocation/Object.php', + 'PHPUnit_Framework_MockObject_Invocation_Static' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Invocation/Static.php', + 'PHPUnit_Framework_MockObject_Invokable' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Invokable.php', + 'PHPUnit_Framework_MockObject_Matcher' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher.php', + 'PHPUnit_Framework_MockObject_Matcher_AnyInvokedCount' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/AnyInvokedCount.php', + 'PHPUnit_Framework_MockObject_Matcher_AnyParameters' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/AnyParameters.php', + 'PHPUnit_Framework_MockObject_Matcher_Invocation' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/Invocation.php', + 'PHPUnit_Framework_MockObject_Matcher_InvokedAtIndex' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/InvokedAtIndex.php', + 'PHPUnit_Framework_MockObject_Matcher_InvokedAtLeastOnce' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/InvokedAtLeastOnce.php', + 'PHPUnit_Framework_MockObject_Matcher_InvokedCount' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/InvokedCount.php', + 'PHPUnit_Framework_MockObject_Matcher_InvokedRecorder' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/InvokedRecorder.php', + 'PHPUnit_Framework_MockObject_Matcher_MethodName' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/MethodName.php', + 'PHPUnit_Framework_MockObject_Matcher_Parameters' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/Parameters.php', + 'PHPUnit_Framework_MockObject_Matcher_StatelessInvocation' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Matcher/StatelessInvocation.php', + 'PHPUnit_Framework_MockObject_MockBuilder' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/MockBuilder.php', + 'PHPUnit_Framework_MockObject_MockObject' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/MockObject.php', + 'PHPUnit_Framework_MockObject_Stub' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub.php', + 'PHPUnit_Framework_MockObject_Stub_ConsecutiveCalls' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ConsecutiveCalls.php', + 'PHPUnit_Framework_MockObject_Stub_Exception' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/Exception.php', + 'PHPUnit_Framework_MockObject_Stub_MatcherCollection' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/MatcherCollection.php', + 'PHPUnit_Framework_MockObject_Stub_Return' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/Return.php', + 'PHPUnit_Framework_MockObject_Stub_ReturnArgument' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ReturnArgument.php', + 'PHPUnit_Framework_MockObject_Stub_ReturnCallback' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ReturnCallback.php', + 'PHPUnit_Framework_MockObject_Stub_ReturnSelf' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ReturnSelf.php', + 'PHPUnit_Framework_MockObject_Stub_ReturnValueMap' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Stub/ReturnValueMap.php', + 'PHPUnit_Framework_MockObject_Verifiable' => $baseDir . '/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Verifiable.php', + 'PHP_CodeCoverage' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage.php', + 'PHP_CodeCoverage_Driver' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver.php', + 'PHP_CodeCoverage_Driver_Xdebug' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver/Xdebug.php', + 'PHP_CodeCoverage_Exception' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Exception.php', + 'PHP_CodeCoverage_Filter' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Filter.php', + 'PHP_CodeCoverage_Report_Clover' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Clover.php', + 'PHP_CodeCoverage_Report_Factory' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Factory.php', + 'PHP_CodeCoverage_Report_HTML' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML.php', + 'PHP_CodeCoverage_Report_HTML_Renderer' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer.php', + 'PHP_CodeCoverage_Report_HTML_Renderer_Dashboard' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Dashboard.php', + 'PHP_CodeCoverage_Report_HTML_Renderer_Directory' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Directory.php', + 'PHP_CodeCoverage_Report_HTML_Renderer_File' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/File.php', + 'PHP_CodeCoverage_Report_Node' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Node.php', + 'PHP_CodeCoverage_Report_Node_Directory' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Node/Directory.php', + 'PHP_CodeCoverage_Report_Node_File' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Node/File.php', + 'PHP_CodeCoverage_Report_Node_Iterator' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Node/Iterator.php', + 'PHP_CodeCoverage_Report_PHP' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/PHP.php', + 'PHP_CodeCoverage_Report_Text' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Text.php', + 'PHP_CodeCoverage_Util' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Util.php', + 'PHP_CodeCoverage_Util_InvalidArgumentHelper' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Util/InvalidArgumentHelper.php', + 'PHP_CodeCoverage_Version' => $baseDir . '/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Version.php', + 'PHP_Timer' => $baseDir . '/vendor/phpunit/php-timer/PHP/Timer.php', + 'PHP_Token' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_TokenWithScope' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_TokenWithScopeAndVisibility' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ABSTRACT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_AMPERSAND' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_AND_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ARRAY' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ARRAY_CAST' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_AS' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_AT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_BACKTICK' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_BAD_CHARACTER' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_BOOLEAN_AND' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_BOOLEAN_OR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_BOOL_CAST' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_BREAK' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CALLABLE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CARET' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CASE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CATCH' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CHARACTER' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CLASS' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CLASS_C' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CLONE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CLOSE_BRACKET' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CLOSE_CURLY' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CLOSE_SQUARE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CLOSE_TAG' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_COLON' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_COMMA' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_COMMENT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CONCAT_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CONST' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CONSTANT_ENCAPSED_STRING' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CONTINUE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_CURLY_OPEN' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DEC' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DECLARE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DEFAULT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DIR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DIV' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DIV_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DNUMBER' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DO' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DOC_COMMENT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DOLLAR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DOLLAR_OPEN_CURLY_BRACES' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DOT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DOUBLE_ARROW' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DOUBLE_CAST' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DOUBLE_COLON' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_DOUBLE_QUOTES' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ECHO' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ELSE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ELSEIF' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_EMPTY' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ENCAPSED_AND_WHITESPACE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ENDDECLARE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ENDFOR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ENDFOREACH' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ENDIF' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ENDSWITCH' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ENDWHILE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_END_HEREDOC' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_EVAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_EXCLAMATION_MARK' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_EXIT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_EXTENDS' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_FILE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_FINAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_FOR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_FOREACH' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_FUNCTION' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_FUNC_C' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_GLOBAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_GOTO' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_GT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_HALT_COMPILER' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_IF' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_IMPLEMENTS' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_INC' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_INCLUDE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_INCLUDE_ONCE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_INLINE_HTML' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_INSTANCEOF' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_INSTEADOF' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_INTERFACE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_INT_CAST' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_ISSET' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_IS_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_IS_GREATER_OR_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_IS_IDENTICAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_IS_NOT_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_IS_NOT_IDENTICAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_IS_SMALLER_OR_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_Includes' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_LINE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_LIST' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_LNUMBER' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_LOGICAL_AND' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_LOGICAL_OR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_LOGICAL_XOR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_LT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_METHOD_C' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_MINUS' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_MINUS_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_MOD_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_MULT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_MUL_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_NAMESPACE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_NEW' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_NS_C' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_NS_SEPARATOR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_NUM_STRING' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_OBJECT_CAST' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_OBJECT_OPERATOR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_OPEN_BRACKET' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_OPEN_CURLY' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_OPEN_SQUARE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_OPEN_TAG' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_OPEN_TAG_WITH_ECHO' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_OR_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_PAAMAYIM_NEKUDOTAYIM' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_PERCENT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_PIPE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_PLUS' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_PLUS_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_PRINT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_PRIVATE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_PROTECTED' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_PUBLIC' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_QUESTION_MARK' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_REQUIRE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_REQUIRE_ONCE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_RETURN' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_SEMICOLON' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_SL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_SL_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_SR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_SR_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_START_HEREDOC' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_STATIC' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_STRING' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_STRING_CAST' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_STRING_VARNAME' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_SWITCH' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_Stream' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token/Stream.php', + 'PHP_Token_Stream_CachingFactory' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token/Stream/CachingFactory.php', + 'PHP_Token_THROW' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_TILDE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_TRAIT' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_TRAIT_C' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_TRY' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_UNSET' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_UNSET_CAST' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_USE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_VAR' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_VARIABLE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_WHILE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_WHITESPACE' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', + 'PHP_Token_XOR_EQUAL' => $baseDir . '/vendor/phpunit/php-token-stream/PHP/Token.php', 'SessionHandlerInterface' => $baseDir . '/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Resources/stubs/SessionHandlerInterface.php', + 'Text_Template' => $baseDir . '/vendor/phpunit/php-text-template/Text/Template.php', ); diff --git a/core/vendor/composer/autoload_real.php b/core/vendor/composer/autoload_real.php index b67069eff28..24c4d513248 100644 --- a/core/vendor/composer/autoload_real.php +++ b/core/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php generated by Composer -class ComposerAutoloaderInitf05567eba27abe19ce0204f90ff18248 +class ComposerAutoloaderInit481bddffaf22b51d159ec1b257c2bd7f { private static $loader; @@ -19,13 +19,17 @@ class ComposerAutoloaderInitf05567eba27abe19ce0204f90ff18248 return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInitf05567eba27abe19ce0204f90ff18248', 'loadClassLoader')); + spl_autoload_register(array('ComposerAutoloaderInit481bddffaf22b51d159ec1b257c2bd7f', 'loadClassLoader')); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInitf05567eba27abe19ce0204f90ff18248', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit481bddffaf22b51d159ec1b257c2bd7f', 'loadClassLoader')); $vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); + $includePaths = require __DIR__ . '/include_paths.php'; + array_push($includePaths, get_include_path()); + set_include_path(join(PATH_SEPARATOR, $includePaths)); + $map = require __DIR__ . '/autoload_namespaces.php'; foreach ($map as $namespace => $path) { $loader->add($namespace, $path); @@ -38,6 +42,8 @@ class ComposerAutoloaderInitf05567eba27abe19ce0204f90ff18248 $loader->register(true); + require $vendorDir . '/phpunit/phpunit/PHPUnit/Autoload.php'; + return $loader; } } diff --git a/core/vendor/composer/include_paths.php b/core/vendor/composer/include_paths.php new file mode 100644 index 00000000000..533f1c8e319 --- /dev/null +++ b/core/vendor/composer/include_paths.php @@ -0,0 +1,17 @@ +=1.6.0,<2.0", "leafo/lessphp": "*", "leafo/scssphp": "*", - "ptachoire/cssembed": "*" + "ptachoire/cssembed": "*", + "twig/twig": ">=1.6.0,<2.0" }, "suggest": { - "twig/twig": "Assetic provides the integration with the Twig templating engine", "leafo/lessphp": "Assetic provides the integration with the lessphp LESS compiler", "leafo/scssphp": "Assetic provides the integration with the scssphp SCSS compiler", - "ptachoire/cssembed": "Assetic provides the integration with phpcssembed to embed data uris" + "ptachoire/cssembed": "Assetic provides the integration with phpcssembed to embed data uris", + "twig/twig": "Assetic provides the integration with the Twig templating engine" }, "time": "2012-08-28 05:33:44", "type": "library", @@ -394,9 +394,9 @@ }, "require": { "php": ">=5.3.3", + "psr/log": ">=1.0,<2.0", "symfony/event-dispatcher": "2.2.*", - "symfony/http-foundation": "2.2.*", - "psr/log": ">=1.0,<2.0" + "symfony/http-foundation": "2.2.*" }, "require-dev": { "symfony/browser-kit": "2.2.*", @@ -467,16 +467,16 @@ "php": ">=5.3.3" }, "require-dev": { - "symfony/config": "2.2.*", - "symfony/yaml": "2.2.*", - "symfony/http-kernel": "2.2.*", "doctrine/common": ">=2.2,<2.4-dev", - "psr/log": ">=1.0,<2.0" + "psr/log": ">=1.0,<2.0", + "symfony/config": "2.2.*", + "symfony/http-kernel": "2.2.*", + "symfony/yaml": "2.2.*" }, "suggest": { + "doctrine/common": ">=2.2,<2.4-dev", "symfony/config": "2.2.*", - "symfony/yaml": "2.2.*", - "doctrine/common": ">=2.2,<2.4-dev" + "symfony/yaml": "2.2.*" }, "time": "2013-01-21 16:57:32", "type": "library", @@ -508,57 +508,6 @@ "description": "Symfony Routing Component", "homepage": "http://symfony.com" }, - { - "name": "symfony-cmf/routing", - "version": "dev-master", - "version_normalized": "9999999-dev", - "target-dir": "Symfony/Cmf/Component/Routing", - "source": { - "type": "git", - "url": "https://github.com/symfony-cmf/Routing", - "reference": "ea4a10" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/72df1da07b3c4edf16df169fb7987f504070fe0d", - "reference": "ea4a10", - "shasum": "" - }, - "require": { - "php": ">=5.3.2", - "symfony/routing": ">=2.1,<2.3-dev", - "symfony/http-kernel": ">=2.1,<2.3-dev" - }, - "time": "2013-01-24 16:09:01", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "installation-source": "source", - "autoload": { - "psr-0": { - "Symfony\\Cmf\\Component\\Routing": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony CMF Community", - "homepage": "https://github.com/symfony-cmf/Routing/contributors" - } - ], - "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers", - "homepage": "http://cmf.symfony.com", - "keywords": [ - "database", - "routing" - ] - }, { "name": "easyrdf/easyrdf", "version": "0.8.0-beta.1", @@ -582,8 +531,8 @@ }, "require-dev": { "phpunit/phpunit": ">=3.5.15", - "squizlabs/php_codesniffer": ">=1.4.3", - "sami/sami": "dev-master" + "sami/sami": "dev-master", + "squizlabs/php_codesniffer": ">=1.4.3" }, "time": "2013-01-18 15:54:28", "type": "library", @@ -608,11 +557,11 @@ "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.", "homepage": "http://www.easyrdf.org/", "keywords": [ - "rdfa", + "Linked Data", "RDF", "Semantic Web", "Turtle", - "Linked Data" + "rdfa" ] }, { @@ -716,63 +665,6 @@ "description": "Symfony Yaml Component", "homepage": "http://symfony.com" }, - { - "name": "symfony/translation", - "version": "2.2.x-dev", - "version_normalized": "2.2.9999999.9999999-dev", - "target-dir": "Symfony/Component/Translation", - "source": { - "type": "git", - "url": "https://github.com/symfony/Translation", - "reference": "v2.2.0-BETA2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Translation/zipball/v2.2.0-BETA2", - "reference": "v2.2.0-BETA2", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/config": "2.2.*", - "symfony/yaml": "2.2.*" - }, - "suggest": { - "symfony/config": "2.2.*", - "symfony/yaml": "2.2.*" - }, - "time": "2013-01-17 15:25:59", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "installation-source": "source", - "autoload": { - "psr-0": { - "Symfony\\Component\\Translation\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony Translation Component", - "homepage": "http://symfony.com" - }, { "name": "symfony/validator", "version": "v2.2.0-BETA2", @@ -794,16 +686,16 @@ "symfony/translation": "2.2.*" }, "require-dev": { + "symfony/config": "2.2.*", "symfony/http-foundation": "2.2.*", "symfony/locale": "2.2.*", - "symfony/yaml": "2.2.*", - "symfony/config": "2.2.*" + "symfony/yaml": "2.2.*" }, "suggest": { "doctrine/common": ">=2.1,<2.4-dev", + "symfony/config": "2.2.*", "symfony/http-foundation": "2.2.*", - "symfony/yaml": "2.2.*", - "symfony/config": "2.2.*" + "symfony/yaml": "2.2.*" }, "time": "2013-01-21 16:57:12", "type": "library", @@ -904,12 +796,12 @@ "php": ">=5.3.3" }, "require-dev": { - "symfony/yaml": "2.2.*", - "symfony/config": "2.2.*" + "symfony/config": "2.2.*", + "symfony/yaml": "2.2.*" }, "suggest": { - "symfony/yaml": "2.2.*", - "symfony/config": "2.2.*" + "symfony/config": "2.2.*", + "symfony/yaml": "2.2.*" }, "time": "2013-01-23 20:21:00", "type": "library", @@ -981,10 +873,10 @@ "description": "Common libraries used by Guzzle", "homepage": "http://guzzlephp.org/", "keywords": [ - "event", - "exception", + "collection", "common", - "collection" + "event", + "exception" ] }, { @@ -1004,8 +896,8 @@ "shasum": "" }, "require": { - "php": ">=5.3.2", - "guzzle/common": "self.version" + "guzzle/common": "self.version", + "php": ">=5.3.2" }, "time": "2012-12-07 16:45:11", "type": "library", @@ -1034,9 +926,9 @@ "description": "Guzzle stream wrapper component", "homepage": "http://guzzlephp.org/", "keywords": [ - "stream", "Guzzle", - "component" + "component", + "stream" ] }, { @@ -1078,11 +970,11 @@ "description": "Interchangeable parsers used by Guzzle", "homepage": "http://guzzlephp.org/", "keywords": [ - "http", - "url", - "message", + "URI Template", "cookie", - "URI Template" + "http", + "message", + "url" ] }, { @@ -1102,11 +994,11 @@ "shasum": "" }, "require": { - "php": ">=5.3.2", "ext-curl": "*", "guzzle/common": "self.version", "guzzle/parser": "self.version", - "guzzle/stream": "self.version" + "guzzle/stream": "self.version", + "php": ">=5.3.2" }, "time": "2013-01-13 05:09:32", "type": "library", @@ -1135,11 +1027,488 @@ "description": "HTTP libraries used by Guzzle", "homepage": "http://guzzlephp.org/", "keywords": [ + "Guzzle", + "client", "curl", "http", - "http client", - "client", - "Guzzle" + "http client" + ] + }, + { + "name": "symfony/translation", + "version": "2.2.x-dev", + "version_normalized": "2.2.9999999.9999999-dev", + "target-dir": "Symfony/Component/Translation", + "source": { + "type": "git", + "url": "https://github.com/symfony/Translation", + "reference": "v2.2.0-RC2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Translation/zipball/v2.2.0-RC2", + "reference": "v2.2.0-RC2", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "symfony/config": ">=2.0,<2.3-dev", + "symfony/yaml": ">=2.2,<3.0" + }, + "suggest": { + "symfony/config": "2.2.*", + "symfony/yaml": "2.2.*" + }, + "time": "2013-02-08 16:10:57", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2-dev" + } + }, + "installation-source": "source", + "autoload": { + "psr-0": { + "Symfony\\Component\\Translation\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + } + ], + "description": "Symfony Translation Component", + "homepage": "http://symfony.com" + }, + { + "name": "phpunit/php-text-template", + "version": "dev-master", + "version_normalized": "9999999-dev", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-text-template.git", + "reference": "1eeef106193d2f8c539728e566bb4793071a9e18" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/1eeef106193d2f8c539728e566bb4793071a9e18", + "reference": "1eeef106193d2f8c539728e566bb4793071a9e18", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "time": "2013-01-07 10:56:17", + "type": "library", + "installation-source": "source", + "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" + ] + }, + { + "name": "phpunit/phpunit-mock-objects", + "version": "1.2.x-dev", + "version_normalized": "1.2.9999999.9999999-dev", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/phpunit-mock-objects.git", + "reference": "d49b5683200b5db9b1c64cb06f52f50d147891c4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/d49b5683200b5db9b1c64cb06f52f50d147891c4", + "reference": "d49b5683200b5db9b1c64cb06f52f50d147891c4", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "phpunit/php-text-template": ">=1.1.1@stable" + }, + "suggest": { + "ext-soap": "*" + }, + "time": "2013-02-05 07:46:41", + "type": "library", + "installation-source": "source", + "autoload": { + "classmap": [ + "PHPUnit/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "include-path": [ + "" + ], + "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" + ] + }, + { + "name": "phpunit/php-timer", + "version": "1.0.x-dev", + "version_normalized": "1.0.9999999.9999999-dev", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-timer.git", + "reference": "ecf7920b27003a9412b07dad79dbb5ad1249e6c3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/ecf7920b27003a9412b07dad79dbb5ad1249e6c3", + "reference": "ecf7920b27003a9412b07dad79dbb5ad1249e6c3", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "time": "2013-01-30 06:08:51", + "type": "library", + "installation-source": "source", + "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" + ] + }, + { + "name": "phpunit/php-token-stream", + "version": "dev-master", + "version_normalized": "9999999-dev", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-token-stream.git", + "reference": "c25dd88e1592e66dee2553c99ef244203d5a1b98" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/c25dd88e1592e66dee2553c99ef244203d5a1b98", + "reference": "c25dd88e1592e66dee2553c99ef244203d5a1b98", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=5.3.3" + }, + "time": "2013-01-07 10:56:35", + "type": "library", + "installation-source": "source", + "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": "Wrapper around PHP's tokenizer extension.", + "homepage": "https://github.com/sebastianbergmann/php-token-stream/", + "keywords": [ + "tokenizer" + ] + }, + { + "name": "phpunit/php-file-iterator", + "version": "dev-master", + "version_normalized": "9999999-dev", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "2deb24c65ea78e126daa8d45b2089ddc29ec1d26" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/2deb24c65ea78e126daa8d45b2089ddc29ec1d26", + "reference": "2deb24c65ea78e126daa8d45b2089ddc29ec1d26", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "time": "2013-01-07 10:47:05", + "type": "library", + "installation-source": "source", + "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" + ] + }, + { + "name": "phpunit/php-code-coverage", + "version": "1.2.x-dev", + "version_normalized": "1.2.9999999.9999999-dev", + "source": { + "type": "git", + "url": "git://github.com/sebastianbergmann/php-code-coverage.git", + "reference": "fa8ba7588bdaa48b93cd60629273ee6b9699b280" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/fa8ba7588bdaa48b93cd60629273ee6b9699b280", + "reference": "fa8ba7588bdaa48b93cd60629273ee6b9699b280", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "phpunit/php-file-iterator": ">=1.3.0@stable", + "phpunit/php-text-template": ">=1.1.1@stable", + "phpunit/php-token-stream": ">=1.1.3@stable" + }, + "suggest": { + "ext-dom": "*", + "ext-xdebug": ">=2.0.5" + }, + "time": "2013-02-12 10:55:13", + "type": "library", + "installation-source": "source", + "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": "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" + ] + }, + { + "name": "phpunit/phpunit", + "version": "3.7.0", + "version_normalized": "3.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/msonnabaum/phpunit.git", + "reference": "3.7.0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/msonnabaum/phpunit/zipball/3.7.0", + "reference": "3.7.0", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-pcre": "*", + "ext-reflection": "*", + "ext-spl": "*", + "php": ">=5.3.3", + "phpunit/php-code-coverage": ">=1.2.0@stable", + "phpunit/php-file-iterator": ">=1.3.1@stable", + "phpunit/php-text-template": ">=1.1.1@stable", + "phpunit/php-timer": ">=1.0.2@stable", + "phpunit/phpunit-mock-objects": ">=1.2.0@stable", + "symfony/yaml": ">=2.1.0@stable" + }, + "suggest": { + "ext-json": "*", + "ext-simplexml": "*", + "ext-tokenizer": "*", + "phpunit/php-invoker": ">=1.1.0@stable" + }, + "time": "2012-09-19 05:07:48", + "bin": [ + "composer/bin/phpunit" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.7.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "PHPUnit/Autoload.php" + ] + }, + "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" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit/issues", + "irc": "irc://irc.freenode.net/phpunit", + "source": "https://github.com/msonnabaum/phpunit/tree/3.7.0" + } + }, + { + "name": "symfony-cmf/routing", + "version": "dev-master", + "version_normalized": "9999999-dev", + "target-dir": "Symfony/Cmf/Component/Routing", + "source": { + "type": "git", + "url": "https://github.com/symfony-cmf/Routing", + "reference": "ea4a10" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/72df1da07b3c4edf16df169fb7987f504070fe0d", + "reference": "ea4a10", + "shasum": "" + }, + "require": { + "php": ">=5.3.2", + "symfony/http-kernel": ">=2.1,<2.3-dev", + "symfony/routing": ">=2.1,<2.3-dev" + }, + "time": "2013-01-24 16:09:01", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "installation-source": "source", + "autoload": { + "psr-0": { + "Symfony\\Cmf\\Component\\Routing": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Symfony CMF Community", + "homepage": "https://github.com/symfony-cmf/Routing/contributors" + } + ], + "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers", + "homepage": "http://cmf.symfony.com", + "keywords": [ + "database", + "routing" ] } ] diff --git a/core/vendor/phpunit/php-code-coverage/.gitattributes b/core/vendor/phpunit/php-code-coverage/.gitattributes new file mode 100644 index 00000000000..461090b7ecc --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/.gitattributes @@ -0,0 +1 @@ +*.php diff=php diff --git a/core/vendor/phpunit/php-code-coverage/.gitignore b/core/vendor/phpunit/php-code-coverage/.gitignore new file mode 100644 index 00000000000..a7419836bf1 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/.gitignore @@ -0,0 +1,7 @@ +build/api +build/code-browser +build/coverage +build/logs +build/pdepend +cache.properties +phpunit.xml diff --git a/core/vendor/phpunit/php-code-coverage/.travis.yml b/core/vendor/phpunit/php-code-coverage/.travis.yml new file mode 100644 index 00000000000..397c8be4505 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/.travis.yml @@ -0,0 +1,22 @@ +language: php + +php: + - 5.3 + - 5.4 + +before_script: + - mkdir -p vendor/SebastianBergmann + - git clone --branch=3.7 --depth=100 --quiet git://github.com/sebastianbergmann/phpunit.git vendor/phpunit + - git clone --branch=1.2 --depth=100 --quiet git://github.com/sebastianbergmann/phpunit-mock-objects.git vendor/phpunit-mock-objects + - git clone --branch=master --depth=100 --quiet git://github.com/sebastianbergmann/php-text-template.git vendor/php-text-template + - git clone --branch=master --depth=100 --quiet git://github.com/sebastianbergmann/php-token-stream.git vendor/php-token-stream + - git clone --branch=master --depth=100 --quiet git://github.com/sebastianbergmann/php-file-iterator.git vendor/php-file-iterator + - git clone --branch=master --depth=100 --quiet git://github.com/sebastianbergmann/php-timer.git vendor/php-timer + - git clone --branch=master --depth=100 --quiet git://github.com/pear/pear-core.git vendor/pear-core + - git clone --branch=trunk --depth=100 --quiet git://github.com/pear/Console_Getopt.git vendor/console-getopt + +script: php -d include_path=vendor/php-text-template:vendor/php-token-stream:vendor/php-file-iterator:vendor/phpunit:vendor/phpunit-mock-objects:vendor/php-timer:vendor/php-invoker:vendor/pear-core:vendor/console-getopt:vendor:. ./vendor/phpunit/phpunit.php --configuration ./build/travis-ci.xml + +notifications: + email: false + irc: "irc.freenode.org#phpunit" diff --git a/core/vendor/phpunit/php-code-coverage/CONTRIBUTING.md b/core/vendor/phpunit/php-code-coverage/CONTRIBUTING.md new file mode 100644 index 00000000000..b2905398264 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/CONTRIBUTING.md @@ -0,0 +1,5 @@ +Pull Requests for bug fixes should be made against the current release branch (1.2). + +Pull Requests for new features should be made against master. + +For further notes please refer to [https://github.com/sebastianbergmann/phpunit/blob/master/CONTRIBUTING.md](https://github.com/sebastianbergmann/phpunit/blob/master/CONTRIBUTING.md) diff --git a/core/vendor/phpunit/php-code-coverage/ChangeLog.markdown b/core/vendor/phpunit/php-code-coverage/ChangeLog.markdown new file mode 100644 index 00000000000..273fa0381dc --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/ChangeLog.markdown @@ -0,0 +1,55 @@ +PHP_CodeCoverage 1.2 +==================== + +This is the list of changes for the PHP_CodeCoverage 1.2 release series. + +PHP_CodeCoverage 1.2.7 +---------------------- + +* The `html5shiv.js` is now bundled. +* Fixed sebastianbergmann/phpunit#702: `@coversNothing` didn't work as documented. + +PHP_CodeCoverage 1.2.6 +---------------------- + +* Fixed #126: `E_NOTICE` thrown when generating coverage report. + +PHP_CodeCoverage 1.2.5 +---------------------- + +* Fixed regression introduced in PHP_CodeCoverage 1.2.4. + +PHP_CodeCoverage 1.2.4 +---------------------- + +* Fixed #123: Incorrect code coverage for interfaces. + +PHP_CodeCoverage 1.2.3 +---------------------- + +* Implemented #116: Do not rely on autoloader class map to populate blacklist. +* Added support for parentheses after method names in the `@covers` annotation. +* When `addUncoveredFilesFromWhitelist=FALSE` is set then files that are whitelisted but not covered by a single test are now excluded from the code coverage. +* Fixed #81: Non-english locales broke the coverage bars in the HTML report. +* Fixed #118: Percentage for tested classes and traits displayed incorrectly. +* Fixed #121: One line `@covers` annotations did not work. + +PHP_CodeCoverage 1.2.2 +---------------------- + +* Fixed #115: Backwards compatibility wrapper for `trait_exists()` does not work. + +PHP_CodeCoverage 1.2.1 +---------------------- + +* Fixed invalid markup in the HTML report. +* The version number is now displayed when using PHP_CodeCoverage from a Composer install or Git checkout. + +PHP_CodeCoverage 1.2.0 +---------------------- + +* The HTML report has been redesigned. +* The new `@coversDefaultClass` annotation enables short `@covers` annotations when working with long class names or namespaces. +* The new `@coversNothing` annotation can be used so tests do not record any code coverage. Useful for integration testing. +* When `processUncoveredFilesFromWhitelist=FALSE` is set then files that are whitelisted but not covered by a single test are now included in the code coverage but with all lines, including those that are not executable, counted as not executed. +* PHP_CodeCoverage 1.2 is only supported on PHP 5.3.3 (or later) and PHP 5.4.7 (or later) is highly recommended. diff --git a/core/vendor/phpunit/php-code-coverage/LICENSE b/core/vendor/phpunit/php-code-coverage/LICENSE new file mode 100644 index 00000000000..95d18222fe1 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/LICENSE @@ -0,0 +1,33 @@ +PHP_CodeCoverage + +Copyright (c) 2009-2013, Sebastian Bergmann . +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + * Neither the name of Sebastian Bergmann nor the names of his + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage.php new file mode 100644 index 00000000000..7f051f29711 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage.php @@ -0,0 +1,801 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.0.0 + */ + +// @codeCoverageIgnoreStart +// @codingStandardsIgnoreStart +/** + * @SuppressWarnings(PHPMD) + */ +if (!function_exists('trait_exists')) { + function trait_exists($name) + { + return FALSE; + } +} +// @codingStandardsIgnoreEnd +// @codeCoverageIgnoreEnd + +/** + * Provides collection functionality for PHP code coverage information. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.0.0 + */ +class PHP_CodeCoverage +{ + /** + * @var PHP_CodeCoverage_Driver + */ + protected $driver; + + /** + * @var PHP_CodeCoverage_Filter + */ + protected $filter; + + /** + * @var boolean + */ + protected $cacheTokens = FALSE; + + /** + * @var boolean + */ + protected $forceCoversAnnotation = FALSE; + + /** + * @var boolean + */ + protected $mapTestClassNameToCoveredClassName = FALSE; + + /** + * @var boolean + */ + protected $addUncoveredFilesFromWhitelist = TRUE; + + /** + * @var boolean + */ + protected $processUncoveredFilesFromWhitelist = FALSE; + + /** + * @var mixed + */ + protected $currentId; + + /** + * Code coverage data. + * + * @var array + */ + protected $data = array(); + + /** + * Test data. + * + * @var array + */ + protected $tests = array(); + + /** + * Constructor. + * + * @param PHP_CodeCoverage_Driver $driver + * @param PHP_CodeCoverage_Filter $filter + */ + public function __construct(PHP_CodeCoverage_Driver $driver = NULL, PHP_CodeCoverage_Filter $filter = NULL) + { + if ($driver === NULL) { + $driver = new PHP_CodeCoverage_Driver_Xdebug; + } + + if ($filter === NULL) { + $filter = new PHP_CodeCoverage_Filter; + } + + $this->driver = $driver; + $this->filter = $filter; + } + + /** + * Returns the PHP_CodeCoverage_Report_Node_* object graph + * for this PHP_CodeCoverage object. + * + * @return PHP_CodeCoverage_Report_Node_Directory + * @since Method available since Release 1.1.0 + */ + public function getReport() + { + $factory = new PHP_CodeCoverage_Report_Factory; + + return $factory->create($this); + } + + /** + * Clears collected code coverage data. + */ + public function clear() + { + $this->currentId = NULL; + $this->data = array(); + $this->tests = array(); + } + + /** + * Returns the PHP_CodeCoverage_Filter used. + * + * @return PHP_CodeCoverage_Filter + */ + public function filter() + { + return $this->filter; + } + + /** + * Returns the collected code coverage data. + * + * @return array + * @since Method available since Release 1.1.0 + */ + public function getData() + { + if ($this->addUncoveredFilesFromWhitelist) { + $this->addUncoveredFilesFromWhitelist(); + } + + // We need to apply the blacklist filter a second time + // when no whitelist is used. + if (!$this->filter->hasWhitelist()) { + $this->applyListsFilter($this->data); + } + + return $this->data; + } + + /** + * Returns the test data. + * + * @return array + * @since Method available since Release 1.1.0 + */ + public function getTests() + { + return $this->tests; + } + + /** + * Start collection of code coverage information. + * + * @param mixed $id + * @param boolean $clear + * @throws PHP_CodeCoverage_Exception + */ + public function start($id, $clear = FALSE) + { + if (!is_bool($clear)) { + throw PHP_CodeCoverage_Util_InvalidArgumentHelper::factory( + 1, 'boolean' + ); + } + + if ($clear) { + $this->clear(); + } + + $this->currentId = $id; + + $this->driver->start(); + } + + /** + * Stop collection of code coverage information. + * + * @param boolean $append + * @return array + * @throws PHP_CodeCoverage_Exception + */ + public function stop($append = TRUE) + { + if (!is_bool($append)) { + throw PHP_CodeCoverage_Util_InvalidArgumentHelper::factory( + 1, 'boolean' + ); + } + + $data = $this->driver->stop(); + $this->append($data, NULL, $append); + + $this->currentId = NULL; + + return $data; + } + + /** + * Appends code coverage data. + * + * @param array $data + * @param mixed $id + * @param boolean $append + */ + public function append(array $data, $id = NULL, $append = TRUE) + { + if ($id === NULL) { + $id = $this->currentId; + } + + if ($id === NULL) { + throw new PHP_CodeCoverage_Exception; + } + + $this->applyListsFilter($data); + $this->initializeFilesThatAreSeenTheFirstTime($data); + + if (!$append) { + return; + } + + if ($id != 'UNCOVERED_FILES_FROM_WHITELIST') { + $this->applyCoversAnnotationFilter($data, $id); + } + + if (empty($data)) { + return; + } + + $status = NULL; + + if ($id instanceof PHPUnit_Framework_TestCase) { + $status = $id->getStatus(); + $id = get_class($id) . '::' . $id->getName(); + } + + else if ($id instanceof PHPUnit_Extensions_PhptTestCase) { + $id = $id->getName(); + } + + $this->tests[$id] = $status; + + foreach ($data as $file => $lines) { + if (!$this->filter->isFile($file)) { + continue; + } + + foreach ($lines as $k => $v) { + if ($v == 1) { + $this->data[$file][$k][] = $id; + } + } + } + } + + /** + * Merges the data from another instance of PHP_CodeCoverage. + * + * @param PHP_CodeCoverage $that + */ + public function merge(PHP_CodeCoverage $that) + { + foreach ($that->data as $file => $lines) { + if (!isset($this->data[$file])) { + if (!$this->filter->isFiltered($file)) { + $this->data[$file] = $lines; + } + + continue; + } + + foreach ($lines as $line => $data) { + if ($data !== NULL) { + if (!isset($this->data[$file][$line])) { + $this->data[$file][$line] = $data; + } else { + $this->data[$file][$line] = array_unique( + array_merge($this->data[$file][$line], $data) + ); + } + } + } + } + + $this->tests = array_merge($this->tests, $that->getTests()); + } + + /** + * @param boolean $flag + * @throws PHP_CodeCoverage_Exception + * @since Method available since Release 1.1.0 + */ + public function setCacheTokens($flag) + { + if (!is_bool($flag)) { + throw PHP_CodeCoverage_Util_InvalidArgumentHelper::factory( + 1, 'boolean' + ); + } + + $this->cacheTokens = $flag; + } + + /** + * @param boolean $flag + * @since Method available since Release 1.1.0 + */ + public function getCacheTokens() + { + return $this->cacheTokens; + } + + /** + * @param boolean $flag + * @throws PHP_CodeCoverage_Exception + */ + public function setForceCoversAnnotation($flag) + { + if (!is_bool($flag)) { + throw PHP_CodeCoverage_Util_InvalidArgumentHelper::factory( + 1, 'boolean' + ); + } + + $this->forceCoversAnnotation = $flag; + } + + /** + * @param boolean $flag + * @throws PHP_CodeCoverage_Exception + */ + public function setMapTestClassNameToCoveredClassName($flag) + { + if (!is_bool($flag)) { + throw PHP_CodeCoverage_Util_InvalidArgumentHelper::factory( + 1, 'boolean' + ); + } + + $this->mapTestClassNameToCoveredClassName = $flag; + } + + /** + * @param boolean $flag + * @throws PHP_CodeCoverage_Exception + */ + public function setAddUncoveredFilesFromWhitelist($flag) + { + if (!is_bool($flag)) { + throw PHP_CodeCoverage_Util_InvalidArgumentHelper::factory( + 1, 'boolean' + ); + } + + $this->addUncoveredFilesFromWhitelist = $flag; + } + + /** + * @param boolean $flag + * @throws PHP_CodeCoverage_Exception + */ + public function setProcessUncoveredFilesFromWhitelist($flag) + { + if (!is_bool($flag)) { + throw PHP_CodeCoverage_Util_InvalidArgumentHelper::factory( + 1, 'boolean' + ); + } + + $this->processUncoveredFilesFromWhitelist = $flag; + } + + /** + * Applies the @covers annotation filtering. + * + * @param array $data + * @param mixed $id + */ + protected function applyCoversAnnotationFilter(&$data, $id) + { + if ($id instanceof PHPUnit_Framework_TestCase) { + $testClassName = get_class($id); + $linesToBeCovered = $this->getLinesToBeCovered( + $testClassName, $id->getName() + ); + + if ($linesToBeCovered === FALSE) { + $data = array(); + return; + } + + if ($this->mapTestClassNameToCoveredClassName && + empty($linesToBeCovered)) { + $testedClass = substr($testClassName, 0, -4); + + if (class_exists($testedClass)) { + $class = new ReflectionClass($testedClass); + + $linesToBeCovered = array( + $class->getFileName() => range( + $class->getStartLine(), $class->getEndLine() + ) + ); + } + } + } else { + $linesToBeCovered = array(); + } + + if (!empty($linesToBeCovered)) { + $data = array_intersect_key($data, $linesToBeCovered); + + foreach (array_keys($data) as $filename) { + $data[$filename] = array_intersect_key( + $data[$filename], array_flip($linesToBeCovered[$filename]) + ); + } + } + + else if ($this->forceCoversAnnotation) { + $data = array(); + } + } + + /** + * Applies the blacklist/whitelist filtering. + * + * @param array $data + */ + protected function applyListsFilter(&$data) + { + foreach (array_keys($data) as $filename) { + if ($this->filter->isFiltered($filename)) { + unset($data[$filename]); + } + } + } + + /** + * @since Method available since Release 1.1.0 + */ + protected function initializeFilesThatAreSeenTheFirstTime($data) + { + foreach ($data as $file => $lines) { + if ($this->filter->isFile($file) && !isset($this->data[$file])) { + $this->data[$file] = array(); + + foreach ($lines as $k => $v) { + $this->data[$file][$k] = $v == -2 ? NULL : array(); + } + } + } + } + + /** + * Processes whitelisted files that are not covered. + */ + protected function addUncoveredFilesFromWhitelist() + { + $data = array(); + $uncoveredFiles = array_diff( + $this->filter->getWhitelist(), array_keys($this->data) + ); + + foreach ($uncoveredFiles as $uncoveredFile) { + if (!file_exists($uncoveredFile)) { + continue; + } + + if ($this->processUncoveredFilesFromWhitelist) { + $this->processUncoveredFileFromWhitelist( + $uncoveredFile, $data, $uncoveredFiles + ); + } else { + $data[$uncoveredFile] = array(); + + $lines = count(file($uncoveredFile)); + + for ($i = 1; $i <= $lines; $i++) { + $data[$uncoveredFile][$i] = -1; + } + } + } + + $this->append($data, 'UNCOVERED_FILES_FROM_WHITELIST'); + } + + /** + * @param string $uncoveredFile + * @param array $data + * @param array $uncoveredFiles + */ + protected function processUncoveredFileFromWhitelist($uncoveredFile, array &$data, array $uncoveredFiles) + { + $this->driver->start(); + include_once $uncoveredFile; + $coverage = $this->driver->stop(); + + foreach ($coverage as $file => $fileCoverage) { + if (!isset($data[$file]) && + in_array($file, $uncoveredFiles)) { + foreach (array_keys($fileCoverage) as $key) { + if ($fileCoverage[$key] == 1) { + $fileCoverage[$key] = -1; + } + } + + $data[$file] = $fileCoverage; + } + } + } + + /** + * Returns the files and lines a test method wants to cover. + * + * @param string $className + * @param string $methodName + * @return array + * @since Method available since Release 1.2.0 + */ + protected function getLinesToBeCovered($className, $methodName) + { + $codeToCoverList = array(); + $result = array(); + + // @codeCoverageIgnoreStart + if (($pos = strpos($methodName, ' ')) !== FALSE) { + $methodName = substr($methodName, 0, $pos); + } + // @codeCoverageIgnoreEnd + + $class = new ReflectionClass($className); + + try { + $method = new ReflectionMethod($className, $methodName); + } + + catch (ReflectionException $e) { + return array(); + } + + $docComment = substr($class->getDocComment(), 3, -2) . PHP_EOL . substr($method->getDocComment(), 3, -2); + + $templateMethods = array( + 'setUp', 'assertPreConditions', 'assertPostConditions', 'tearDown' + ); + + foreach ($templateMethods as $templateMethod) { + if ($class->hasMethod($templateMethod)) { + $reflector = $class->getMethod($templateMethod); + $docComment .= PHP_EOL . substr($reflector->getDocComment(), 3, -2); + unset($reflector); + } + } + + if (strpos($docComment, '@coversNothing') !== FALSE) { + return FALSE; + } + + $classShortcut = preg_match_all( + '(@coversDefaultClass\s+(?P.*?)\s*$)m', + $class->getDocComment(), + $matches + ); + + if ($classShortcut) { + if ($classShortcut > 1) { + throw new PHP_CodeCoverage_Exception( + sprintf( + 'More than one @coversClass annotation in class or interface "%s".', + $className + ) + ); + } + + $classShortcut = $matches['coveredClass'][0]; + } + + $match = preg_match_all( + '(@covers\s+(?P.*?)\s*(\(\s*\))?\s*$)m', + $docComment, + $matches + ); + + if ($match) { + foreach ($matches['coveredElement'] as $coveredElement) { + if ($classShortcut && strncmp($coveredElement, '::', 2) === 0) { + $coveredElement = $classShortcut . $coveredElement; + } + + $codeToCoverList = array_merge( + $codeToCoverList, + $this->resolveCoversToReflectionObjects($coveredElement) + ); + } + + foreach ($codeToCoverList as $codeToCover) { + $fileName = $codeToCover->getFileName(); + + if (!isset($result[$fileName])) { + $result[$fileName] = array(); + } + + $result[$fileName] = array_unique( + array_merge( + $result[$fileName], + range( + $codeToCover->getStartLine(), $codeToCover->getEndLine() + ) + ) + ); + } + } + + return $result; + } + + /** + * @param string $coveredElement + * @return array + * @since Method available since Release 1.2.0 + */ + protected function resolveCoversToReflectionObjects($coveredElement) + { + $codeToCoverList = array(); + + if (strpos($coveredElement, '::') !== FALSE) { + list($className, $methodName) = explode('::', $coveredElement); + + if (isset($methodName[0]) && $methodName[0] == '<') { + $classes = array($className); + + foreach ($classes as $className) { + if (!class_exists($className) && + !interface_exists($className)) { + throw new PHP_CodeCoverage_Exception( + sprintf( + 'Trying to @cover not existing class or ' . + 'interface "%s".', + $className + ) + ); + } + + $class = new ReflectionClass($className); + $methods = $class->getMethods(); + $inverse = isset($methodName[1]) && $methodName[1] == '!'; + + if (strpos($methodName, 'protected')) { + $visibility = 'isProtected'; + } + + else if (strpos($methodName, 'private')) { + $visibility = 'isPrivate'; + } + + else if (strpos($methodName, 'public')) { + $visibility = 'isPublic'; + } + + foreach ($methods as $method) { + if ($inverse && !$method->$visibility()) { + $codeToCoverList[] = $method; + } + + else if (!$inverse && $method->$visibility()) { + $codeToCoverList[] = $method; + } + } + } + } else { + $classes = array($className); + + foreach ($classes as $className) { + if ($className == '' && function_exists($methodName)) { + $codeToCoverList[] = new ReflectionFunction( + $methodName + ); + } else { + if (!((class_exists($className) || + interface_exists($className) || + trait_exists($className)) && + method_exists($className, $methodName))) { + throw new PHP_CodeCoverage_Exception( + sprintf( + 'Trying to @cover not existing method "%s::%s".', + $className, + $methodName + ) + ); + } + + $codeToCoverList[] = new ReflectionMethod( + $className, $methodName + ); + } + } + } + } else { + $extended = FALSE; + + if (strpos($coveredElement, '') !== FALSE) { + $coveredElement = str_replace( + '', '', $coveredElement + ); + + $extended = TRUE; + } + + $classes = array($coveredElement); + + if ($extended) { + $classes = array_merge( + $classes, + class_implements($coveredElement), + class_parents($coveredElement) + ); + } + + foreach ($classes as $className) { + if (!class_exists($className) && + !interface_exists($className) && + !trait_exists($className)) { + throw new PHP_CodeCoverage_Exception( + sprintf( + 'Trying to @cover not existing class or ' . + 'interface "%s".', + $className + ) + ); + } + + $codeToCoverList[] = new ReflectionClass($className); + } + } + + return $codeToCoverList; + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Autoload.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Autoload.php new file mode 100644 index 00000000000..32891403f63 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Autoload.php @@ -0,0 +1,90 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2010 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.1.0 + */ + +require_once 'File/Iterator/Autoload.php'; +require_once 'PHP/Token/Stream/Autoload.php'; +require_once 'Text/Template/Autoload.php'; + +spl_autoload_register( + function ($class) + { + static $classes = NULL; + static $path = NULL; + + if ($classes === NULL) { + $classes = array( + 'php_codecoverage' => '/CodeCoverage.php', + 'php_codecoverage_driver' => '/CodeCoverage/Driver.php', + 'php_codecoverage_driver_xdebug' => '/CodeCoverage/Driver/Xdebug.php', + 'php_codecoverage_exception' => '/CodeCoverage/Exception.php', + 'php_codecoverage_filter' => '/CodeCoverage/Filter.php', + 'php_codecoverage_report_clover' => '/CodeCoverage/Report/Clover.php', + 'php_codecoverage_report_factory' => '/CodeCoverage/Report/Factory.php', + 'php_codecoverage_report_html' => '/CodeCoverage/Report/HTML.php', + 'php_codecoverage_report_html_renderer' => '/CodeCoverage/Report/HTML/Renderer.php', + 'php_codecoverage_report_html_renderer_dashboard' => '/CodeCoverage/Report/HTML/Renderer/Dashboard.php', + 'php_codecoverage_report_html_renderer_directory' => '/CodeCoverage/Report/HTML/Renderer/Directory.php', + 'php_codecoverage_report_html_renderer_file' => '/CodeCoverage/Report/HTML/Renderer/File.php', + 'php_codecoverage_report_node' => '/CodeCoverage/Report/Node.php', + 'php_codecoverage_report_node_directory' => '/CodeCoverage/Report/Node/Directory.php', + 'php_codecoverage_report_node_file' => '/CodeCoverage/Report/Node/File.php', + 'php_codecoverage_report_node_iterator' => '/CodeCoverage/Report/Node/Iterator.php', + 'php_codecoverage_report_php' => '/CodeCoverage/Report/PHP.php', + 'php_codecoverage_report_text' => '/CodeCoverage/Report/Text.php', + 'php_codecoverage_util' => '/CodeCoverage/Util.php', + 'php_codecoverage_util_invalidargumenthelper' => '/CodeCoverage/Util/InvalidArgumentHelper.php', + 'php_codecoverage_version' => '/CodeCoverage/Version.php' + ); + + $path = dirname(dirname(__FILE__)); + } + + $cn = strtolower($class); + + if (isset($classes[$cn])) { + require $path . $classes[$cn]; + } + } +); diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Autoload.php.in b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Autoload.php.in new file mode 100644 index 00000000000..3df43be5c1d --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Autoload.php.in @@ -0,0 +1,70 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2010 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.1.0 + */ + +require_once 'File/Iterator/Autoload.php'; +require_once 'PHP/Token/Stream/Autoload.php'; +require_once 'Text/Template/Autoload.php'; + +spl_autoload_register( + function ($class) + { + static $classes = NULL; + static $path = NULL; + + if ($classes === NULL) { + $classes = array( + ___CLASSLIST___ + ); + + $path = dirname(dirname(__FILE__)); + } + + $cn = strtolower($class); + + if (isset($classes[$cn])) { + require $path . $classes[$cn]; + } + } +); diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver.php new file mode 100644 index 00000000000..5cd79127fc6 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver.php @@ -0,0 +1,70 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.0.0 + */ + +/** + * Interface for code coverage drivers. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.0.0 + */ +interface PHP_CodeCoverage_Driver +{ + /** + * Start collection of code coverage information. + */ + public function start(); + + /** + * Stop collection of code coverage information. + * + * @return array + */ + public function stop(); +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver/Xdebug.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver/Xdebug.php new file mode 100644 index 00000000000..a169a224eee --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Driver/Xdebug.php @@ -0,0 +1,97 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.0.0 + */ + +/** + * Driver for Xdebug's code coverage functionality. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.0.0 + * @codeCoverageIgnore + */ +class PHP_CodeCoverage_Driver_Xdebug implements PHP_CodeCoverage_Driver +{ + /** + * Constructor. + */ + public function __construct() + { + if (!extension_loaded('xdebug')) { + throw new PHP_CodeCoverage_Exception('Xdebug is not loaded.'); + } + + if (version_compare(phpversion('xdebug'), '2.2.0-dev', '>=') && + !ini_get('xdebug.coverage_enable')) { + throw new PHP_CodeCoverage_Exception( + 'You need to set xdebug.coverage_enable=On in your php.ini.' + ); + } + } + + /** + * Start collection of code coverage information. + */ + public function start() + { + xdebug_start_code_coverage(XDEBUG_CC_UNUSED | XDEBUG_CC_DEAD_CODE); + } + + /** + * Stop collection of code coverage information. + * + * @return array + */ + public function stop() + { + $codeCoverage = xdebug_get_code_coverage(); + xdebug_stop_code_coverage(); + + return $codeCoverage; + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Exception.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Exception.php new file mode 100644 index 00000000000..412a4e12d9c --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Exception.php @@ -0,0 +1,59 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.1.0 + */ + +/** + * Exception class for PHP_CodeCoverage component. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.1.0 + */ +class PHP_CodeCoverage_Exception extends RuntimeException +{ +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Filter.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Filter.php new file mode 100644 index 00000000000..966a0b9eaba --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Filter.php @@ -0,0 +1,343 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.0.0 + */ + +/** + * Filter for blacklisting and whitelisting of code coverage information. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.0.0 + */ +class PHP_CodeCoverage_Filter +{ + /** + * Source files that are blacklisted. + * + * @var array + */ + protected $blacklistedFiles = array(); + + /** + * Source files that are whitelisted. + * + * @var array + */ + protected $whitelistedFiles = array(); + + /** + * @var boolean + */ + protected $blacklistPrefilled = FALSE; + + /** + * Adds a directory to the blacklist (recursively). + * + * @param string $directory + * @param string $suffix + * @param string $prefix + */ + public function addDirectoryToBlacklist($directory, $suffix = '.php', $prefix = '') + { + $facade = new File_Iterator_Facade; + $files = $facade->getFilesAsArray( + $directory, $suffix, $prefix + ); + + foreach ($files as $file) { + $this->addFileToBlacklist($file); + } + } + + /** + * Adds a file to the blacklist. + * + * @param string $filename + */ + public function addFileToBlacklist($filename) + { + $this->blacklistedFiles[realpath($filename)] = TRUE; + } + + /** + * Adds files to the blacklist. + * + * @param array $files + */ + public function addFilesToBlacklist(array $files) + { + foreach ($files as $file) { + $this->addFileToBlacklist($file); + } + } + + /** + * Removes a directory from the blacklist (recursively). + * + * @param string $directory + * @param string $suffix + * @param string $prefix + */ + public function removeDirectoryFromBlacklist($directory, $suffix = '.php', $prefix = '') + { + $facade = new File_Iterator_Facade; + $files = $facade->getFilesAsArray( + $directory, $suffix, $prefix + ); + + foreach ($files as $file) { + $this->removeFileFromBlacklist($file); + } + } + + /** + * Removes a file from the blacklist. + * + * @param string $filename + */ + public function removeFileFromBlacklist($filename) + { + $filename = realpath($filename); + + if (isset($this->blacklistedFiles[$filename])) { + unset($this->blacklistedFiles[$filename]); + } + } + + /** + * Adds a directory to the whitelist (recursively). + * + * @param string $directory + * @param string $suffix + * @param string $prefix + */ + public function addDirectoryToWhitelist($directory, $suffix = '.php', $prefix = '') + { + $facade = new File_Iterator_Facade; + $files = $facade->getFilesAsArray( + $directory, $suffix, $prefix + ); + + foreach ($files as $file) { + $this->addFileToWhitelist($file); + } + } + + /** + * Adds a file to the whitelist. + * + * @param string $filename + */ + public function addFileToWhitelist($filename) + { + $this->whitelistedFiles[realpath($filename)] = TRUE; + } + + /** + * Adds files to the whitelist. + * + * @param array $files + */ + public function addFilesToWhitelist(array $files) + { + foreach ($files as $file) { + $this->addFileToWhitelist($file); + } + } + + /** + * Removes a directory from the whitelist (recursively). + * + * @param string $directory + * @param string $suffix + * @param string $prefix + */ + public function removeDirectoryFromWhitelist($directory, $suffix = '.php', $prefix = '') + { + $facade = new File_Iterator_Facade; + $files = $facade->getFilesAsArray( + $directory, $suffix, $prefix + ); + + foreach ($files as $file) { + $this->removeFileFromWhitelist($file); + } + } + + /** + * Removes a file from the whitelist. + * + * @param string $filename + */ + public function removeFileFromWhitelist($filename) + { + $filename = realpath($filename); + + if (isset($this->whitelistedFiles[$filename])) { + unset($this->whitelistedFiles[$filename]); + } + } + + /** + * Checks whether a filename is a real filename. + * + * @param string $filename + */ + public function isFile($filename) + { + if ($filename == '-' || + strpos($filename, 'eval()\'d code') !== FALSE || + strpos($filename, 'runtime-created function') !== FALSE || + strpos($filename, 'runkit created function') !== FALSE || + strpos($filename, 'assert code') !== FALSE || + strpos($filename, 'regexp code') !== FALSE) { + return FALSE; + } + + return TRUE; + } + + /** + * Checks whether or not a file is filtered. + * + * When the whitelist is empty (default), blacklisting is used. + * When the whitelist is not empty, whitelisting is used. + * + * @param string $filename + * @param boolean $ignoreWhitelist + * @return boolean + * @throws PHP_CodeCoverage_Exception + */ + public function isFiltered($filename) + { + $filename = realpath($filename); + + if (!empty($this->whitelistedFiles)) { + return !isset($this->whitelistedFiles[$filename]); + } + + if (!$this->blacklistPrefilled) { + $this->prefillBlacklist(); + } + + return isset($this->blacklistedFiles[$filename]); + } + + /** + * Returns the list of blacklisted files. + * + * @return array + */ + public function getBlacklist() + { + return array_keys($this->blacklistedFiles); + } + + /** + * Returns the list of whitelisted files. + * + * @return array + */ + public function getWhitelist() + { + return array_keys($this->whitelistedFiles); + } + + /** + * Returns whether this filter has a whitelist. + * + * @return boolean + * @since Method available since Release 1.1.0 + */ + public function hasWhitelist() + { + return !empty($this->whitelistedFiles); + } + + /** + * @since Method available since Release 1.2.3 + */ + protected function prefillBlacklist() + { + $this->addDirectoryContainingClassToBlacklist('File_Iterator'); + $this->addDirectoryContainingClassToBlacklist('PHP_CodeCoverage'); + $this->addDirectoryContainingClassToBlacklist('PHP_Invoker'); + $this->addDirectoryContainingClassToBlacklist('PHP_Timer'); + $this->addDirectoryContainingClassToBlacklist('PHP_Token'); + $this->addDirectoryContainingClassToBlacklist('PHPUnit_Framework_TestCase', 2); + $this->addDirectoryContainingClassToBlacklist('PHPUnit_Extensions_Database_TestCase', 2); + $this->addDirectoryContainingClassToBlacklist('PHPUnit_Framework_MockObject_Generator', 2); + $this->addDirectoryContainingClassToBlacklist('PHPUnit_Extensions_SeleniumTestCase', 2); + $this->addDirectoryContainingClassToBlacklist('PHPUnit_Extensions_Story_TestCase', 2); + $this->addDirectoryContainingClassToBlacklist('Text_Template'); + $this->addDirectoryContainingClassToBlacklist('Symfony\Component\Yaml\Yaml'); + + $this->blacklistPrefilled = TRUE; + } + + /** + * @param string $className + * @param integer $parent + * @since Method available since Release 1.2.3 + */ + protected function addDirectoryContainingClassToBlacklist($className, $parent = 1) + { + if (!class_exists($className)) { + return; + } + + $reflector = new ReflectionClass($className); + $directory = $reflector->getFileName(); + + for ($i = 0; $i < $parent; $i++) { + $directory = dirname($directory); + } + + $this->addDirectoryToBlacklist($directory); + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Clover.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Clover.php new file mode 100644 index 00000000000..03658540b13 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Clover.php @@ -0,0 +1,346 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.0.0 + */ + +/** + * Generates a Clover XML logfile from an PHP_CodeCoverage object. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.0.0 + */ +class PHP_CodeCoverage_Report_Clover +{ + /** + * @param PHP_CodeCoverage $coverage + * @param string $target + * @param string $name + * @return string + */ + public function process(PHP_CodeCoverage $coverage, $target = NULL, $name = NULL) + { + $xmlDocument = new DOMDocument('1.0', 'UTF-8'); + $xmlDocument->formatOutput = TRUE; + + $xmlCoverage = $xmlDocument->createElement('coverage'); + $xmlCoverage->setAttribute('generated', (int)$_SERVER['REQUEST_TIME']); + $xmlDocument->appendChild($xmlCoverage); + + $xmlProject = $xmlDocument->createElement('project'); + $xmlProject->setAttribute('timestamp', (int)$_SERVER['REQUEST_TIME']); + + if (is_string($name)) { + $xmlProject->setAttribute('name', $name); + } + + $xmlCoverage->appendChild($xmlProject); + + $packages = array(); + $report = $coverage->getReport(); + unset($coverage); + + foreach ($report as $item) { + $namespace = 'global'; + + if (!$item instanceof PHP_CodeCoverage_Report_Node_File) { + continue; + } + + $xmlFile = $xmlDocument->createElement('file'); + $xmlFile->setAttribute('name', $item->getPath()); + + $classes = $item->getClassesAndTraits(); + $coverage = $item->getCoverageData(); + $lines = array(); + $ignoredLines = $item->getIgnoredLines(); + + foreach ($classes as $className => $class) { + $classStatements = 0; + $coveredClassStatements = 0; + $coveredMethods = 0; + + foreach ($class['methods'] as $methodName => $method) { + $methodCount = 0; + $methodLines = 0; + $methodLinesCovered = 0; + + for ($i = $method['startLine']; + $i <= $method['endLine']; + $i++) { + if (isset($ignoredLines[$i])) { + continue; + } + + $add = TRUE; + $count = 0; + + if (isset($coverage[$i])) { + if ($coverage[$i] !== NULL) { + $classStatements++; + $methodLines++; + } else { + $add = FALSE; + } + + $count = count($coverage[$i]); + + if ($count > 0) { + $coveredClassStatements++; + $methodLinesCovered++; + } + } else { + $add = FALSE; + } + + $methodCount = max($methodCount, $count); + + if ($add) { + $lines[$i] = array( + 'count' => $count, 'type' => 'stmt' + ); + } + } + + if ($methodCount > 0) { + $coveredMethods++; + } + + $lines[$method['startLine']] = array( + 'count' => $methodCount, + 'crap' => $method['crap'], + 'type' => 'method', + 'name' => $methodName + ); + } + + if (!empty($class['package']['namespace'])) { + $namespace = $class['package']['namespace']; + } + + $xmlClass = $xmlDocument->createElement('class'); + $xmlClass->setAttribute('name', $className); + $xmlClass->setAttribute('namespace', $namespace); + + if (!empty($class['package']['fullPackage'])) { + $xmlClass->setAttribute( + 'fullPackage', $class['package']['fullPackage'] + ); + } + + if (!empty($class['package']['category'])) { + $xmlClass->setAttribute( + 'category', $class['package']['category'] + ); + } + + if (!empty($class['package']['package'])) { + $xmlClass->setAttribute( + 'package', $class['package']['package'] + ); + } + + if (!empty($class['package']['subpackage'])) { + $xmlClass->setAttribute( + 'subpackage', $class['package']['subpackage'] + ); + } + + $xmlFile->appendChild($xmlClass); + + $xmlMetrics = $xmlDocument->createElement('metrics'); + $xmlMetrics->setAttribute('methods', count($class['methods'])); + $xmlMetrics->setAttribute('coveredmethods', $coveredMethods); + $xmlMetrics->setAttribute('conditionals', 0); + $xmlMetrics->setAttribute('coveredconditionals', 0); + $xmlMetrics->setAttribute('statements', $classStatements); + $xmlMetrics->setAttribute( + 'coveredstatements', $coveredClassStatements + ); + $xmlMetrics->setAttribute( + 'elements', + count($class['methods']) + + $classStatements + /* + conditionals */); + $xmlMetrics->setAttribute( + 'coveredelements', + $coveredMethods + + $coveredClassStatements + /* + coveredconditionals */ + ); + $xmlClass->appendChild($xmlMetrics); + } + + foreach ($coverage as $line => $data) { + if ($data === NULL || + isset($lines[$line]) || + isset($ignoredLines[$line])) { + continue; + } + + $lines[$line] = array( + 'count' => count($data), 'type' => 'stmt' + ); + } + + ksort($lines); + + foreach ($lines as $line => $data) { + if (isset($ignoredLines[$line])) { + continue; + } + + $xmlLine = $xmlDocument->createElement('line'); + $xmlLine->setAttribute('num', $line); + $xmlLine->setAttribute('type', $data['type']); + + if (isset($data['name'])) { + $xmlLine->setAttribute('name', $data['name']); + } + + if (isset($data['crap'])) { + $xmlLine->setAttribute('crap', $data['crap']); + } + + $xmlLine->setAttribute('count', $data['count']); + $xmlFile->appendChild($xmlLine); + } + + $linesOfCode = $item->getLinesOfCode(); + + $xmlMetrics = $xmlDocument->createElement('metrics'); + $xmlMetrics->setAttribute('loc', $linesOfCode['loc']); + $xmlMetrics->setAttribute('ncloc', $linesOfCode['ncloc']); + $xmlMetrics->setAttribute('classes', $item->getNumClassesAndTraits()); + $xmlMetrics->setAttribute('methods', $item->getNumMethods()); + $xmlMetrics->setAttribute( + 'coveredmethods', $item->getNumTestedMethods() + ); + $xmlMetrics->setAttribute('conditionals', 0); + $xmlMetrics->setAttribute('coveredconditionals', 0); + $xmlMetrics->setAttribute( + 'statements', $item->getNumExecutableLines() + ); + $xmlMetrics->setAttribute( + 'coveredstatements', $item->getNumExecutedLines() + ); + $xmlMetrics->setAttribute( + 'elements', + $item->getNumMethods() + + $item->getNumExecutableLines() + /* + conditionals */ + ); + $xmlMetrics->setAttribute( + 'coveredelements', + $item->getNumTestedMethods() + + $item->getNumExecutedLines() + /* + coveredconditionals */ + ); + $xmlFile->appendChild($xmlMetrics); + + if ($namespace == 'global') { + $xmlProject->appendChild($xmlFile); + } else { + if (!isset($packages[$namespace])) { + $packages[$namespace] = $xmlDocument->createElement( + 'package' + ); + + $packages[$namespace]->setAttribute('name', $namespace); + $xmlProject->appendChild($packages[$namespace]); + } + + $packages[$namespace]->appendChild($xmlFile); + } + } + + $linesOfCode = $report->getLinesOfCode(); + + $xmlMetrics = $xmlDocument->createElement('metrics'); + $xmlMetrics->setAttribute('files', count($report)); + $xmlMetrics->setAttribute('loc', $linesOfCode['loc']); + $xmlMetrics->setAttribute('ncloc', $linesOfCode['ncloc']); + $xmlMetrics->setAttribute( + 'classes', $report->getNumClassesAndTraits() + ); + $xmlMetrics->setAttribute('methods', $report->getNumMethods()); + $xmlMetrics->setAttribute( + 'coveredmethods', $report->getNumTestedMethods() + ); + $xmlMetrics->setAttribute('conditionals', 0); + $xmlMetrics->setAttribute('coveredconditionals', 0); + $xmlMetrics->setAttribute( + 'statements', $report->getNumExecutableLines() + ); + $xmlMetrics->setAttribute( + 'coveredstatements', $report->getNumExecutedLines() + ); + $xmlMetrics->setAttribute( + 'elements', + $report->getNumMethods() + + $report->getNumExecutableLines() + /* + conditionals */ + ); + $xmlMetrics->setAttribute( + 'coveredelements', + $report->getNumTestedMethods() + + $report->getNumExecutedLines() + /* + coveredconditionals */ + ); + $xmlProject->appendChild($xmlMetrics); + + if ($target !== NULL) { + if (!is_dir(dirname($target))) { + mkdir(dirname($target), 0777, TRUE); + } + + return $xmlDocument->save($target); + } else { + return $xmlDocument->saveXML(); + } + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Factory.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Factory.php new file mode 100644 index 00000000000..ab0f4005b29 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/Factory.php @@ -0,0 +1,280 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.1.0 + */ + +/** + * Factory for PHP_CodeCoverage_Report_Node_* object graphs. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.1.0 + */ +class PHP_CodeCoverage_Report_Factory +{ + /** + * @param PHP_CodeCoverage $coverage + */ + public function create(PHP_CodeCoverage $coverage) + { + $files = $coverage->getData(); + $commonPath = $this->reducePaths($files); + $root = new PHP_CodeCoverage_Report_Node_Directory( + $commonPath, NULL + ); + + $this->addItems( + $root, + $this->buildDirectoryStructure($files), + $coverage->getTests(), + $coverage->getCacheTokens() + ); + + return $root; + } + + /** + * @param PHP_CodeCoverage_Report_Node_Directory $root + * @param array $items + * @param array $tests + * @param boolean $cacheTokens + */ + protected function addItems(PHP_CodeCoverage_Report_Node_Directory $root, array $items, array $tests, $cacheTokens) + { + foreach ($items as $key => $value) { + if (substr($key, -2) == '/f') { + $key = substr($key, 0, -2); + + if (file_exists($root->getPath() . DIRECTORY_SEPARATOR . $key)) { + $root->addFile($key, $value, $tests, $cacheTokens); + } + } else { + $child = $root->addDirectory($key); + $this->addItems($child, $value, $tests, $cacheTokens); + } + } + } + + /** + * Builds an array representation of the directory structure. + * + * For instance, + * + * + * Array + * ( + * [Money.php] => Array + * ( + * ... + * ) + * + * [MoneyBag.php] => Array + * ( + * ... + * ) + * ) + * + * + * is transformed into + * + * + * Array + * ( + * [.] => Array + * ( + * [Money.php] => Array + * ( + * ... + * ) + * + * [MoneyBag.php] => Array + * ( + * ... + * ) + * ) + * ) + * + * + * @param array $files + * @return array + */ + protected function buildDirectoryStructure($files) + { + $result = array(); + + foreach ($files as $path => $file) { + $path = explode('/', $path); + $pointer = &$result; + $max = count($path); + + for ($i = 0; $i < $max; $i++) { + if ($i == ($max - 1)) { + $type = '/f'; + } else { + $type = ''; + } + + $pointer = &$pointer[$path[$i] . $type]; + } + + $pointer = $file; + } + + return $result; + } + + /** + * Reduces the paths by cutting the longest common start path. + * + * For instance, + * + * + * Array + * ( + * [/home/sb/Money/Money.php] => Array + * ( + * ... + * ) + * + * [/home/sb/Money/MoneyBag.php] => Array + * ( + * ... + * ) + * ) + * + * + * is reduced to + * + * + * Array + * ( + * [Money.php] => Array + * ( + * ... + * ) + * + * [MoneyBag.php] => Array + * ( + * ... + * ) + * ) + * + * + * @param array $files + * @return string + */ + protected function reducePaths(&$files) + { + if (empty($files)) { + return '.'; + } + + $commonPath = ''; + $paths = array_keys($files); + + if (count($files) == 1) { + $commonPath = dirname($paths[0]) . '/'; + $files[basename($paths[0])] = $files[$paths[0]]; + + unset($files[$paths[0]]); + + return $commonPath; + } + + $max = count($paths); + + for ($i = 0; $i < $max; $i++) { + // strip phar:// prefixes + if (strpos($paths[$i], 'phar://') === 0) { + $paths[$i] = substr($paths[$i], 7); + } + $paths[$i] = explode(DIRECTORY_SEPARATOR, $paths[$i]); + + if (empty($paths[$i][0])) { + $paths[$i][0] = DIRECTORY_SEPARATOR; + } + } + + $done = FALSE; + $max = count($paths); + + while (!$done) { + for ($i = 0; $i < $max - 1; $i++) { + if (!isset($paths[$i][0]) || + !isset($paths[$i+1][0]) || + $paths[$i][0] != $paths[$i+1][0]) { + $done = TRUE; + break; + } + } + + if (!$done) { + $commonPath .= $paths[0][0]; + + if ($paths[0][0] != DIRECTORY_SEPARATOR) { + $commonPath .= DIRECTORY_SEPARATOR; + } + + for ($i = 0; $i < $max; $i++) { + array_shift($paths[$i]); + } + } + } + + $original = array_keys($files); + $max = count($original); + + for ($i = 0; $i < $max; $i++) { + $files[join('/', $paths[$i])] = $files[$original[$i]]; + unset($files[$original[$i]]); + } + + ksort($files); + + return substr($commonPath, 0, -1); + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML.php new file mode 100644 index 00000000000..b2546259e56 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML.php @@ -0,0 +1,222 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.0.0 + */ + +/** + * Generates an HTML report from an PHP_CodeCoverage object. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.0.0 + */ +class PHP_CodeCoverage_Report_HTML +{ + /** + * @var string + */ + protected $templatePath; + + /** + * @var string + */ + protected $charset; + + /** + * @var string + */ + protected $generator; + + /** + * @var integer + */ + protected $lowUpperBound; + + /** + * @var integer + */ + protected $highLowerBound; + + /** + * @var boolean + */ + protected $highlight; + + /** + * Constructor. + * + * @param array $options + */ + public function __construct($charset = 'UTF-8', $highlight = FALSE, $lowUpperBound = 35, $highLowerBound = 70, $generator = '') + { + $this->charset = $charset; + $this->generator = $generator; + $this->highLowerBound = $highLowerBound; + $this->highlight = $highlight; + $this->lowUpperBound = $lowUpperBound; + + $this->templatePath = sprintf( + '%s%sHTML%sRenderer%sTemplate%s', + + dirname(__FILE__), + DIRECTORY_SEPARATOR, + DIRECTORY_SEPARATOR, + DIRECTORY_SEPARATOR, + DIRECTORY_SEPARATOR + ); + } + + /** + * @param PHP_CodeCoverage $coverage + * @param string $target + */ + public function process(PHP_CodeCoverage $coverage, $target) + { + $target = $this->getDirectory($target); + $report = $coverage->getReport(); + unset($coverage); + + if (!isset($_SERVER['REQUEST_TIME'])) { + $_SERVER['REQUEST_TIME'] = time(); + } + + $date = date('D M j G:i:s T Y', $_SERVER['REQUEST_TIME']); + + $dashboard = new PHP_CodeCoverage_Report_HTML_Renderer_Dashboard( + $this->templatePath, + $this->charset, + $this->generator, + $date, + $this->lowUpperBound, + $this->highLowerBound + ); + + $directory = new PHP_CodeCoverage_Report_HTML_Renderer_Directory( + $this->templatePath, + $this->charset, + $this->generator, + $date, + $this->lowUpperBound, + $this->highLowerBound + ); + + $file = new PHP_CodeCoverage_Report_HTML_Renderer_File( + $this->templatePath, + $this->charset, + $this->generator, + $date, + $this->lowUpperBound, + $this->highLowerBound, + $this->highlight + ); + + $dashboard->render($report, $target . 'index.dashboard.html'); + $directory->render($report, $target . 'index.html'); + + foreach ($report as $node) { + $id = $node->getId(); + + if ($node instanceof PHP_CodeCoverage_Report_Node_Directory) { + $dashboard->render($node, $target . $id . '.dashboard.html'); + $directory->render($node, $target . $id . '.html'); + } else { + $file->render($node, $target . $id . '.html'); + } + } + + $this->copyFiles($target); + } + + /** + * @param string $target + */ + protected function copyFiles($target) + { + $dir = $this->getDirectory($target . 'css'); + copy($this->templatePath . 'css/bootstrap.min.css', $dir . 'bootstrap.min.css'); + copy($this->templatePath . 'css/bootstrap-responsive.min.css', $dir . 'bootstrap-responsive.min.css'); + copy($this->templatePath . 'css/style.css', $dir . 'style.css'); + + $dir = $this->getDirectory($target . 'js'); + copy($this->templatePath . 'js/bootstrap.min.js', $dir . 'bootstrap.min.js'); + copy($this->templatePath . 'js/highcharts.js', $dir . 'highcharts.js'); + copy($this->templatePath . 'js/jquery.min.js', $dir . 'jquery.min.js'); + copy($this->templatePath . 'js/html5shiv.js', $dir . 'html5shiv.js'); + + $dir = $this->getDirectory($target . 'img'); + copy($this->templatePath . 'img/glyphicons-halflings.png', $dir . 'glyphicons-halflings.png'); + copy($this->templatePath . 'img/glyphicons-halflings-white.png', $dir . 'glyphicons-halflings-white.png'); + } + + /** + * @param string $directory + * @return string + * @throws PHP_CodeCoverage_Exception + * @since Method available since Release 1.2.0 + */ + protected function getDirectory($directory) + { + if (substr($directory, -1, 1) != DIRECTORY_SEPARATOR) { + $directory .= DIRECTORY_SEPARATOR; + } + + if (is_dir($directory)) { + return $directory; + } + + if (@mkdir($directory, 0777, TRUE)) { + return $directory; + } + + throw new PHP_CodeCoverage_Exception( + sprintf( + 'Directory "%s" does not exist.', + $directory + ) + ); + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer.php new file mode 100644 index 00000000000..28bc53c44a6 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer.php @@ -0,0 +1,284 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.1.0 + */ + +/** + * Base class for PHP_CodeCoverage_Report_Node renderers. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.1.0 + */ +abstract class PHP_CodeCoverage_Report_HTML_Renderer +{ + /** + * @var string + */ + protected $templatePath; + + /** + * @var string + */ + protected $charset; + + /** + * @var string + */ + protected $generator; + + /** + * @var string + */ + protected $date; + + /** + * @var integer + */ + protected $lowUpperBound; + + /** + * @var integer + */ + protected $highLowerBound; + + /** + * Constructor. + * + * @param string $templatePath + * @param string $charset + * @param string $generator + * @param string $date + * @param integer $lowUpperBound + * @param integer $highLowerBound + */ + public function __construct($templatePath, $charset, $generator, $date, $lowUpperBound, $highLowerBound) + { + $this->templatePath = $templatePath; + $this->charset = $charset; + $this->generator = $generator; + $this->date = $date; + $this->lowUpperBound = $lowUpperBound; + $this->highLowerBound = $highLowerBound; + } + + /** + * @param Text_Template $template + * @param array $data + * @return string + */ + protected function renderItemTemplate(Text_Template $template, array $data) + { + $classesBar = ' '; + $classesLevel = 'None'; + $classesNumber = ' '; + + if (isset($data['numClasses']) && $data['numClasses'] > 0) { + $classesLevel = $this->getColorLevel($data['testedClassesPercent']); + + $classesNumber = $data['numTestedClasses'] . ' / ' . + $data['numClasses']; + + $classesBar = $this->getCoverageBar( + $data['testedClassesPercent'] + ); + } + + $methodsBar = ' '; + $methodsLevel = 'None'; + $methodsNumber = ' '; + + if ($data['numMethods'] > 0) { + $methodsLevel = $this->getColorLevel($data['testedMethodsPercent']); + + $methodsNumber = $data['numTestedMethods'] . ' / ' . + $data['numMethods']; + + $methodsBar = $this->getCoverageBar( + $data['testedMethodsPercent'] + ); + } + + $linesBar = ' '; + $linesLevel = 'None'; + $linesNumber = ' '; + + if ($data['numExecutableLines'] > 0) { + $linesLevel = $this->getColorLevel($data['linesExecutedPercent']); + + $linesNumber = $data['numExecutedLines'] . ' / ' . + $data['numExecutableLines']; + + $linesBar = $this->getCoverageBar( + $data['linesExecutedPercent'] + ); + } + + $template->setVar( + array( + 'icon' => isset($data['icon']) ? $data['icon'] : '', + 'crap' => isset($data['crap']) ? $data['crap'] : '', + 'name' => $data['name'], + 'lines_bar' => $linesBar, + 'lines_executed_percent' => $data['linesExecutedPercentAsString'], + 'lines_level' => $linesLevel, + 'lines_number' => $linesNumber, + 'methods_bar' => $methodsBar, + 'methods_tested_percent' => $data['testedMethodsPercentAsString'], + 'methods_level' => $methodsLevel, + 'methods_number' => $methodsNumber, + 'classes_bar' => $classesBar, + 'classes_tested_percent' => isset($data['testedClassesPercentAsString']) ? $data['testedClassesPercentAsString'] : '', + 'classes_level' => $classesLevel, + 'classes_number' => $classesNumber + ) + ); + + return $template->render(); + } + + /** + * @param Text_Template $template + * @param PHP_CodeCoverage_Report_Node $node + */ + protected function setCommonTemplateVariables(Text_Template $template, PHP_CodeCoverage_Report_Node $node) + { + $template->setVar( + array( + 'id' => $node->getId(), + 'full_path' => $node->getPath(), + 'breadcrumbs' => $this->getBreadcrumbs($node), + 'charset' => $this->charset, + 'date' => $this->date, + 'version' => PHP_CodeCoverage_Version::id(), + 'php_version' => PHP_VERSION, + 'generator' => $this->generator, + 'low_upper_bound' => $this->lowUpperBound, + 'high_lower_bound' => $this->highLowerBound + ) + ); + } + + protected function getBreadcrumbs(PHP_CodeCoverage_Report_Node $node) + { + $breadcrumbs = ''; + + $path = $node->getPathAsArray(); + + foreach ($path as $step) { + if ($step !== $node) { + $breadcrumbs .= $this->getInactiveBreadcrumb($step); + } else { + $breadcrumbs .= $this->getActiveBreadcrumb( + $step, + $node instanceof PHP_CodeCoverage_Report_Node_Directory + ); + } + } + + return $breadcrumbs; + } + + protected function getActiveBreadcrumb(PHP_CodeCoverage_Report_Node $node, $isDirectory) + { + $buffer = sprintf( + '
  • %s
  • ' . "\n", + $node->getName() + ); + + if ($isDirectory) { + $buffer .= sprintf( + '
  • (Dashboard)
  • ' . "\n", + $node->getId() + ); + } + + return $buffer; + } + + protected function getInactiveBreadcrumb(PHP_CodeCoverage_Report_Node $node) + { + return sprintf( + '
  • %s /
  • ' . "\n", + $node->getId(), + $node->getName() + ); + } + + protected function getCoverageBar($percent) + { + $level = $this->getColorLevel($percent); + + $template = new Text_Template( + $this->templatePath . 'coverage_bar.html' + ); + + $template->setVar(array('level' => $level, 'percent' => sprintf("%.2F", $percent))); + + return $template->render(); + } + + /** + * @param integer $percent + * @return string + */ + protected function getColorLevel($percent) + { + if ($percent < $this->lowUpperBound) { + return 'danger'; + } + + else if ($percent >= $this->lowUpperBound && + $percent < $this->highLowerBound) { + return 'warning'; + } + + else { + return 'success'; + } + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Dashboard.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Dashboard.php new file mode 100644 index 00000000000..8a4d4088935 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Dashboard.php @@ -0,0 +1,240 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.1.0 + */ + +/** + * Renders the dashboard for a PHP_CodeCoverage_Report_Node_Directory node. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.1.0 + */ +class PHP_CodeCoverage_Report_HTML_Renderer_Dashboard extends PHP_CodeCoverage_Report_HTML_Renderer +{ + /** + * @param PHP_CodeCoverage_Report_Node_Directory $node + * @param string $file + */ + public function render(PHP_CodeCoverage_Report_Node_Directory $node, $file) + { + $classes = $node->getClassesAndTraits(); + $template = new Text_Template( + $this->templatePath . 'dashboard.html' + ); + + $this->setCommonTemplateVariables($template, $node); + + $template->setVar( + array( + 'least_tested_methods' => $this->leastTestedMethods($classes), + 'top_project_risks' => $this->topProjectRisks($classes), + 'cc_values' => $this->classComplexity($classes), + 'ccd_values' => $this->classCoverageDistribution($classes), + 'backlink' => basename(str_replace('.dashboard', '', $file)) + ) + ); + + $template->renderTo($file); + } + + /** + * Returns the data for the Class Complexity chart. + * + * @param array $classes + * @return string + */ + protected function classComplexity(array $classes) + { + $data = array(); + + foreach ($classes as $name => $class) { + $data[] = array( + $class['coverage'], + $class['ccn'], + sprintf( + '%s', + $class['link'], + $name + ) + ); + } + + return json_encode($data); + } + + /** + * Returns the data for the Class Coverage Distribution chart. + * + * @param array $classes + * @return string + */ + protected function classCoverageDistribution(array $classes) + { + $data = array( + '0%' => 0, + '0-10%' => 0, + '10-20%' => 0, + '20-30%' => 0, + '30-40%' => 0, + '40-50%' => 0, + '50-60%' => 0, + '60-70%' => 0, + '70-80%' => 0, + '80-90%' => 0, + '90-100%' => 0, + '100%' => 0 + ); + + foreach ($classes as $class) { + if ($class['coverage'] == 0) { + $data['0%']++; + } + + else if ($class['coverage'] == 100) { + $data['100%']++; + } + + else { + $key = floor($class['coverage']/10)*10; + $key = $key . '-' . ($key + 10) . '%'; + $data[$key]++; + } + } + + return json_encode(array_values($data)); + } + + /** + * Returns the least tested methods. + * + * @param array $classes + * @param integer $max + * @return string + */ + protected function leastTestedMethods(array $classes, $max = 10) + { + $methods = array(); + + foreach ($classes as $className => $class) { + foreach ($class['methods'] as $methodName => $method) { + if ($method['coverage'] < 100) { + if ($className != '*') { + $key = $className . '::' . $methodName; + } else { + $key = $methodName; + } + + $methods[$key] = $method['coverage']; + } + } + } + + asort($methods); + + $methods = array_slice($methods, 0, min($max, count($methods))); + $buffer = ''; + + foreach ($methods as $name => $coverage) { + list($class, $method) = explode('::', $name); + + $buffer .= sprintf( + '
  • %s (%d%%)
  • ' . "\n", + $classes[$class]['methods'][$method]['link'], + $name, + $coverage + ); + } + + return $buffer; + } + + /** + * Returns the top project risks according to the CRAP index. + * + * @param array $classes + * @param integer $max + * @return string + */ + protected function topProjectRisks(array $classes, $max = 10) + { + $risks = array(); + + foreach ($classes as $className => $class) { + if ($class['coverage'] < 100 && + $class['ccn'] > count($class['methods'])) { + $risks[$className] = $class['crap']; + } + } + + arsort($risks); + + $buffer = ''; + $risks = array_slice($risks, 0, min($max, count($risks))); + + foreach ($risks as $name => $crap) { + $buffer .= sprintf( + '
  • %s (%d)
  • ' . "\n", + $classes[$name]['link'], + $name, + $crap + ); + } + + return $buffer; + } + + protected function getActiveBreadcrumb(PHP_CodeCoverage_Report_Node $node, $isDirectory) + { + return sprintf( + '
  • %s
  • ' . "\n" . + '
  • (Dashboard)
  • ' . "\n", + $node->getId(), + $node->getName() + ); + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Directory.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Directory.php new file mode 100644 index 00000000000..c38f84489e0 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Directory.php @@ -0,0 +1,132 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.1.0 + */ + +/** + * Renders a PHP_CodeCoverage_Report_Node_Directory node. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.1.0 + */ +class PHP_CodeCoverage_Report_HTML_Renderer_Directory extends PHP_CodeCoverage_Report_HTML_Renderer +{ + /** + * @param PHP_CodeCoverage_Report_Node_Directory $node + * @param string $file + */ + public function render(PHP_CodeCoverage_Report_Node_Directory $node, $file) + { + $template = new Text_Template($this->templatePath . 'directory.html'); + + $this->setCommonTemplateVariables($template, $node); + + $items = $this->renderItem($node, TRUE); + + foreach ($node->getDirectories() as $item) { + $items .= $this->renderItem($item); + } + + foreach ($node->getFiles() as $item) { + $items .= $this->renderItem($item); + } + + $template->setVar( + array( + 'id' => $node->getId(), + 'items' => $items + ) + ); + + $template->renderTo($file); + } + + /** + * @param PHP_CodeCoverage_Report_Node $item + * @param boolean $total + * @return string + */ + protected function renderItem(PHP_CodeCoverage_Report_Node $item, $total = FALSE) + { + $data = array( + 'numClasses' => $item->getNumClassesAndTraits(), + 'numTestedClasses' => $item->getNumTestedClassesAndTraits(), + 'numMethods' => $item->getNumMethods(), + 'numTestedMethods' => $item->getNumTestedMethods(), + 'linesExecutedPercent' => $item->getLineExecutedPercent(FALSE), + 'linesExecutedPercentAsString' => $item->getLineExecutedPercent(), + 'numExecutedLines' => $item->getNumExecutedLines(), + 'numExecutableLines' => $item->getNumExecutableLines(), + 'testedMethodsPercent' => $item->getTestedMethodsPercent(FALSE), + 'testedMethodsPercentAsString' => $item->getTestedMethodsPercent(), + 'testedClassesPercent' => $item->getTestedClassesAndTraitsPercent(FALSE), + 'testedClassesPercentAsString' => $item->getTestedClassesAndTraitsPercent() + ); + + if ($total) { + $data['name'] = 'Total'; + } else { + $data['name'] = sprintf( + '%s', + $item->getId(), + $item->getName() + ); + + if ($item instanceof PHP_CodeCoverage_Report_Node_Directory) { + $data['icon'] = ' '; + } else { + $data['icon'] = ' '; + } + } + + return $this->renderItemTemplate( + new Text_Template($this->templatePath . 'directory_item.html'), + $data + ); + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/File.php b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/File.php new file mode 100644 index 00000000000..351028b985c --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/File.php @@ -0,0 +1,583 @@ +. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * * Neither the name of Sebastian Bergmann nor the names of his + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since File available since Release 1.1.0 + */ + +// @codeCoverageIgnoreStart +if (!defined('T_TRAIT')) { + define('T_TRAIT', 1001); +} + +if (!defined('T_INSTEADOF')) { + define('T_INSTEADOF', 1002); +} + +if (!defined('T_CALLABLE')) { + define('T_CALLABLE', 1003); +} +// @codeCoverageIgnoreEnd + +/** + * Renders a PHP_CodeCoverage_Report_Node_File node. + * + * @category PHP + * @package CodeCoverage + * @author Sebastian Bergmann + * @copyright 2009-2013 Sebastian Bergmann + * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License + * @link http://github.com/sebastianbergmann/php-code-coverage + * @since Class available since Release 1.1.0 + */ +class PHP_CodeCoverage_Report_HTML_Renderer_File extends PHP_CodeCoverage_Report_HTML_Renderer +{ + /** + * @var boolean + */ + protected $highlight; + + /** + * Constructor. + * + * @param string $templatePath + * @param string $charset + * @param string $generator + * @param string $date + * @param integer $lowUpperBound + * @param integer $highLowerBound + * @param boolean $highlight + */ + public function __construct($templatePath, $charset, $generator, $date, $lowUpperBound, $highLowerBound, $highlight) + { + parent::__construct( + $templatePath, + $charset, + $generator, + $date, + $lowUpperBound, + $highLowerBound + ); + + $this->highlight = $highlight; + } + + /** + * @param PHP_CodeCoverage_Report_Node_File $node + * @param string $file + */ + public function render(PHP_CodeCoverage_Report_Node_File $node, $file) + { + $template = new Text_Template($this->templatePath . 'file.html'); + + $template->setVar( + array( + 'items' => $this->renderItems($node), + 'lines' => $this->renderSource($node) + ) + ); + + $this->setCommonTemplateVariables($template, $node); + + $template->renderTo($file); + } + + /** + * @param PHP_CodeCoverage_Report_Node_File $node + * @return string + */ + protected function renderItems(PHP_CodeCoverage_Report_Node_File $node) + { + $template = new Text_Template($this->templatePath . 'file_item.html'); + + $methodItemTemplate = new Text_Template( + $this->templatePath . 'method_item.html' + ); + + $items = $this->renderItemTemplate( + $template, + array( + 'name' => 'Total', + 'numClasses' => $node->getNumClassesAndTraits(), + 'numTestedClasses' => $node->getNumTestedClassesAndTraits(), + 'numMethods' => $node->getNumMethods(), + 'numTestedMethods' => $node->getNumTestedMethods(), + 'linesExecutedPercent' => $node->getLineExecutedPercent(FALSE), + 'linesExecutedPercentAsString' => $node->getLineExecutedPercent(), + 'numExecutedLines' => $node->getNumExecutedLines(), + 'numExecutableLines' => $node->getNumExecutableLines(), + 'testedMethodsPercent' => $node->getTestedMethodsPercent(FALSE), + 'testedMethodsPercentAsString' => $node->getTestedMethodsPercent(), + 'testedClassesPercent' => $node->getTestedClassesAndTraitsPercent(FALSE), + 'testedClassesPercentAsString' => $node->getTestedClassesAndTraitsPercent(), + 'crap' => 'CRAP' + ) + ); + + $items .= $this->renderFunctionItems( + $node->getFunctions(), $methodItemTemplate + ); + + $items .= $this->renderTraitOrClassItems( + $node->getTraits(), $template, $methodItemTemplate + ); + + $items .= $this->renderTraitOrClassItems( + $node->getClasses(), $template, $methodItemTemplate + ); + + return $items; + } + + /** + * @param array $items + * @param Text_Template $template + * @return string + */ + protected function renderTraitOrClassItems(array $items, Text_Template $template, Text_Template $methodItemTemplate) + { + if (empty($items)) { + return ''; + } + + $buffer = ''; + + foreach ($items as $name => $item) { + $numMethods = count($item['methods']); + $numTestedMethods = 0; + + foreach ($item['methods'] as $method) { + if ($method['executedLines'] == $method['executableLines']) { + $numTestedMethods++; + } + } + + $buffer .= $this->renderItemTemplate( + $template, + array( + 'name' => $name, + 'numClasses' => 1, + 'numTestedClasses' => $numTestedMethods == $numMethods ? 1 : 0, + 'numMethods' => $numMethods, + 'numTestedMethods' => $numTestedMethods, + 'linesExecutedPercent' => PHP_CodeCoverage_Util::percent( + $item['executedLines'], + $item['executableLines'], + FALSE + ), + 'linesExecutedPercentAsString' => PHP_CodeCoverage_Util::percent( + $item['executedLines'], + $item['executableLines'], + TRUE + ), + 'numExecutedLines' => $item['executedLines'], + 'numExecutableLines' => $item['executableLines'], + 'testedMethodsPercent' => PHP_CodeCoverage_Util::percent( + $numTestedMethods, + $numMethods, + FALSE + ), + 'testedMethodsPercentAsString' => PHP_CodeCoverage_Util::percent( + $numTestedMethods, + $numMethods, + TRUE + ), + 'testedClassesPercent' => PHP_CodeCoverage_Util::percent( + $numTestedMethods == $numMethods ? 1 : 0, + 1, + FALSE + ), + 'testedClassesPercentAsString' => PHP_CodeCoverage_Util::percent( + $numTestedMethods == $numMethods ? 1 : 0, + 1, + TRUE + ), + 'crap' => $item['crap'] + ) + ); + + foreach ($item['methods'] as $method) { + $buffer .= $this->renderFunctionOrMethodItem( + $methodItemTemplate, $method, ' ' + ); + } + } + + return $buffer; + } + + /** + * @param array $functions + * @param Text_Template $template + * @return string + */ + protected function renderFunctionItems(array $functions, Text_Template $template) + { + if (empty($functions)) { + return ''; + } + + $buffer = ''; + + foreach ($functions as $function) { + $buffer .= $this->renderFunctionOrMethodItem( + $template, $function + ); + } + + return $buffer; + } + + /** + * @param Text_Template $template + * @return string + */ + protected function renderFunctionOrMethodItem(Text_Template $template, array $item, $indent = '') + { + $numTestedItems = $item['executedLines'] == $item['executableLines'] ? 1 : 0; + + return $this->renderItemTemplate( + $template, + array( + 'name' => sprintf( + '%s%s', + $indent, + $item['startLine'], + htmlspecialchars($item['signature']) + ), + 'numMethods' => 1, + 'numTestedMethods' => $numTestedItems, + 'linesExecutedPercent' => PHP_CodeCoverage_Util::percent( + $item['executedLines'], + $item['executableLines'], + FALSE + ), + 'linesExecutedPercentAsString' => PHP_CodeCoverage_Util::percent( + $item['executedLines'], + $item['executableLines'], + TRUE + ), + 'numExecutedLines' => $item['executedLines'], + 'numExecutableLines' => $item['executableLines'], + 'testedMethodsPercent' => PHP_CodeCoverage_Util::percent( + $numTestedItems, + 1, + FALSE + ), + 'testedMethodsPercentAsString' => PHP_CodeCoverage_Util::percent( + $numTestedItems, + 1, + TRUE + ), + 'crap' => $item['crap'] + ) + ); + } + + /** + * @param PHP_CodeCoverage_Report_Node_File $node + * @return string + */ + protected function renderSource(PHP_CodeCoverage_Report_Node_File $node) + { + $coverageData = $node->getCoverageData(); + $ignoredLines = $node->getIgnoredLines(); + $testData = $node->getTestData(); + $codeLines = $this->loadFile($node->getPath()); + $lines = ''; + $i = 1; + + foreach ($codeLines as $line) { + $numTests = ''; + $trClass = ''; + $popoverContent = ''; + $popoverTitle = ''; + + if (!isset($ignoredLines[$i]) && isset($coverageData[$i])) { + $numTests = count($coverageData[$i]); + + if ($coverageData[$i] === NULL) { + $trClass = ' class="warning"'; + } + + else if ($numTests == 0) { + $trClass = ' class="danger"'; + } + + else { + $trClass = ' class="success popin"'; + $popoverContent = '
      '; + + if ($numTests > 1) { + $popoverTitle = $numTests . ' tests cover line ' . $i; + } else { + $popoverTitle = '1 test covers line ' . $i; + } + + foreach ($coverageData[$i] as $test) { + switch ($testData[$test]) { + case 0: { + $testCSS = ' class="success"'; + } + break; + + case 1: + case 2: { + $testCSS = ' class="warning"'; + } + break; + + case 3: { + $testCSS = ' class="danger"'; + } + break; + + case 4: { + $testCSS = ' class="danger"'; + } + break; + + default: { + $testCSS = ''; + } + } + + $popoverContent .= sprintf( + '%s', + + $testCSS, + htmlspecialchars($test) + ); + } + + $popoverContent .= '
    '; + } + } + + if (!empty($popoverTitle)) { + $popover = sprintf( + ' data-title="%s" data-content="%s" data-placement="bottom" data-html="true"', + $popoverTitle, + htmlspecialchars($popoverContent) + ); + } else { + $popover = ''; + } + + $lines .= sprintf( + ' %s' . "\n", + $trClass, + $popover, + $i, + $i, + $i, + !$this->highlight ? htmlspecialchars($line) : $line + ); + + $i++; + } + + return $lines; + } + + /** + * @param string $file + * @return array + */ + protected function loadFile($file) + { + $buffer = file_get_contents($file); + $lines = explode("\n", str_replace("\t", ' ', $buffer)); + $result = array(); + + if (count($lines) == 0) { + return $result; + } + + $lines = array_map('rtrim', $lines); + + if (!$this->highlight) { + unset($lines[count($lines)-1]); + return $lines; + } + + $tokens = token_get_all($buffer); + $stringFlag = FALSE; + $i = 0; + $result[$i] = ''; + + foreach ($tokens as $j => $token) { + if (is_string($token)) { + if ($token === '"' && $tokens[$j - 1] !== '\\') { + $result[$i] .= sprintf( + '%s', + + htmlspecialchars($token) + ); + + $stringFlag = !$stringFlag; + } else { + $result[$i] .= sprintf( + '%s', + + htmlspecialchars($token) + ); + } + + continue; + } + + list ($token, $value) = $token; + + $value = str_replace( + array("\t", ' '), + array('    ', ' '), + htmlspecialchars($value) + ); + + if ($value === "\n") { + $result[++$i] = ''; + } else { + $lines = explode("\n", $value); + + foreach ($lines as $jj => $line) { + $line = trim($line); + + if ($line !== '') { + if ($stringFlag) { + $colour = 'string'; + } else { + switch ($token) { + case T_INLINE_HTML: { + $colour = 'html'; + } + break; + + case T_COMMENT: + case T_DOC_COMMENT: { + $colour = 'comment'; + } + break; + + case T_ABSTRACT: + case T_ARRAY: + case T_AS: + case T_BREAK: + case T_CALLABLE: + case T_CASE: + case T_CATCH: + case T_CLASS: + case T_CLONE: + case T_CONTINUE: + case T_DEFAULT: + case T_ECHO: + case T_ELSE: + case T_ELSEIF: + case T_EMPTY: + case T_ENDDECLARE: + case T_ENDFOR: + case T_ENDFOREACH: + case T_ENDIF: + case T_ENDSWITCH: + case T_ENDWHILE: + case T_EXIT: + case T_EXTENDS: + case T_FINAL: + case T_FOREACH: + case T_FUNCTION: + case T_GLOBAL: + case T_IF: + case T_IMPLEMENTS: + case T_INCLUDE: + case T_INCLUDE_ONCE: + case T_INSTANCEOF: + case T_INSTEADOF: + case T_INTERFACE: + case T_ISSET: + case T_LOGICAL_AND: + case T_LOGICAL_OR: + case T_LOGICAL_XOR: + case T_NAMESPACE: + case T_NEW: + case T_PRIVATE: + case T_PROTECTED: + case T_PUBLIC: + case T_REQUIRE: + case T_REQUIRE_ONCE: + case T_RETURN: + case T_STATIC: + case T_THROW: + case T_TRAIT: + case T_TRY: + case T_UNSET: + case T_USE: + case T_VAR: + case T_WHILE: { + $colour = 'keyword'; + } + break; + + default: { + $colour = 'default'; + } + } + } + + $result[$i] .= sprintf( + '%s', + + $colour, + $line + ); + } + + if (isset($lines[$jj + 1])) { + $result[++$i] = ''; + } + } + } + } + + unset($result[count($result)-1]); + + return $result; + } +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/coverage_bar.html.dist b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/coverage_bar.html.dist new file mode 100644 index 00000000000..73a11a1a103 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/coverage_bar.html.dist @@ -0,0 +1,3 @@ +
    +
    +
    diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/bootstrap-responsive.min.css b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/bootstrap-responsive.min.css new file mode 100644 index 00000000000..5cb833ff082 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/bootstrap-responsive.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap Responsive v2.2.2 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */@-ms-viewport{width:device-width}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.hidden{display:none;visibility:hidden}.visible-phone{display:none!important}.visible-tablet{display:none!important}.hidden-desktop{display:none!important}.visible-desktop{display:inherit!important}@media(min-width:768px) and (max-width:979px){.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}.visible-tablet{display:inherit!important}.hidden-tablet{display:none!important}}@media(max-width:767px){.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}.visible-phone{display:inherit!important}.hidden-phone{display:none!important}}@media(min-width:1200px){.row{margin-left:-30px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:30px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:1170px}.span12{width:1170px}.span11{width:1070px}.span10{width:970px}.span9{width:870px}.span8{width:770px}.span7{width:670px}.span6{width:570px}.span5{width:470px}.span4{width:370px}.span3{width:270px}.span2{width:170px}.span1{width:70px}.offset12{margin-left:1230px}.offset11{margin-left:1130px}.offset10{margin-left:1030px}.offset9{margin-left:930px}.offset8{margin-left:830px}.offset7{margin-left:730px}.offset6{margin-left:630px}.offset5{margin-left:530px}.offset4{margin-left:430px}.offset3{margin-left:330px}.offset2{margin-left:230px}.offset1{margin-left:130px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.564102564102564%;*margin-left:2.5109110747408616%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.564102564102564%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.45299145299145%;*width:91.39979996362975%}.row-fluid .span10{width:82.90598290598291%;*width:82.8527914166212%}.row-fluid .span9{width:74.35897435897436%;*width:74.30578286961266%}.row-fluid .span8{width:65.81196581196582%;*width:65.75877432260411%}.row-fluid .span7{width:57.26495726495726%;*width:57.21176577559556%}.row-fluid .span6{width:48.717948717948715%;*width:48.664757228587014%}.row-fluid .span5{width:40.17094017094017%;*width:40.11774868157847%}.row-fluid .span4{width:31.623931623931625%;*width:31.570740134569924%}.row-fluid .span3{width:23.076923076923077%;*width:23.023731587561375%}.row-fluid .span2{width:14.52991452991453%;*width:14.476723040552828%}.row-fluid .span1{width:5.982905982905983%;*width:5.929714493544281%}.row-fluid .offset12{margin-left:105.12820512820512%;*margin-left:105.02182214948171%}.row-fluid .offset12:first-child{margin-left:102.56410256410257%;*margin-left:102.45771958537915%}.row-fluid .offset11{margin-left:96.58119658119658%;*margin-left:96.47481360247316%}.row-fluid .offset11:first-child{margin-left:94.01709401709402%;*margin-left:93.91071103837061%}.row-fluid .offset10{margin-left:88.03418803418803%;*margin-left:87.92780505546462%}.row-fluid .offset10:first-child{margin-left:85.47008547008548%;*margin-left:85.36370249136206%}.row-fluid .offset9{margin-left:79.48717948717949%;*margin-left:79.38079650845607%}.row-fluid .offset9:first-child{margin-left:76.92307692307693%;*margin-left:76.81669394435352%}.row-fluid .offset8{margin-left:70.94017094017094%;*margin-left:70.83378796144753%}.row-fluid .offset8:first-child{margin-left:68.37606837606839%;*margin-left:68.26968539734497%}.row-fluid .offset7{margin-left:62.393162393162385%;*margin-left:62.28677941443899%}.row-fluid .offset7:first-child{margin-left:59.82905982905982%;*margin-left:59.72267685033642%}.row-fluid .offset6{margin-left:53.84615384615384%;*margin-left:53.739770867430444%}.row-fluid .offset6:first-child{margin-left:51.28205128205128%;*margin-left:51.175668303327875%}.row-fluid .offset5{margin-left:45.299145299145295%;*margin-left:45.1927623204219%}.row-fluid .offset5:first-child{margin-left:42.73504273504273%;*margin-left:42.62865975631933%}.row-fluid .offset4{margin-left:36.75213675213675%;*margin-left:36.645753773413354%}.row-fluid .offset4:first-child{margin-left:34.18803418803419%;*margin-left:34.081651209310785%}.row-fluid .offset3{margin-left:28.205128205128204%;*margin-left:28.0987452264048%}.row-fluid .offset3:first-child{margin-left:25.641025641025642%;*margin-left:25.53464266230224%}.row-fluid .offset2{margin-left:19.65811965811966%;*margin-left:19.551736679396257%}.row-fluid .offset2:first-child{margin-left:17.094017094017094%;*margin-left:16.98763411529369%}.row-fluid .offset1{margin-left:11.11111111111111%;*margin-left:11.004728132387708%}.row-fluid .offset1:first-child{margin-left:8.547008547008547%;*margin-left:8.440625568285142%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:30px}input.span12,textarea.span12,.uneditable-input.span12{width:1156px}input.span11,textarea.span11,.uneditable-input.span11{width:1056px}input.span10,textarea.span10,.uneditable-input.span10{width:956px}input.span9,textarea.span9,.uneditable-input.span9{width:856px}input.span8,textarea.span8,.uneditable-input.span8{width:756px}input.span7,textarea.span7,.uneditable-input.span7{width:656px}input.span6,textarea.span6,.uneditable-input.span6{width:556px}input.span5,textarea.span5,.uneditable-input.span5{width:456px}input.span4,textarea.span4,.uneditable-input.span4{width:356px}input.span3,textarea.span3,.uneditable-input.span3{width:256px}input.span2,textarea.span2,.uneditable-input.span2{width:156px}input.span1,textarea.span1,.uneditable-input.span1{width:56px}.thumbnails{margin-left:-30px}.thumbnails>li{margin-left:30px}.row-fluid .thumbnails{margin-left:0}}@media(min-width:768px) and (max-width:979px){.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:724px}.span12{width:724px}.span11{width:662px}.span10{width:600px}.span9{width:538px}.span8{width:476px}.span7{width:414px}.span6{width:352px}.span5{width:290px}.span4{width:228px}.span3{width:166px}.span2{width:104px}.span1{width:42px}.offset12{margin-left:764px}.offset11{margin-left:702px}.offset10{margin-left:640px}.offset9{margin-left:578px}.offset8{margin-left:516px}.offset7{margin-left:454px}.offset6{margin-left:392px}.offset5{margin-left:330px}.offset4{margin-left:268px}.offset3{margin-left:206px}.offset2{margin-left:144px}.offset1{margin-left:82px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.7624309392265194%;*margin-left:2.709239449864817%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.7624309392265194%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.43646408839778%;*width:91.38327259903608%}.row-fluid .span10{width:82.87292817679558%;*width:82.81973668743387%}.row-fluid .span9{width:74.30939226519337%;*width:74.25620077583166%}.row-fluid .span8{width:65.74585635359117%;*width:65.69266486422946%}.row-fluid .span7{width:57.18232044198895%;*width:57.12912895262725%}.row-fluid .span6{width:48.61878453038674%;*width:48.56559304102504%}.row-fluid .span5{width:40.05524861878453%;*width:40.00205712942283%}.row-fluid .span4{width:31.491712707182323%;*width:31.43852121782062%}.row-fluid .span3{width:22.92817679558011%;*width:22.87498530621841%}.row-fluid .span2{width:14.3646408839779%;*width:14.311449394616199%}.row-fluid .span1{width:5.801104972375691%;*width:5.747913483013988%}.row-fluid .offset12{margin-left:105.52486187845304%;*margin-left:105.41847889972962%}.row-fluid .offset12:first-child{margin-left:102.76243093922652%;*margin-left:102.6560479605031%}.row-fluid .offset11{margin-left:96.96132596685082%;*margin-left:96.8549429881274%}.row-fluid .offset11:first-child{margin-left:94.1988950276243%;*margin-left:94.09251204890089%}.row-fluid .offset10{margin-left:88.39779005524862%;*margin-left:88.2914070765252%}.row-fluid .offset10:first-child{margin-left:85.6353591160221%;*margin-left:85.52897613729868%}.row-fluid .offset9{margin-left:79.8342541436464%;*margin-left:79.72787116492299%}.row-fluid .offset9:first-child{margin-left:77.07182320441989%;*margin-left:76.96544022569647%}.row-fluid .offset8{margin-left:71.2707182320442%;*margin-left:71.16433525332079%}.row-fluid .offset8:first-child{margin-left:68.50828729281768%;*margin-left:68.40190431409427%}.row-fluid .offset7{margin-left:62.70718232044199%;*margin-left:62.600799341718584%}.row-fluid .offset7:first-child{margin-left:59.94475138121547%;*margin-left:59.838368402492065%}.row-fluid .offset6{margin-left:54.14364640883978%;*margin-left:54.037263430116376%}.row-fluid .offset6:first-child{margin-left:51.38121546961326%;*margin-left:51.27483249088986%}.row-fluid .offset5{margin-left:45.58011049723757%;*margin-left:45.47372751851417%}.row-fluid .offset5:first-child{margin-left:42.81767955801105%;*margin-left:42.71129657928765%}.row-fluid .offset4{margin-left:37.01657458563536%;*margin-left:36.91019160691196%}.row-fluid .offset4:first-child{margin-left:34.25414364640884%;*margin-left:34.14776066768544%}.row-fluid .offset3{margin-left:28.45303867403315%;*margin-left:28.346655695309746%}.row-fluid .offset3:first-child{margin-left:25.69060773480663%;*margin-left:25.584224756083227%}.row-fluid .offset2{margin-left:19.88950276243094%;*margin-left:19.783119783707537%}.row-fluid .offset2:first-child{margin-left:17.12707182320442%;*margin-left:17.02068884448102%}.row-fluid .offset1{margin-left:11.32596685082873%;*margin-left:11.219583872105325%}.row-fluid .offset1:first-child{margin-left:8.56353591160221%;*margin-left:8.457152932878806%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:710px}input.span11,textarea.span11,.uneditable-input.span11{width:648px}input.span10,textarea.span10,.uneditable-input.span10{width:586px}input.span9,textarea.span9,.uneditable-input.span9{width:524px}input.span8,textarea.span8,.uneditable-input.span8{width:462px}input.span7,textarea.span7,.uneditable-input.span7{width:400px}input.span6,textarea.span6,.uneditable-input.span6{width:338px}input.span5,textarea.span5,.uneditable-input.span5{width:276px}input.span4,textarea.span4,.uneditable-input.span4{width:214px}input.span3,textarea.span3,.uneditable-input.span3{width:152px}input.span2,textarea.span2,.uneditable-input.span2{width:90px}input.span1,textarea.span1,.uneditable-input.span1{width:28px}}@media(max-width:767px){body{padding-right:20px;padding-left:20px}.navbar-fixed-top,.navbar-fixed-bottom,.navbar-static-top{margin-right:-20px;margin-left:-20px}.container-fluid{padding:0}.dl-horizontal dt{float:none;width:auto;clear:none;text-align:left}.dl-horizontal dd{margin-left:0}.container{width:auto}.row-fluid{width:100%}.row,.thumbnails{margin-left:0}.thumbnails>li{float:none;margin-left:0}[class*="span"],.uneditable-input[class*="span"],.row-fluid [class*="span"]{display:block;float:none;width:100%;margin-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.span12,.row-fluid .span12{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="offset"]:first-child{margin-left:0}.input-large,.input-xlarge,.input-xxlarge,input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.input-prepend input,.input-append input,.input-prepend input[class*="span"],.input-append input[class*="span"]{display:inline-block;width:auto}.controls-row [class*="span"]+[class*="span"]{margin-left:0}.modal{position:fixed;top:20px;right:20px;left:20px;width:auto;margin:0}.modal.fade{top:-100px}.modal.fade.in{top:20px}}@media(max-width:480px){.nav-collapse{-webkit-transform:translate3d(0,0,0)}.page-header h1 small{display:block;line-height:20px}input[type="checkbox"],input[type="radio"]{border:1px solid #ccc}.form-horizontal .control-label{float:none;width:auto;padding-top:0;text-align:left}.form-horizontal .controls{margin-left:0}.form-horizontal .control-list{padding-top:0}.form-horizontal .form-actions{padding-right:10px;padding-left:10px}.media .pull-left,.media .pull-right{display:block;float:none;margin-bottom:10px}.media-object{margin-right:0;margin-left:0}.modal{top:10px;right:10px;left:10px}.modal-header .close{padding:10px;margin:-10px}.carousel-caption{position:static}}@media(max-width:979px){body{padding-top:0}.navbar-fixed-top,.navbar-fixed-bottom{position:static}.navbar-fixed-top{margin-bottom:20px}.navbar-fixed-bottom{margin-top:20px}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding:5px}.navbar .container{width:auto;padding:0}.navbar .brand{padding-right:10px;padding-left:10px;margin:0 0 0 -5px}.nav-collapse{clear:both}.nav-collapse .nav{float:none;margin:0 0 10px}.nav-collapse .nav>li{float:none}.nav-collapse .nav>li>a{margin-bottom:2px}.nav-collapse .nav>.divider-vertical{display:none}.nav-collapse .nav .nav-header{color:#777;text-shadow:none}.nav-collapse .nav>li>a,.nav-collapse .dropdown-menu a{padding:9px 15px;font-weight:bold;color:#777;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.nav-collapse .btn{padding:4px 10px 4px;font-weight:normal;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.nav-collapse .dropdown-menu li+li a{margin-bottom:2px}.nav-collapse .nav>li>a:hover,.nav-collapse .dropdown-menu a:hover{background-color:#f2f2f2}.navbar-inverse .nav-collapse .nav>li>a,.navbar-inverse .nav-collapse .dropdown-menu a{color:#999}.navbar-inverse .nav-collapse .nav>li>a:hover,.navbar-inverse .nav-collapse .dropdown-menu a:hover{background-color:#111}.nav-collapse.in .btn-group{padding:0;margin-top:5px}.nav-collapse .dropdown-menu{position:static;top:auto;left:auto;display:none;float:none;max-width:none;padding:0;margin:0 15px;background-color:transparent;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.nav-collapse .open>.dropdown-menu{display:block}.nav-collapse .dropdown-menu:before,.nav-collapse .dropdown-menu:after{display:none}.nav-collapse .dropdown-menu .divider{display:none}.nav-collapse .nav>li>.dropdown-menu:before,.nav-collapse .nav>li>.dropdown-menu:after{display:none}.nav-collapse .navbar-form,.nav-collapse .navbar-search{float:none;padding:10px 15px;margin:10px 0;border-top:1px solid #f2f2f2;border-bottom:1px solid #f2f2f2;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}.navbar-inverse .nav-collapse .navbar-form,.navbar-inverse .nav-collapse .navbar-search{border-top-color:#111;border-bottom-color:#111}.navbar .nav-collapse .nav.pull-right{float:none;margin-left:0}.nav-collapse,.nav-collapse.collapse{height:0;overflow:hidden}.navbar .btn-navbar{display:block}.navbar-static .navbar-inner{padding-right:10px;padding-left:10px}}@media(min-width:980px){.nav-collapse.collapse{height:auto!important;overflow:visible!important}} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/bootstrap.min.css b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/bootstrap.min.css new file mode 100644 index 00000000000..140f731dfa8 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/bootstrap.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap v2.2.2 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{width:auto\9;height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img,.google-maps img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}label,select,button,input[type="button"],input[type="reset"],input[type="submit"],input[type="radio"],input[type="checkbox"]{cursor:pointer}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.127659574468085%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}a.muted:hover{color:#808080}.text-warning{color:#c09853}a.text-warning:hover{color:#a47e3c}.text-error{color:#b94a48}a.text-error:hover{color:#953b39}.text-info{color:#3a87ad}a.text-info:hover{color:#2d6987}.text-success{color:#468847}a.text-success:hover{color:#356635}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:20px;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}ul.inline,ol.inline{margin-left:0;list-style:none}ul.inline>li,ol.inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;line-height:0;content:""}.dl-horizontal:after{clear:both}.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:25px}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;white-space:nowrap;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#555;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #ccc}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:20px;padding-left:20px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"],.row-fluid .controls-row [class*="span"]{float:left}.controls-row .checkbox[class*="span"],.controls-row .radio[class*="span"]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning .control-label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error .control-label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success .control-label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}.control-group.info .control-label,.control-group.info .help-block,.control-group.info .help-inline{color:#3a87ad}.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#3a87ad}.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#3a87ad;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#2d6987;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3}.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#3a87ad;background-color:#d9edf7;border-color:#3a87ad}input:focus:invalid,textarea:focus:invalid,select:focus:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{margin-bottom:5px;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu{font-size:14px}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn,.input-append .btn-group>.dropdown-toggle,.input-prepend .btn-group>.dropdown-toggle{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input+.btn-group .btn:last-child,.input-append select+.btn-group .btn:last-child,.input-append .uneditable-input+.btn-group .btn:last-child{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append .add-on:last-child,.input-append .btn:last-child,.input-append .btn-group:last-child>.dropdown-toggle{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .btn-group:first-child{margin-left:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block,.form-horizontal .uneditable-input+.help-block,.form-horizontal .input-prepend+.help-block,.form-horizontal .input-append+.help-block{margin-top:10px}.form-horizontal .form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child>th:first-child,.table-bordered tbody:first-child tr:first-child>td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child>th:last-child,.table-bordered tbody:first-child tr:first-child>td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child>th:first-child,.table-bordered tbody:last-child tr:last-child>td:first-child,.table-bordered tfoot:last-child tr:last-child>td:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child>th:last-child,.table-bordered tbody:last-child tr:last-child>td:last-child,.table-bordered tfoot:last-child tr:last-child>td:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}.table-bordered tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-striped tbody>tr:nth-child(odd)>td,.table-striped tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover tbody tr:hover td,.table-hover tbody tr:hover th{background-color:#f5f5f5}table td[class*="span"],table th[class*="span"],.row-fluid table td[class*="span"],.row-fluid table th[class*="span"]{display:table-cell;float:none;margin-left:0}.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody tr.success td{background-color:#dff0d8}.table tbody tr.error td{background-color:#f2dede}.table tbody tr.warning td{background-color:#fcf8e3}.table tbody tr.info td{background-color:#d9edf7}.table-hover tbody tr.success:hover td{background-color:#d0e9c6}.table-hover tbody tr.error:hover td{background-color:#ebcccc}.table-hover tbody tr.warning:hover td{background-color:#faf2cc}.table-hover tbody tr.info:hover td{background-color:#c4e3f3}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .disabled>a,.dropdown-menu .disabled>a:hover{color:#999}.dropdown-menu .disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open{*z-index:1000}.open>.dropdown-menu{display:block}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{z-index:1051;margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #bbb;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:11px 19px;font-size:17.5px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.btn-large [class^="icon-"],.btn-large [class*=" icon-"]{margin-top:4px}.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-small [class^="icon-"],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini [class^="icon-"],.btn-mini [class*=" icon-"]{margin-top:-1px}.btn-mini{padding:0 6px;font-size:10.5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn{border-color:#c5c5c5;border-color:rgba(0,0,0,0.15) rgba(0,0,0,0.15) rgba(0,0,0,0.25)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;border-color:#04c #04c #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-moz-linear-gradient(top,#62c462,#51a351);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-moz-linear-gradient(top,#444,#222);background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-repeat:repeat-x;border-color:#222 #222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover{color:#005580;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover{color:#333;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*margin-left:.3em;font-size:0;white-space:nowrap;vertical-align:middle;*zoom:1}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:14px}.btn-group>.btn-mini{font-size:10.5px}.btn-group>.btn-small{font-size:11.9px}.btn-group>.btn-large{font-size:17.5px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-mini .caret,.btn-small .caret,.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical>.btn{display:block;float:none;max-width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical>.btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical>.btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical>.btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical>.btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert,.alert h4{color:#c09853}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success h4{color:#468847}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger h4,.alert-error h4{color:#b94a48}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info h4{color:#3a87ad}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li>a>img{max-width:none}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover{border-color:#eee #ddd #eee #eee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover{border-color:#eee #eee #eee #ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);*zoom:1;-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar-inner:before,.navbar-inner:after{display:table;line-height:0;content:""}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#777;text-shadow:0 1px 0 #fff}.navbar .brand:hover{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px;color:#777}.navbar-link{color:#777}.navbar-link:hover{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:5px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:5px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,0.1);box-shadow:0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,0.1);box-shadow:0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#777;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown>a:hover .caret{border-top-color:#555;border-bottom-color:#555}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#777;border-bottom-color:#777}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover{color:#fff}.navbar-inverse .brand{color:#999}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>a:hover .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-moz-linear-gradient(top,#151515,#040404);background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb>li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb>li>.divider{padding:0 5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#f5f5f5}.pagination ul>.active>a,.pagination ul>.active>span{color:#999;cursor:default}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover{color:#999;cursor:default;background-color:transparent}.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:17.5px}.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-bottomleft:3px;-moz-border-radius-topleft:3px}.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:3px}.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:0 6px;font-size:10.5px}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>span{color:#999;cursor:default;background-color:#fff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:10%;left:50%;z-index:1050;width:560px;margin-left:-280px;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;outline:0;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:10%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{position:relative;max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.tooltip{position:absolute;z-index:1030;display:block;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{margin-top:-3px}.tooltip.right{margin-left:3px}.tooltip.bottom{margin-top:3px}.tooltip.left{margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;width:236px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media .pull-left{margin-right:10px}.media .pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-right:9px;padding-left:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.label:empty,.badge:empty{display:none}a.label:hover,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img{display:block;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/style.css b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/style.css new file mode 100644 index 00000000000..2ef16289413 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/css/style.css @@ -0,0 +1,86 @@ +body { + padding-top: 10px; +} + +.popover { + width: 600px; +} + +.table td { + padding-top: 3px; + padding-bottom: 3px; +} + +.table-condensed td { + padding-top: 0; + padding-bottom: 0; +} + +.table .progress { + margin-bottom: inherit; +} + +.table-borderless th, .table-borderless td { + border: 0 !important; +} + +.table tbody td.success, li.success, span.success { + background-color: #dff0d8; +} + +.table tbody tr.danger, .table tbody td.danger, li.danger, span.danger { + background-color: #f2dede; +} + +.table tbody td.warning, li.warning, span.warning { + background-color: #fcf8e3; +} + +.table tbody td.info { + background-color: #d9edf7; +} + +td.big { + width: 100px; +} + +td.small { +} + +td.codeLine { + font-family: monospace; + white-space: pre; +} + +td span.comment { + color: #888a85; +} + +td span.default { + color: #2e3436; +} + +td span.html { + color: #888a85; +} + +td span.keyword { + color: #2e3436; + font-weight: bold; +} + +pre span.string { + color: #2e3436; +} + +span.success, span.warning, span.danger { + margin-right: 2px; + padding-left: 10px; + padding-right: 10px; + text-align: center; +} + +#classCoverageDistribution, #classComplexity { + height: 200px; + width: 475px; +} diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/dashboard.html.dist b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/dashboard.html.dist new file mode 100644 index 00000000000..eb58b36f968 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/dashboard.html.dist @@ -0,0 +1,117 @@ + + + + + Dashboard for {full_path} + + + + + + + +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    +
    +

    Class Coverage Distribution

    +
    +
    +
    +

    Class Complexity

    +
    +
    +
    +
    +
    +

    Top Project Risks

    +
      +{top_project_risks} +
    +
    +
    +

    Least Tested Methods

    +
      +{least_tested_methods} +
    +
    +
    + +
    + + + + + + diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/directory.html.dist b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/directory.html.dist new file mode 100644 index 00000000000..347440ce7d7 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/directory.html.dist @@ -0,0 +1,58 @@ + + + + + Code Coverage for {full_path} + + + + + + + +
    +
    +
    +
    + +
    +
    +
    +
    +
    + + + + + + + + + + + + + + +{items} + +
     
    Code Coverage
     
    Lines
    Functions and Methods
    Classes and Traits
    +
    +

    Legend

    +

    + Low: 0% to {low_upper_bound}% + Medium: {low_upper_bound}% to {high_lower_bound}% + High: {high_lower_bound}% to 100% +

    +

    + Generated by PHP_CodeCoverage {version} using PHP {php_version}{generator} at {date}. +

    +
    +
    + + + diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/directory_item.html.dist b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/directory_item.html.dist new file mode 100644 index 00000000000..4a19a06f468 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/directory_item.html.dist @@ -0,0 +1,13 @@ + + {icon}{name} + {lines_bar} +
    {lines_executed_percent}
    +
    {lines_number}
    + {methods_bar} +
    {methods_tested_percent}
    +
    {methods_number}
    + {classes_bar} +
    {classes_tested_percent}
    +
    {classes_number}
    + + diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/file.html.dist b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/file.html.dist new file mode 100644 index 00000000000..31a513ee259 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/file.html.dist @@ -0,0 +1,65 @@ + + + + + Code Coverage for {full_path} + + + + + + + +
    +
    +
    +
    + +
    +
    +
    +
    +
    + + + + + + + + + + + + + + +{items} + +
     
    Code Coverage
     
    Classes and Traits
    Functions and Methods
    Lines
    + + +{lines} + +
    + +
    + + + + + diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/file_item.html.dist b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/file_item.html.dist new file mode 100644 index 00000000000..7bff4e53eeb --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/file_item.html.dist @@ -0,0 +1,14 @@ + + {name} + {classes_bar} +
    {classes_tested_percent}
    +
    {classes_number}
    + {methods_bar} +
    {methods_tested_percent}
    +
    {methods_number}
    + {crap} + {lines_bar} +
    {lines_executed_percent}
    +
    {lines_number}
    + + diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/img/glyphicons-halflings-white.png b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/img/glyphicons-halflings-white.png new file mode 100644 index 0000000000000000000000000000000000000000..3bf6484a29d8da269f9bc874b25493a45fae3bae GIT binary patch literal 8777 zcmZvC1yGz#v+m*$LXcp=A$ZWB0fL7wNbp_U*$~{_gL`my3oP#L!5tQYy99Ta`+g_q zKlj|KJ2f@c)ARJx{q*bbkhN_!|Wn*Vos8{TEhUT@5e;_WJsIMMcG5%>DiS&dv_N`4@J0cnAQ-#>RjZ z00W5t&tJ^l-QC*ST1-p~00u^9XJ=AUl7oW-;2a+x2k__T=grN{+1c4XK0ZL~^z^i$ zp&>vEhr@4fZWb380S18T&!0cQ3IKpHF)?v=b_NIm0Q>vwY7D0baZ)n z31Fa5sELUQARIVaU0nqf0XzT+fB_63aA;@<$l~wse|mcA;^G1TmX?-)e)jkGPfkuA z92@|!<>h5S_4f8QP-JRq>d&7)^Yin8l7K8gED$&_FaV?gY+wLjpoW%~7NDe=nHfMG z5DO3j{R9kv5GbssrUpO)OyvVrlx>u0UKD0i;Dpm5S5dY16(DL5l{ixz|mhJU@&-OWCTb7_%}8-fE(P~+XIRO zJU|wp1|S>|J3KrLcz^+v1f&BDpd>&MAaibR4#5A_4(MucZwG9E1h4@u0P@C8;oo+g zIVj7kfJi{oV~E(NZ*h(@^-(Q(C`Psb3KZ{N;^GB(a8NE*Vwc715!9 zr-H4Ao|T_c6+VT_JH9H+P3>iXSt!a$F`>s`jn`w9GZ_~B!{0soaiV|O_c^R2aWa%}O3jUE)WO=pa zs~_Wz08z|ieY5A%$@FcBF9^!1a}m5ks@7gjn;67N>}S~Hrm`4sM5Hh`q7&5-N{|31 z6x1{ol7BnskoViZ0GqbLa#kW`Z)VCjt1MysKg|rT zi!?s##Ck>8c zpi|>$lGlw#@yMNi&V4`6OBGJ(H&7lqLlcTQ&1zWriG_fL>BnFcr~?;E93{M-xIozQ zO=EHQ#+?<}%@wbWWv23#!V70h9MOuUVaU>3kpTvYfc|LBw?&b*89~Gc9i&8tlT#kF ztpbZoAzkdB+UTy=tx%L3Z4)I{zY(Kb)eg{InobSJmNwPZt$14aS-uc4eKuY8h$dtfyxu^a%zA)>fYI&)@ZXky?^{5>xSC?;w4r&td6vBdi%vHm4=XJH!3yL3?Ep+T5aU_>i;yr_XGq zxZfCzUU@GvnoIk+_Nd`aky>S&H!b*{A%L>?*XPAgWL(Vf(k7qUS}>Zn=U(ZfcOc{B z3*tOHH@t5Ub5D~#N7!Fxx}P2)sy{vE_l(R7$aW&CX>c|&HY+7};vUIietK%}!phrCuh+;C@1usp;XLU<8Gq8P!rEI3ieg#W$!= zQcZr{hp>8sF?k&Yl0?B84OneiQxef-4TEFrq3O~JAZR}yEJHA|Xkqd49tR&8oq{zP zY@>J^HBV*(gJvJZc_0VFN7Sx?H7#75E3#?N8Z!C+_f53YU}pyggxx1?wQi5Yb-_`I`_V*SMx5+*P^b=ec5RON-k1cIlsBLk}(HiaJyab0`CI zo0{=1_LO$~oE2%Tl_}KURuX<`+mQN_sTdM&* zkFf!Xtl^e^gTy6ON=&gTn6)$JHQq2)33R@_!#9?BLNq-Wi{U|rVX7Vny$l6#+SZ@KvQt@VYb%<9JfapI^b9j=wa+Tqb4ei;8c5 z&1>Uz@lVFv6T4Z*YU$r4G`g=91lSeA<=GRZ!*KTWKDPR}NPUW%peCUj`Ix_LDq!8| zMH-V`Pv!a~QkTL||L@cqiTz)*G-0=ytr1KqTuFPan9y4gYD5>PleK`NZB$ev@W%t= zkp)_=lBUTLZJpAtZg;pjI;7r2y|26-N7&a(hX|`1YNM9N8{>8JAuv}hp1v`3JHT-=5lbXpbMq7X~2J5Kl zh7tyU`_AusMFZ{ej9D;Uyy;SQ!4nwgSnngsYBwdS&EO3NS*o04)*juAYl;57c2Ly0(DEZ8IY?zSph-kyxu+D`tt@oU{32J#I{vmy=#0ySPK zA+i(A3yl)qmTz*$dZi#y9FS;$;h%bY+;StNx{_R56Otq+?pGe^T^{5d7Gs&?`_r`8 zD&dzOA|j8@3A&FR5U3*eQNBf<4^4W_iS_()*8b4aaUzfk2 zzIcMWSEjm;EPZPk{j{1>oXd}pXAj!NaRm8{Sjz!D=~q3WJ@vmt6ND_?HI~|wUS1j5 z9!S1MKr7%nxoJ3k`GB^7yV~*{n~O~n6($~x5Bu{7s|JyXbAyKI4+tO(zZYMslK;Zc zzeHGVl{`iP@jfSKq>R;{+djJ9n%$%EL()Uw+sykjNQdflkJZSjqV_QDWivbZS~S{K zkE@T^Jcv)Dfm93!mf$XYnCT--_A$zo9MOkPB6&diM8MwOfV?+ApNv`moV@nqn>&lv zYbN1-M|jc~sG|yLN^1R2=`+1ih3jCshg`iP&mY$GMTcY^W^T`WOCX!{-KHmZ#GiRH zYl{|+KLn5!PCLtBy~9i}`#d^gCDDx$+GQb~uc;V#K3OgbbOG0j5{BRG-si%Bo{@lB zGIt+Ain8^C`!*S0d0OSWVO+Z89}}O8aFTZ>p&k}2gGCV zh#<$gswePFxWGT$4DC^8@84_e*^KT74?7n8!$8cg=sL$OlKr&HMh@Rr5%*Wr!xoOl zo7jItnj-xYgVTX)H1=A2bD(tleEH57#V{xAeW_ezISg5OC zg=k>hOLA^urTH_e6*vSYRqCm$J{xo}-x3@HH;bsHD1Z`Pzvsn}%cvfw%Q(}h`Dgtb z0_J^niUmoCM5$*f)6}}qi(u;cPgxfyeVaaVmOsG<)5`6tzU4wyhF;k|~|x>7-2hXpVBpc5k{L4M`Wbe6Q?tr^*B z`Y*>6*&R#~%JlBIitlZ^qGe3s21~h3U|&k%%jeMM;6!~UH|+0+<5V-_zDqZQN79?n?!Aj!Nj`YMO9?j>uqI9-Tex+nJD z%e0#Yca6(zqGUR|KITa?9x-#C0!JKJHO(+fy@1!B$%ZwJwncQW7vGYv?~!^`#L~Um zOL++>4qmqW`0Chc0T23G8|vO)tK=Z2`gvS4*qpqhIJCEv9i&&$09VO8YOz|oZ+ubd zNXVdLc&p=KsSgtmIPLN69P7xYkYQ1vJ?u1g)T!6Ru`k2wkdj*wDC)VryGu2=yb0?F z>q~~e>KZ0d_#7f3UgV%9MY1}vMgF{B8yfE{HL*pMyhYF)WDZ^^3vS8F zGlOhs%g_~pS3=WQ#494@jAXwOtr^Y|TnQ5zki>qRG)(oPY*f}U_=ip_{qB0!%w7~G zWE!P4p3khyW-JJnE>eECuYfI?^d366Shq!Wm#x&jAo>=HdCllE$>DPO0N;y#4G)D2y#B@5=N=+F%Xo2n{gKcPcK2!hP*^WSXl+ut; zyLvVoY>VL{H%Kd9^i~lsb8j4>$EllrparEOJNT?Ym>vJa$(P^tOG)5aVb_5w^*&M0 zYOJ`I`}9}UoSnYg#E(&yyK(tqr^@n}qU2H2DhkK-`2He% zgXr_4kpXoQHxAO9S`wEdmqGU4j=1JdG!OixdqB4PPP6RXA}>GM zumruUUH|ZG2$bBj)Qluj&uB=dRb)?^qomw?Z$X%#D+Q*O97eHrgVB2*mR$bFBU`*} zIem?dM)i}raTFDn@5^caxE^XFXVhBePmH9fqcTi`TLaXiueH=@06sl}>F%}h9H_e9 z>^O?LxM1EjX}NVppaO@NNQr=AtHcH-BU{yBT_vejJ#J)l^cl69Z7$sk`82Zyw7Wxt z=~J?hZm{f@W}|96FUJfy65Gk8?^{^yjhOahUMCNNpt5DJw}ZKH7b!bGiFY9y6OY&T z_N)?Jj(MuLTN36ZCJ6I5Xy7uVlrb$o*Z%=-)kPo9s?<^Yqz~!Z* z_mP8(unFq65XSi!$@YtieSQ!<7IEOaA9VkKI?lA`*(nURvfKL8cX}-+~uw9|_5)uC2`ZHcaeX7L8aG6Ghleg@F9aG%X$#g6^yP5apnB>YTz&EfS{q z9UVfSyEIczebC)qlVu5cOoMzS_jrC|)rQlAzK7sfiW0`M8mVIohazPE9Jzn*qPt%6 zZL8RELY@L09B83@Be;x5V-IHnn$}{RAT#<2JA%ttlk#^(%u}CGze|1JY5MPhbfnYG zIw%$XfBmA-<_pKLpGKwbRF$#P;@_)ech#>vj25sv25VM$ouo)?BXdRcO{)*OwTw)G zv43W~T6ekBMtUD%5Bm>`^Ltv!w4~65N!Ut5twl!Agrzyq4O2Fi3pUMtCU~>9gt_=h-f% z;1&OuSu?A_sJvIvQ+dZNo3?m1%b1+s&UAx?8sUHEe_sB7zkm4R%6)<@oYB_i5>3Ip zIA+?jVdX|zL{)?TGpx+=Ta>G80}0}Ax+722$XFNJsC1gcH56{8B)*)eU#r~HrC&}` z|EWW92&;6y;3}!L5zXa385@?-D%>dSvyK;?jqU2t_R3wvBW;$!j45uQ7tyEIQva;Db}r&bR3kqNSh)Q_$MJ#Uj3Gj1F;)sO|%6z#@<+ zi{pbYsYS#u`X$Nf($OS+lhw>xgjos1OnF^$-I$u;qhJswhH~p|ab*nO>zBrtb0ndn zxV0uh!LN`&xckTP+JW}gznSpU492)u+`f{9Yr)js`NmfYH#Wdtradc0TnKNz@Su!e zu$9}G_=ku;%4xk}eXl>)KgpuT>_<`Ud(A^a++K&pm3LbN;gI}ku@YVrA%FJBZ5$;m zobR8}OLtW4-i+qPPLS-(7<>M{)rhiPoi@?&vDeVq5%fmZk=mDdRV>Pb-l7pP1y6|J z8I>sF+TypKV=_^NwBU^>4JJq<*14GLfM2*XQzYdlqqjnE)gZsPW^E@mp&ww* zW9i>XL=uwLVZ9pO*8K>t>vdL~Ek_NUL$?LQi5sc#1Q-f6-ywKcIT8Kw?C(_3pbR`e|)%9S-({if|E+hR2W!&qfQ&UiF^I!|M#xhdWsenv^wpKCBiuxXbnp85`{i|;BM?Ba`lqTA zyRm=UWJl&E{8JzYDHFu>*Z10-?#A8D|5jW9Ho0*CAs0fAy~MqbwYuOq9jjt9*nuHI zbDwKvh)5Ir$r!fS5|;?Dt>V+@F*v8=TJJF)TdnC#Mk>+tGDGCw;A~^PC`gUt*<(|i zB{{g{`uFehu`$fm4)&k7`u{xIV)yvA(%5SxX9MS80p2EKnLtCZ>tlX>*Z6nd&6-Mv$5rHD*db;&IBK3KH&M<+ArlGXDRdX1VVO4)&R$f4NxXI>GBh zSv|h>5GDAI(4E`@F?EnW zS>#c&Gw6~_XL`qQG4bK`W*>hek4LX*efn6|_MY+rXkNyAuu?NxS%L7~9tD3cn7&p( zCtfqe6sjB&Q-Vs7BP5+%;#Gk};4xtwU!KY0XXbmkUy$kR9)!~?*v)qw00!+Yg^#H> zc#8*z6zZo>+(bud?K<*!QO4ehiTCK&PD4G&n)Tr9X_3r-we z?fI+}-G~Yn93gI6F{}Dw_SC*FLZ)5(85zp4%uubtD)J)UELLkvGk4#tw&Tussa)mTD$R2&O~{ zCI3>fr-!-b@EGRI%g0L8UU%%u_<;e9439JNV;4KSxd|78v+I+8^rmMf3f40Jb}wEszROD?xBZu>Ll3;sUIoNxDK3|j3*sam2tC@@e$ z^!;+AK>efeBJB%ALsQ{uFui)oDoq()2USi?n=6C3#eetz?wPswc={I<8x=(8lE4EIsUfyGNZ{|KYn1IR|=E==f z(;!A5(-2y^2xRFCSPqzHAZn5RCN_bp22T(KEtjA(rFZ%>a4@STrHZflxKoqe9Z4@^ zM*scx_y73?Q{vt6?~WEl?2q*;@8 z3M*&@%l)SQmXkcUm)d@GT2#JdzhfSAP9|n#C;$E8X|pwD!r#X?0P>0ZisQ~TNqupW z*lUY~+ikD`vQb?@SAWX#r*Y+;=_|oacL$2CL$^(mV}aKO77pg}O+-=T1oLBT5sL2i z42Qth2+0@C`c+*D0*5!qy26sis<9a7>LN2{z%Qj49t z=L@x`4$ALHb*3COHoT?5S_c(Hs}g!V>W^=6Q0}zaubkDn)(lTax0+!+%B}9Vqw6{H zvL|BRM`O<@;eVi1DzM!tXtBrA20Ce@^Jz|>%X-t`vi-%WweXCh_LhI#bUg2*pcP~R z*RuTUzBKLXO~~uMd&o$v3@d0shHfUjC6c539PE6rF&;Ufa(Rw@K1*m7?f5)t`MjH0 z)_V(cajV5Am>f!kWcI@5rE8t6$S>5M=k=aRZROH6fA^jJp~2NlR4;Q2>L$7F#RT#9 z>4@1RhWG`Khy>P2j1Yx^BBL{S`niMaxlSWV-JBU0-T9zZ%>7mR3l$~QV$({o0;jTI ze5=cN^!Bc2bT|BcojXp~K#2cM>OTe*cM{Kg-j*CkiW)EGQot^}s;cy8_1_@JA0Whq zlrNr+R;Efa+`6N)s5rH*|E)nYZ3uqkk2C(E7@A|3YI`ozP~9Lexx#*1(r8luq+YPk z{J}c$s` zPM35Fx(YWB3Z5IYnN+L_4|jaR(5iWJi2~l&xy}aU7kW?o-V*6Av2wyZTG!E2KSW2* zGRLQkQU;Oz##ie-Z4fI)WSRxn$(ZcD;TL+;^r=a4(G~H3ZhK$lSXZj?cvyY8%d9JM zzc3#pD^W_QnWy#rx#;c&N@sqHhrnHRmj#i;s%zLm6SE(n&BWpd&f7>XnjV}OlZntI70fq%8~9<7 zMYaw`E-rp49-oC1N_uZTo)Cu%RR2QWdHpzQIcNsoDp`3xfP+`gI?tVQZ4X={qU?(n zV>0ASES^Xuc;9JBji{)RnFL(Lez;8XbB1uWaMp@p?7xhXk6V#!6B@aP4Rz7-K%a>i z?fvf}va_DGUXlI#4--`A3qK7J?-HwnG7O~H2;zR~RLW)_^#La!=}+>KW#anZ{|^D3 B7G?kd literal 0 HcmV?d00001 diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/img/glyphicons-halflings.png b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/img/glyphicons-halflings.png new file mode 100644 index 0000000000000000000000000000000000000000..a9969993201f9cee63cf9f49217646347297b643 GIT binary patch literal 12799 zcma*OWmH^Ivn@*S;K3nSf_t!#;0f+&pm7Po8`nk}2q8f5;M%x$SdAkd9FAvlc$ zx660V9e3Ox@4WZ^?7jZ%QFGU-T~%||Ug4iK6bbQY@zBuF2$hxOw9wF=A)nUSxR_5@ zEX>HBryGrjyuOFFv$Y4<+|3H@gQfEqD<)+}a~mryD|1U9*I_FOG&F%+Ww{SJ-V2BR zjt<81Ek$}Yb*95D4RS0HCps|uLyovt;P05hchQb-u2bzLtmog&f2}1VlNhxXV);S9 zM2buBg~!q9PtF)&KGRgf3#z7B(hm5WlNClaCWFs!-P!4-u*u5+=+D|ZE9e`KvhTHT zJBnLwGM%!u&vlE%1ytJ=!xt~y_YkFLQb6bS!E+s8l7PiPGSt9xrmg?LV&&SL?J~cI zS(e9TF1?SGyh+M_p@o1dyWu7o7_6p;N6hO!;4~ z2B`I;y`;$ZdtBpvK5%oQ^p4eR2L)BH>B$FQeC*t)c`L71gXHPUa|vyu`Bnz)H$ZcXGve(}XvR!+*8a>BLV;+ryG1kt0=)ytl zNJxFUN{V7P?#|Cp85QTa@(*Q3%K-R(Pkv1N8YU*(d(Y}9?PQ(j;NzWoEVWRD-~H$=f>j9~PN^BM2okI(gY-&_&BCV6RP&I$FnSEM3d=0fCxbxA6~l>54-upTrw zYgX@%m>jsSGi`0cQt6b8cX~+02IghVlNblR7eI;0ps}mpWUcxty1yG56C5rh%ep(X z?)#2d?C<4t-KLc*EAn>>M8%HvC1TyBSoPNg(4id~H8JwO#I)Bf;N*y6ai6K9_bA`4 z_g9(-R;qyH&6I$`b42v|0V3Z8IXN*p*8g$gE98+JpXNY+jXxU0zsR^W$#V=KP z3AEFp@OL}WqwOfsV<)A^UTF4&HF1vQecz?LWE@p^Z2){=KEC_3Iopx_eS42>DeiDG zWMXGbYfG~W7C8s@@m<_?#Gqk;!&)_Key@^0xJxrJahv{B&{^!>TV7TEDZlP|$=ZCz zmX=ZWtt4QZKx**)lQQoW8y-XLiOQy#T`2t}p6l*S`68ojyH@UXJ-b~@tN`WpjF z%7%Yzv807gsO!v=!(2uR)16!&U5~VPrPHtGzUU?2w(b1Xchq}(5Ed^G|SD7IG+kvgyVksU) z(0R)SW1V(>&q2nM%Z!C9=;pTg!(8pPSc%H01urXmQI6Gi^dkYCYfu6b4^tW))b^U+ z$2K&iOgN_OU7n#GC2jgiXU{caO5hZt0(>k+c^(r><#m|#J^s?zA6pi;^#*rp&;aqL zRcZi0Q4HhVX3$ybclxo4FFJW*`IV`)Bj_L3rQe?5{wLJh168Ve1jZv+f1D}f0S$N= zm4i|9cEWz&C9~ZI3q*gwWH^<6sBWuphgy@S3Qy?MJiL>gwd|E<2h9-$3;gT9V~S6r z)cAcmE0KXOwDA5eJ02-75d~f?3;n7a9d_xPBJaO;Z)#@s7gk5$Qn(Fc^w@9c5W0zY z59is0?Mt^@Rolcn{4%)Ioat(kxQH6}hIykSA)zht=9F_W*D#<}N(k&&;k;&gKkWIL z0Of*sP=X(Uyu$Pw;?F@?j{}=>{aSHFcii#78FC^6JGrg-)!)MV4AKz>pXnhVgTgx8 z1&5Y=>|8RGA6++FrSy=__k_imx|z-EI@foKi>tK0Hq2LetjUotCgk2QFXaej!BWYL zJc{fv(&qA7UUJ|AXLc5z*_NW#yWzKtl(c8mEW{A>5Hj^gfZ^HC9lQNQ?RowXjmuCj4!!54Us1=hY z0{@-phvC}yls!PmA~_z>Y&n&IW9FQcj}9(OLO-t^NN$c0o}YksCUWt|DV(MJB%%Sr zdf}8!9ylU2TW!=T{?)g-ojAMKc>3pW;KiZ7f0;&g)k}K^#HBhE5ot)%oxq$*$W@b# zg4p<Ou`ME|Kd1WHK@8 zzLD+0(NHWa`B{em3Ye?@aVsEi>y#0XVZfaFuq#;X5C3{*ikRx7UY4FF{ZtNHNO?A_ z#Q?hwRv~D8fPEc%B5E-ZMI&TAmikl||EERumQCRh7p;)>fdZMxvKq;ky0}7IjhJph zW*uuu*(Y6)S;Od--8uR^R#sb$cmFCnPcj9PPCWhPN;n`i1Q#Qn>ii z{WR|0>8F`vf&#E(c2NsoH=I7Cd-FV|%(7a`i}gZw4N~QFFG2WtS^H%@c?%9UZ+kez z;PwGgg_r6V>Kn5n(nZ40P4qMyrCP3bDkJp@hp6&X3>gzC>=f@Hsen<%I~7W+x@}b> z0}Et*vx_50-q@PIV=(3&Tbm}}QRo*FP2@)A#XX-8jYspIhah`9ukPBr)$8>Tmtg&R z?JBoH17?+1@Y@r>anoKPQ}F8o9?vhcG79Cjv^V6ct709VOQwg{c0Q#rBSsSmK3Q;O zBpNihl3S0_IGVE)^`#94#j~$;7+u870yWiV$@={|GrBmuz4b)*bCOPkaN0{6$MvazOEBxFdKZDlbVvv{8_*kJ zfE6C`4&Kkz<5u%dEdStd85-5UHG5IOWbo8i9azgg#zw-(P1AA049hddAB*UdG3Vn0 zX`OgM+EM|<+KhJ<=k?z~WA5waVj?T9eBdfJGebVifBKS1u<$#vl^BvSg)xsnT5Aw_ZY#}v*LXO#htB>f}x3qDdDHoFeb zAq7;0CW;XJ`d&G*9V)@H&739DpfWYzdQt+Kx_E1K#Cg1EMtFa8eQRk_JuUdHD*2;W zR~XFnl!L2A?48O;_iqCVr1oxEXvOIiN_9CUVTZs3C~P+11}ebyTRLACiJuMIG#`xP zKlC|E(S@QvN+%pBc6vPiQS8KgQAUh75C0a2xcPQDD$}*bM&z~g8+=9ltmkT$;c;s z5_=8%i0H^fEAOQbHXf0;?DN5z-5+1 zDxj50yYkz4ox9p$HbZ|H?8ukAbLE^P$@h}L%i6QVcY>)i!w=hkv2zvrduut%!8>6b zcus3bh1w~L804EZ*s96?GB&F7c5?m?|t$-tp2rKMy>F*=4;w*jW}^;8v`st&8)c; z2Ct2{)?S(Z;@_mjAEjb8x=qAQvx=}S6l9?~H?PmP`-xu;ME*B8sm|!h@BX4>u(xg_ zIHmQzp4Tgf*J}Y=8STR5_s)GKcmgV!$JKTg@LO402{{Wrg>#D4-L%vjmtJ4r?p&$F!o-BOf7ej~ z6)BuK^^g1b#(E>$s`t3i13{6-mmSp7{;QkeG5v}GAN&lM2lQT$@(aQCcFP(%UyZbF z#$HLTqGT^@F#A29b0HqiJsRJAlh8kngU`BDI6 zJUE~&!cQ*&f95Ot$#mxU5+*^$qg_DWNdfu+1irglB7yDglzH()2!@#rpu)^3S8weW z_FE$=j^GTY*|5SH95O8o8W9FluYwB=2PwtbW|JG6kcV^dMVmX(wG+Otj;E$%gfu^K z!t~<3??8=()WQSycsBKy24>NjRtuZ>zxJIED;YXaUz$@0z4rl+TW zWxmvM$%4jYIpO>j5k1t1&}1VKM~s!eLsCVQ`TTjn3JRXZD~>GM z$-IT~(Y)flNqDkC%DfbxaV9?QuWCV&-U1yzrV@0jRhE;)ZO0=r-{s@W?HOFbRHDDV zq;eLo+wOW;nI|#mNf(J?RImB9{YSO2Y`9825Lz#u4(nk3)RGv3X8B(A$TsontJ8L! z9JP^eWxtKC?G8^xAZa1HECx*rp35s!^%;&@Jyk)NexVc)@U4$^X1Dag6`WKs|(HhZ#rzO2KEw3xh~-0<;|zcs0L>OcO#YYX{SN8m6`9pp+ zQG@q$I)T?aoe#AoR@%om_#z=c@ych!bj~lV13Qi-xg$i$hXEAB#l=t7QWENGbma4L zbBf*X*4oNYZUd_;1{Ln_ZeAwQv4z?n9$eoxJeI?lU9^!AB2Y~AwOSq67dT9ADZ)s@ zCRYS7W$Zpkdx$3T>7$I%3EI2ik~m!f7&$Djpt6kZqDWZJ-G{*_eXs*B8$1R4+I}Kf zqniwCI64r;>h2Lu{0c(#Atn)%E8&)=0S4BMhq9$`vu|Ct;^ur~gL`bD>J@l)P$q_A zO7b3HGOUG`vgH{}&&AgrFy%K^>? z>wf**coZ2vdSDcNYSm~dZ(vk6&m6bVKmVgrx-X<>{QzA!)2*L+HLTQz$e8UcB&Djq zl)-%s$ZtUN-R!4ZiG=L0#_P=BbUyH+YPmFl_ogkkQ$=s@T1v}rNnZ^eMaqJ|quc+6 z*ygceDOrldsL30w`H;rNu+IjlS+G~p&0SawXCA1+D zC%cZtjUkLNq%FadtHE?O(yQTP486A{1x<{krq#rpauNQaeyhM3*i0%tBpQHQo-u)x z{0{&KS`>}vf2_}b160XZO2$b)cyrHq7ZSeiSbRvaxnKUH{Q`-P(nL&^fcF2){vhN- zbX&WEjP7?b4A%0y6n_=m%l00uZ+}mCYO(!x?j$+O$*TqoD_Q5EoyDJ?w?^UIa491H zE}87(bR`X;@u#3Qy~9wWdWQIg1`cXrk$x9=ccR|RY1~%{fAJ@uq@J3e872x0v$hmv ze_KcL(wM|n0EOp;t{hKoohYyDmYO;!`7^Lx;0k=PWPGZpI>V5qYlzjSL_(%|mud50 z7#{p97s`U|Sn$WYF>-i{i4`kzlrV6a<}=72q2sAT7Zh{>P%*6B;Zl;~0xWymt10Mo zl5{bmR(wJefJpNGK=fSRP|mpCI-)Nf6?Pv==FcFmpSwF1%CTOucV{yqxSyx4Zws3O z8hr5Uyd%ezIO7?PnEO0T%af#KOiXD$e?V&OX-B|ZX-YsgSs%sv-6U+sLPuz{D4bq| zpd&|o5tNCmpT>(uIbRf?8c}d3IpOb3sn6>_dr*26R#ev<_~vi)wleW$PX|5)$_ z+_|=pi(0D(AB_sjQ;sQQSM&AWqzDO1@NHw;C9cPdXRKRI#@nUW)CgFxzQ1nyd!+h& zcjU!U=&u|>@}R(9D$%lu2TlV>@I2-n@fCr5PrZNVyKWR7hm zWjoy^p7v8m#$qN0K#8jT- zq`mSirDZDa1Jxm;Rg3rAPhC)LcI4@-RvKT+@9&KsR3b0_0zuM!Fg7u>oF>3bzOxZPU&$ab$Z9@ zY)f7pKh22I7ZykL{YsdjcqeN++=0a}elQM-4;Q)(`Ep3|VFHqnXOh14`!Bus& z9w%*EWK6AiAM{s$6~SEQS;A>ey$#`7)khZvamem{P?>k)5&7Sl&&NXKk}o!%vd;-! zpo2p-_h^b$DNBO>{h4JdGB=D>fvGIYN8v&XsfxU~VaefL?q} z3ekM?iOKkCzQHkBkhg=hD!@&(L}FcHKoa zbZ7)H1C|lHjwEb@tu=n^OvdHOo7o+W`0-y3KdP#bb~wM=Vr_gyoEq|#B?$&d$tals ziIs-&7isBpvS|CjC|7C&3I0SE?~`a%g~$PI%;au^cUp@ER3?mn-|vyu!$7MV6(uvt z+CcGuM(Ku2&G0tcRCo7#D$Dirfqef2qPOE5I)oCGzmR5G!o#Q~(k~)c=LpIfrhHQk zeAva6MilEifE7rgP1M7AyWmLOXK}i8?=z2;N=no)`IGm#y%aGE>-FN zyXCp0Sln{IsfOBuCdE*#@CQof%jzuU*jkR*Su3?5t}F(#g0BD0Zzu|1MDes8U7f9; z$JBg|mqTXt`muZ8=Z`3wx$uizZG_7>GI7tcfOHW`C2bKxNOR)XAwRkLOaHS4xwlH4 zDpU29#6wLXI;H?0Se`SRa&I_QmI{zo7p%uveBZ0KZKd9H6@U?YGArbfm)D*^5=&Rp z`k{35?Z5GbZnv>z@NmJ%+sx=1WanWg)8r}C_>EGR8mk(NR$pW<-l8OTU^_u3M@gwS z7}GGa1)`z5G|DZirw;FB@VhH7Dq*0qc=|9lLe{w2#`g+_nt>_%o<~9(VZe=zI*SSz4w43-_o>4E4`M@NPKTWZuQJs)?KXbWp1M zimd5F;?AP(LWcaI-^Sl{`~>tmxsQB9Y$Xi*{Zr#py_+I$vx7@NY`S?HFfS!hUiz$a z{>!&e1(16T!Om)m)&k1W#*d#GslD^4!TwiF2WjFBvi=Ms!ADT)ArEW6zfVuIXcXVk z>AHjPADW+mJzY`_Ieq(s?jbk4iD2Rb8*V3t6?I+E06(K8H!!xnDzO%GB;Z$N-{M|B zeT`jo%9)s%op*XZKDd6*)-^lWO{#RaIGFdBH+;XXjI(8RxpBc~azG1H^2v7c^bkFE zZCVPE+E*Q=FSe8Vm&6|^3ki{9~qafiMAf7i4APZg>b%&5>nT@pHH z%O*pOv(77?ZiT{W zBibx}Q12tRc7Py1NcZTp`Q4ey%T_nj@1WKg5Fz_Rjl4wlJQj)rtp8yL3r!Shy zvZvnmh!tH4T6Js-?vI0<-rzzl{mgT*S0d_7^AU_8gBg^03o-J=p(1o6kww2hx|!%T z-jqp}m^G*W?$!R#M%Ef?&2jYxmx+lXWZszpI4d$pUN`(S)|*c^CgdwY>Fa>> zgGBJhwe8y#Xd*q0=@SLEgPF>+Qe4?%E*v{a`||luZ~&dqMBrRfJ{SDMaJ!s_;cSJp zSqZHXIdc@@XteNySUZs^9SG7xK`8=NBNM)fRVOjw)D^)w%L2OPkTQ$Tel-J)GD3=YXy+F4in(ILy*A3m@3o73uv?JC}Q>f zrY&8SWmesiba0|3X-jmlMT3 z*ST|_U@O=i*sM_*48G)dgXqlwoFp5G6qSM3&%_f_*n!PiT>?cNI)fAUkA{qWnqdMi+aNK_yVQ&lx4UZknAc9FIzVk% zo6JmFH~c{_tK!gt4+o2>)zoP{sR}!!vfRjI=13!z5}ijMFQ4a4?QIg-BE4T6!#%?d&L;`j5=a`4is>U;%@Rd~ zXC~H7eGQhhYWhMPWf9znDbYIgwud(6$W3e>$W4$~d%qoJ z+JE`1g$qJ%>b|z*xCKenmpV$0pM=Gl-Y*LT8K+P)2X#;XYEFF4mRbc~jj?DM@(1e`nL=F4Syv)TKIePQUz)bZ?Bi3@G@HO$Aps1DvDGkYF50O$_welu^cL7;vPiMGho74$;4fDqKbE{U zd1h{;LfM#Fb|Z&uH~Rm_J)R~Vy4b;1?tW_A)Iz#S_=F|~pISaVkCnQ0&u%Yz%o#|! zS-TSg87LUfFSs{tTuM3$!06ZzH&MFtG)X-l7>3)V?Txuj2HyG*5u;EY2_5vU0ujA? zHXh5G%6e3y7v?AjhyX79pnRBVr}RmPmtrxoB7lkxEzChX^(vKd+sLh?SBic=Q)5nA zdz7Mw3_iA>;T^_Kl~?1|5t%GZ;ki_+i>Q~Q1EVdKZ)$Sh3LM@ea&D~{2HOG++7*wF zAC6jW4>fa~!Vp5+$Z{<)Qxb|{unMgCv2)@%3j=7)Zc%U<^i|SAF88s!A^+Xs!OASYT%7;Jx?olg_6NFP1475N z#0s<@E~FI}#LNQ{?B1;t+N$2k*`K$Hxb%#8tRQi*Z#No0J}Pl;HWb){l7{A8(pu#@ zfE-OTvEreoz1+p`9sUI%Y{e5L-oTP_^NkgpYhZjp&ykinnW;(fu1;ttpSsgYM8ABX4dHe_HxU+%M(D=~) zYM}XUJ5guZ;=_ZcOsC`_{CiU$zN3$+x&5C`vX-V3`8&RjlBs^rf00MNYZW+jCd~7N z%{jJuUUwY(M`8$`B>K&_48!Li682ZaRknMgQ3~dnlp8C?__!P2z@=Auv;T^$yrsNy zCARmaA@^Yo2sS%2$`031-+h9KMZsIHfB>s@}>Y(z988e!`%4=EDoAQ0kbk>+lCoK60Mx9P!~I zlq~wf7kcm_NFImt3ZYlE(b3O1K^QWiFb$V^a2Jlwvm(!XYx<`i@ZMS3UwFt{;x+-v zhx{m=m;4dgvkKp5{*lfSN3o^keSpp9{hlXj%=}e_7Ou{Yiw(J@NXuh*;pL6@$HsfB zh?v+r^cp@jQ4EspC#RqpwPY(}_SS$wZ{S959`C25777&sgtNh%XTCo9VHJC-G z;;wi9{-iv+ETiY;K9qvlEc04f;ZnUP>cUL_T*ms``EtGoP^B#Q>n2dSrbAg8a>*Lg zd0EJ^=tdW~7fbcLFsqryFEcy*-8!?;n%;F+8i{eZyCDaiYxghr z$8k>L|2&-!lhvuVdk!r-kpSFl`5F5d4DJr%M4-qOy3gdmQbqF1=aBtRM7)c_Ae?$b8 zQg4c8*KQ{XJmL)1c7#0Yn0#PTMEs4-IHPjkn0!=;JdhMXqzMLeh`yOylXROP- zl#z3+fwM9l3%VN(6R77ua*uI9%hO7l7{+Hcbr(peh;afUK?B4EC09J{-u{mv)+u#? zdKVBCPt`eU@IzL)OXA`Ebu`Xp?u0m%h&X41}FNfnJ*g1!1wcbbpo%F4x!-#R9ft!8{5`Ho}04?FI#Kg zL|k`tF1t_`ywdy8(wnTut>HND(qNnq%Sq=AvvZbXnLx|mJhi!*&lwG2g|edBdVgLy zjvVTKHAx(+&P;P#2Xobo7_RttUi)Nllc}}hX>|N?-u5g7VJ-NNdwYcaOG?NK=5)}` zMtOL;o|i0mSKm(UI_7BL_^6HnVOTkuPI6y@ZLR(H?c1cr-_ouSLp{5!bx^DiKd*Yb z{K78Ci&Twup zTKm)ioN|wcYy%Qnwb)IzbH>W!;Ah5Zdm_jRY`+VRJ2 zhkspZ9hbK3iQD91A$d!0*-1i#%x81|s+SPRmD}d~<1p6!A13(!vABP2kNgqEG z?AMgl^P+iRoIY(9@_I?n1829lGvAsRnHwS~|5vD2+Zi53j<5N4wNn0{q>>jF9*bI) zL$kMXM-awNOElF>{?Jr^tOz1glbwaD-M0OKOlTeW3C!1ZyxRbB>8JDof(O&R1bh%3x#>y2~<>OXO#IIedH0Q`(&&?eo-c~ z>*Ah#3~09unym~UC-UFqqI>{dmUD$Y4@evG#ORLI*{ZM)Jl=e1it!XzY($S3V zLG!Y6fCjE>x6r@5FG1n|8ompSZaJ>9)q6jqU;XxCQk9zV(?C9+i*>w z21+KYt1gXX&0`x3E)hS7I5}snbBzox9C@Xzcr|{B8Hw;SY1$}&BoYKXH^hpjW-RgJ z-Fb}tannKCv>y~^`r|(1Q9;+sZlYf3XPSX|^gR01UFtu$B*R;$sPZdIZShRr>|b@J z;#G{EdoY+O;REEjQ}X7_YzWLO+Ey3>a_KDe1CjSe| z6arqcEZ)CX!8r(si`dqbF$uu&pnf^Np{1f*TdJ`r2;@SaZ z#hb4xlaCA@Pwqj#LlUEe5L{I$k(Zj$d3(~)u(F%&xb8={N9hKxlZIO1ABsM{Mt|)2 zJ^t9Id;?%4PfR4&Ph9B9cFK~@tG3wlFW-0fXZS_L4U*EiAA%+`h%q2^6BCC;t0iO4V=s4Qug{M|iDV@s zC7|ef-dxiR7T&Mpre!%hiUhHM%3Qxi$Lzw6&(Tvlx9QA_7LhYq<(o~=Y>3ka-zrQa zhGpfFK@)#)rtfz61w35^sN1=IFw&Oc!Nah+8@qhJ0UEGr;JplaxOGI82OVqZHsqfX ze1}r{jy;G?&}Da}a7>SCDsFDuzuseeCKof|Dz2BPsP8? zY;a)Tkr2P~0^2BeO?wnzF_Ul-ekY=-w26VnU%U3f19Z-pj&2 z4J_a|o4Dci+MO)mPQIM>kdPG1xydiR9@#8m zh27D7GF{p|a{8({Q-Pr-;#jV{2zHR>lGoFtIfIpoMo?exuQyX_A;;l0AP4!)JEM$EwMInZkj+8*IHP4vKRd zKx_l-i*>A*C@{u%ct`y~s6MWAfO{@FPIX&sg8H{GMDc{4M3%$@c8&RAlw0-R<4DO3 trJqdc$mBpWeznn?E0M$F`|3v=`3%T2A17h;rxP7$%JLd=6(2u;`(N3pt&so# literal 0 HcmV?d00001 diff --git a/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/js/bootstrap.min.js b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/js/bootstrap.min.js new file mode 100644 index 00000000000..6eeb15ce3b7 --- /dev/null +++ b/core/vendor/phpunit/php-code-coverage/PHP/CodeCoverage/Report/HTML/Renderer/Template/js/bootstrap.min.js @@ -0,0 +1,6 @@ +/*! +* Bootstrap.js by @fat & @mdo +* Copyright 2012 Twitter, Inc. +* http://www.apache.org/licenses/LICENSE-2.0.txt +*/ +!function($){"use strict";$(function(){$.support.transition=function(){var transitionEnd=function(){var name,el=document.createElement("bootstrap"),transEndEventNames={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(name in transEndEventNames)if(void 0!==el.style[name])return transEndEventNames[name]}();return transitionEnd&&{end:transitionEnd}}()})}(window.jQuery),!function($){"use strict";var dismiss='[data-dismiss="alert"]',Alert=function(el){$(el).on("click",dismiss,this.close)};Alert.prototype.close=function(e){function removeElement(){$parent.trigger("closed").remove()}var $parent,$this=$(this),selector=$this.attr("data-target");selector||(selector=$this.attr("href"),selector=selector&&selector.replace(/.*(?=#[^\s]*$)/,"")),$parent=$(selector),e&&e.preventDefault(),$parent.length||($parent=$this.hasClass("alert")?$this:$this.parent()),$parent.trigger(e=$.Event("close")),e.isDefaultPrevented()||($parent.removeClass("in"),$.support.transition&&$parent.hasClass("fade")?$parent.on($.support.transition.end,removeElement):removeElement())};var old=$.fn.alert;$.fn.alert=function(option){return this.each(function(){var $this=$(this),data=$this.data("alert");data||$this.data("alert",data=new Alert(this)),"string"==typeof option&&data[option].call($this)})},$.fn.alert.Constructor=Alert,$.fn.alert.noConflict=function(){return $.fn.alert=old,this},$(document).on("click.alert.data-api",dismiss,Alert.prototype.close)}(window.jQuery),!function($){"use strict";var Button=function(element,options){this.$element=$(element),this.options=$.extend({},$.fn.button.defaults,options)};Button.prototype.setState=function(state){var d="disabled",$el=this.$element,data=$el.data(),val=$el.is("input")?"val":"html";state+="Text",data.resetText||$el.data("resetText",$el[val]()),$el[val](data[state]||this.options[state]),setTimeout(function(){"loadingText"==state?$el.addClass(d).attr(d,d):$el.removeClass(d).removeAttr(d)},0)},Button.prototype.toggle=function(){var $parent=this.$element.closest('[data-toggle="buttons-radio"]');$parent&&$parent.find(".active").removeClass("active"),this.$element.toggleClass("active")};var old=$.fn.button;$.fn.button=function(option){return this.each(function(){var $this=$(this),data=$this.data("button"),options="object"==typeof option&&option;data||$this.data("button",data=new Button(this,options)),"toggle"==option?data.toggle():option&&data.setState(option)})},$.fn.button.defaults={loadingText:"loading..."},$.fn.button.Constructor=Button,$.fn.button.noConflict=function(){return $.fn.button=old,this},$(document).on("click.button.data-api","[data-toggle^=button]",function(e){var $btn=$(e.target);$btn.hasClass("btn")||($btn=$btn.closest(".btn")),$btn.button("toggle")})}(window.jQuery),!function($){"use strict";var Carousel=function(element,options){this.$element=$(element),this.options=options,"hover"==this.options.pause&&this.$element.on("mouseenter",$.proxy(this.pause,this)).on("mouseleave",$.proxy(this.cycle,this))};Carousel.prototype={cycle:function(e){return e||(this.paused=!1),this.options.interval&&!this.paused&&(this.interval=setInterval($.proxy(this.next,this),this.options.interval)),this},to:function(pos){var $active=this.$element.find(".item.active"),children=$active.parent().children(),activePos=children.index($active),that=this;if(!(pos>children.length-1||0>pos))return this.sliding?this.$element.one("slid",function(){that.to(pos)}):activePos==pos?this.pause().cycle():this.slide(pos>activePos?"next":"prev",$(children[pos]))},pause:function(e){return e||(this.paused=!0),this.$element.find(".next, .prev").length&&$.support.transition.end&&(this.$element.trigger($.support.transition.end),this.cycle()),clearInterval(this.interval),this.interval=null,this},next:function(){return this.sliding?void 0:this.slide("next")},prev:function(){return this.sliding?void 0:this.slide("prev")},slide:function(type,next){var e,$active=this.$element.find(".item.active"),$next=next||$active[type](),isCycling=this.interval,direction="next"==type?"left":"right",fallback="next"==type?"first":"last",that=this;if(this.sliding=!0,isCycling&&this.pause(),$next=$next.length?$next:this.$element.find(".item")[fallback](),e=$.Event("slide",{relatedTarget:$next[0]}),!$next.hasClass("active")){if($.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(e),e.isDefaultPrevented())return;$next.addClass(type),$next[0].offsetWidth,$active.addClass(direction),$next.addClass(direction),this.$element.one($.support.transition.end,function(){$next.removeClass([type,direction].join(" ")).addClass("active"),$active.removeClass(["active",direction].join(" ")),that.sliding=!1,setTimeout(function(){that.$element.trigger("slid")},0)})}else{if(this.$element.trigger(e),e.isDefaultPrevented())return;$active.removeClass("active"),$next.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return isCycling&&this.cycle(),this}}};var old=$.fn.carousel;$.fn.carousel=function(option){return this.each(function(){var $this=$(this),data=$this.data("carousel"),options=$.extend({},$.fn.carousel.defaults,"object"==typeof option&&option),action="string"==typeof option?option:options.slide;data||$this.data("carousel",data=new Carousel(this,options)),"number"==typeof option?data.to(option):action?data[action]():options.interval&&data.cycle()})},$.fn.carousel.defaults={interval:5e3,pause:"hover"},$.fn.carousel.Constructor=Carousel,$.fn.carousel.noConflict=function(){return $.fn.carousel=old,this},$(document).on("click.carousel.data-api","[data-slide]",function(e){var href,$this=$(this),$target=$($this.attr("data-target")||(href=$this.attr("href"))&&href.replace(/.*(?=#[^\s]+$)/,"")),options=$.extend({},$target.data(),$this.data());$target.carousel(options),e.preventDefault()})}(window.jQuery),!function($){"use strict";var Collapse=function(element,options){this.$element=$(element),this.options=$.extend({},$.fn.collapse.defaults,options),this.options.parent&&(this.$parent=$(this.options.parent)),this.options.toggle&&this.toggle()};Collapse.prototype={constructor:Collapse,dimension:function(){var hasWidth=this.$element.hasClass("width");return hasWidth?"width":"height"},show:function(){var dimension,scroll,actives,hasData;if(!this.transitioning){if(dimension=this.dimension(),scroll=$.camelCase(["scroll",dimension].join("-")),actives=this.$parent&&this.$parent.find("> .accordion-group > .in"),actives&&actives.length){if(hasData=actives.data("collapse"),hasData&&hasData.transitioning)return;actives.collapse("hide"),hasData||actives.data("collapse",null)}this.$element[dimension](0),this.transition("addClass",$.Event("show"),"shown"),$.support.transition&&this.$element[dimension](this.$element[0][scroll])}},hide:function(){var dimension;this.transitioning||(dimension=this.dimension(),this.reset(this.$element[dimension]()),this.transition("removeClass",$.Event("hide"),"hidden"),this.$element[dimension](0))},reset:function(size){var dimension=this.dimension();return this.$element.removeClass("collapse")[dimension](size||"auto")[0].offsetWidth,this.$element[null!==size?"addClass":"removeClass"]("collapse"),this},transition:function(method,startEvent,completeEvent){var that=this,complete=function(){"show"==startEvent.type&&that.reset(),that.transitioning=0,that.$element.trigger(completeEvent)};this.$element.trigger(startEvent),startEvent.isDefaultPrevented()||(this.transitioning=1,this.$element[method]("in"),$.support.transition&&this.$element.hasClass("collapse")?this.$element.one($.support.transition.end,complete):complete())},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}};var old=$.fn.collapse;$.fn.collapse=function(option){return this.each(function(){var $this=$(this),data=$this.data("collapse"),options="object"==typeof option&&option;data||$this.data("collapse",data=new Collapse(this,options)),"string"==typeof option&&data[option]()})},$.fn.collapse.defaults={toggle:!0},$.fn.collapse.Constructor=Collapse,$.fn.collapse.noConflict=function(){return $.fn.collapse=old,this},$(document).on("click.collapse.data-api","[data-toggle=collapse]",function(e){var href,$this=$(this),target=$this.attr("data-target")||e.preventDefault()||(href=$this.attr("href"))&&href.replace(/.*(?=#[^\s]+$)/,""),option=$(target).data("collapse")?"toggle":$this.data();$this[$(target).hasClass("in")?"addClass":"removeClass"]("collapsed"),$(target).collapse(option)})}(window.jQuery),!function($){"use strict";function clearMenus(){$(toggle).each(function(){getParent($(this)).removeClass("open")})}function getParent($this){var $parent,selector=$this.attr("data-target");return selector||(selector=$this.attr("href"),selector=selector&&/#/.test(selector)&&selector.replace(/.*(?=#[^\s]*$)/,"")),$parent=$(selector),$parent.length||($parent=$this.parent()),$parent}var toggle="[data-toggle=dropdown]",Dropdown=function(element){var $el=$(element).on("click.dropdown.data-api",this.toggle);$("html").on("click.dropdown.data-api",function(){$el.parent().removeClass("open")})};Dropdown.prototype={constructor:Dropdown,toggle:function(){var $parent,isActive,$this=$(this);if(!$this.is(".disabled, :disabled"))return $parent=getParent($this),isActive=$parent.hasClass("open"),clearMenus(),isActive||$parent.toggleClass("open"),$this.focus(),!1},keydown:function(e){var $this,$items,$parent,isActive,index;if(/(38|40|27)/.test(e.keyCode)&&($this=$(this),e.preventDefault(),e.stopPropagation(),!$this.is(".disabled, :disabled"))){if($parent=getParent($this),isActive=$parent.hasClass("open"),!isActive||isActive&&27==e.keyCode)return $this.click();$items=$("[role=menu] li:not(.divider):visible a",$parent),$items.length&&(index=$items.index($items.filter(":focus")),38==e.keyCode&&index>0&&index--,40==e.keyCode&&$items.length-1>index&&index++,~index||(index=0),$items.eq(index).focus())}}};var old=$.fn.dropdown;$.fn.dropdown=function(option){return this.each(function(){var $this=$(this),data=$this.data("dropdown");data||$this.data("dropdown",data=new Dropdown(this)),"string"==typeof option&&data[option].call($this)})},$.fn.dropdown.Constructor=Dropdown,$.fn.dropdown.noConflict=function(){return $.fn.dropdown=old,this},$(document).on("click.dropdown.data-api touchstart.dropdown.data-api",clearMenus).on("click.dropdown touchstart.dropdown.data-api",".dropdown form",function(e){e.stopPropagation()}).on("touchstart.dropdown.data-api",".dropdown-menu",function(e){e.stopPropagation()}).on("click.dropdown.data-api touchstart.dropdown.data-api",toggle,Dropdown.prototype.toggle).on("keydown.dropdown.data-api touchstart.dropdown.data-api",toggle+", [role=menu]",Dropdown.prototype.keydown)}(window.jQuery),!function($){"use strict";var Modal=function(element,options){this.options=options,this.$element=$(element).delegate('[data-dismiss="modal"]',"click.dismiss.modal",$.proxy(this.hide,this)),this.options.remote&&this.$element.find(".modal-body").load(this.options.remote)};Modal.prototype={constructor:Modal,toggle:function(){return this[this.isShown?"hide":"show"]()},show:function(){var that=this,e=$.Event("show");this.$element.trigger(e),this.isShown||e.isDefaultPrevented()||(this.isShown=!0,this.escape(),this.backdrop(function(){var transition=$.support.transition&&that.$element.hasClass("fade");that.$element.parent().length||that.$element.appendTo(document.body),that.$element.show(),transition&&that.$element[0].offsetWidth,that.$element.addClass("in").attr("aria-hidden",!1),that.enforceFocus(),transition?that.$element.one($.support.transition.end,function(){that.$element.focus().trigger("shown")}):that.$element.focus().trigger("shown")}))},hide:function(e){e&&e.preventDefault(),e=$.Event("hide"),this.$element.trigger(e),this.isShown&&!e.isDefaultPrevented()&&(this.isShown=!1,this.escape(),$(document).off("focusin.modal"),this.$element.removeClass("in").attr("aria-hidden",!0),$.support.transition&&this.$element.hasClass("fade")?this.hideWithTransition():this.hideModal())},enforceFocus:function(){var that=this;$(document).on("focusin.modal",function(e){that.$element[0]===e.target||that.$element.has(e.target).length||that.$element.focus()})},escape:function(){var that=this;this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.modal",function(e){27==e.which&&that.hide()}):this.isShown||this.$element.off("keyup.dismiss.modal")},hideWithTransition:function(){var that=this,timeout=setTimeout(function(){that.$element.off($.support.transition.end),that.hideModal()},500);this.$element.one($.support.transition.end,function(){clearTimeout(timeout),that.hideModal()})},hideModal:function(){this.$element.hide().trigger("hidden"),this.backdrop()},removeBackdrop:function(){this.$backdrop.remove(),this.$backdrop=null},backdrop:function(callback){var animate=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var doAnimate=$.support.transition&&animate;this.$backdrop=$('