PASS 4ms★ AbstractDirectedGraphTestCase::testNonTreeGraph
PASS <1ms★ AbstractDirectedGraphTestCase::testRoughTopologicalOrder
PASS <1ms★ AbstractDirectedGraphTestCase::testTopologicalOrder
PASS <1ms★ AbstractDirectedGraphTestCase::testTrivialGraph
PASS <1ms★ AbstractDirectedGraphTestCase::testNoncyclicGraph
PASS <1ms★ AbstractDirectedGraphTestCase::testEdgeLoadFailure
PASS <1ms★ AbstractDirectedGraphTestCase::testCyclicGraph
PASS <1ms★ AbstractDirectedGraphTestCase::testTrivialCyclicGraph
PASS 3ms★ ArcanistBaseCommitParserTestCase::testJump
PASS 1ms★ ArcanistBaseCommitParserTestCase::testLegacyRule
PASS 2ms★ ArcanistBaseCommitParserTestCase::testResolutionOrder
PASS 1ms★ ArcanistBaseCommitParserTestCase::testYield
PASS 4ms★ ArcanistBaseCommitParserTestCase::testBasics
PASS <1ms★ ArcanistBaseCommitParserTestCase::testHalt
PASS <1ms★ ArcanistBaseCommitParserTestCase::testJumpReturn
PASS 11ms★ ArcanistBundleTestCase::testTrailingContext
PASS 10ms★ ArcanistBundleTestCase::testMergeHunks
PASS <1ms★ ArcanistBundleTestCase::testTabEncoding
PASS 4ms★ ArcanistBundleTestCase::testDisjointHunks
PASS 4ms★ ArcanistBundleTestCase::testNonlocalTrailingNewline
PASS 2.9s ArcanistBundleTestCase::testGitRepository
PASS 23ms★ ArcanistBundleTestCase::testEncodeBase85
PASS 2ms★ ArcanistCommentRemoverTestCase::testRemover
PASS 6ms★ ArcanistCommitGraphTestCase::testGraphQuery
[42m[1m PASS [m[49m [32m 23ms[39m[33m★[39m ArcanistConsoleLintRendererTestCase::testRendering
[42m[1m PASS [m[49m [32m 8ms[39m[33m★[39m ArcanistDiffParserTestCase::testGitRenames
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistDiffParserTestCase::testGitCommonFilenameExtraction
[42m[1m PASS [m[49m [32m 41ms[39m[33m★[39m ArcanistDiffParserTestCase::testParser
[42m[1m PASS [m[49m [32m 31ms[39m[33m★[39m ArcanistDiffUtilsTestCase::testLevenshtein
[42m[1m PASS [m[49m [32m 5ms[39m[33m★[39m ArcanistDiffUtilsTestCase::testGenerateUTF8IntralineDiff
[42m[1m PASS [m[49m [32m 3ms[39m[33m★[39m ArcanistGitRawCommitTestCase::testGitRawCommitParser
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testSingleTestCaseSuccessfulGo14
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testSingleTestCaseFailure
[42m[1m PASS [m[49m [32m 3ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testNonVerboseOutput
[42m[1m PASS [m[49m [32m 3ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testMultipleTestCasesFailure
[42m[1m PASS [m[49m [32m 3ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testMultipleTestCasesSuccessfulGo14
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testMultipleTestCasesFailureGo14
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testNonVerboseOutputV110
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testNonVerboseOutputGo14
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testSingleTestCaseSuccessful
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testSingleTestCaseFailureGo14
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistGoTestResultParserTestCase::testMultipleTestCasesSuccessful
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistLintMessageTestCase::testMessageTrimming
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistLinterStandardTestCase::testLoadAllStandards
[42m[1m PASS [m[49m [32m 46ms[39m[33m★[39m ArcanistChmodLinterTestCase::testLinter
[43m[1m SKIP [m[49m ArcanistCSSLintLinterTestCase::testLinter
Unable to locate binary "csslint" to run linter ArcanistCSSLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install CSSLint using `npm install -g csslint`.
[43m[1m SKIP [m[49m ArcanistCSSLintLinterTestCase::testVersion
Unable to locate binary "csslint" to run linter ArcanistCSSLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install CSSLint using `npm install -g csslint`.
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m ArcanistClosureLinterTestCase::testVersion
[43m[1m SKIP [m[49m ArcanistClosureLinterTestCase::testLinter
Unable to locate binary "gjslint" to run linter ArcanistClosureLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install gjslint using `pip install closure-linter`.
[43m[1m SKIP [m[49m ArcanistCoffeeLintLinterTestCase::testLinter
Unable to locate binary "coffeelint" to run linter ArcanistCoffeeLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install CoffeeLint using `npm install -g coffeelint`.
[43m[1m SKIP [m[49m ArcanistCoffeeLintLinterTestCase::testVersion
Unable to locate binary "coffeelint" to run linter ArcanistCoffeeLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install CoffeeLint using `npm install -g coffeelint`.
[43m[1m SKIP [m[49m ArcanistCppcheckLinterTestCase::testLinter
Unable to locate binary "cppcheck" to run linter ArcanistCppcheckLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install Cppcheck using `apt-get install cppcheck` or similar.
[43m[1m SKIP [m[49m ArcanistCppcheckLinterTestCase::testVersion
Unable to locate binary "cppcheck" to run linter ArcanistCppcheckLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install Cppcheck using `apt-get install cppcheck` or similar.
[43m[1m SKIP [m[49m ArcanistCpplintLinterTestCase::testLinter
Unable to locate binary "cpplint.py" to run linter ArcanistCpplintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install cpplint.py using `wget https://raw.github.com/google/styleguide/gh-pages/cpplint/cpplint.py`, and place it in your path with the appropriate permissions set.
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistCpplintLinterTestCase::testVersion
[43m[1m SKIP [m[49m ArcanistFlake8LinterTestCase::testVersion
Unable to locate binary "flake8" to run linter ArcanistFlake8Linter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install flake8 using `pip install flake8`.
[43m[1m SKIP [m[49m ArcanistFlake8LinterTestCase::testLinter
Unable to locate binary "flake8" to run linter ArcanistFlake8Linter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install flake8 using `pip install flake8`.
[43m[1m SKIP [m[49m ArcanistGoLintLinterTestCase::testLinter
Unable to locate binary "golint" to run linter ArcanistGoLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install Golint using `go get github.com/golang/lint/golint`.
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistGoLintLinterTestCase::testVersion
[43m[1m SKIP [m[49m ArcanistHLintLinterTestCase::testVersion
Unable to locate binary "hlint" to run linter ArcanistHLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install hlint with `cabal install hlint`.
[43m[1m SKIP [m[49m ArcanistHLintLinterTestCase::testLinter
Unable to locate binary "hlint" to run linter ArcanistHLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install hlint with `cabal install hlint`.
[43m[1m SKIP [m[49m ArcanistJSHintLinterTestCase::testLinter
Unable to locate binary "jshint" to run linter ArcanistJSHintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install JSHint using `npm install -g jshint`.
[43m[1m SKIP [m[49m ArcanistJSHintLinterTestCase::testVersion
Unable to locate binary "jshint" to run linter ArcanistJSHintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install JSHint using `npm install -g jshint`.
[43m[1m SKIP [m[49m ArcanistJscsLinterTestCase::testLinter
Unable to locate binary "jscs" to run linter ArcanistJscsLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install JSCS using `npm install -g jscs`.
[43m[1m SKIP [m[49m ArcanistJscsLinterTestCase::testVersion
Unable to locate binary "jscs" to run linter ArcanistJscsLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install JSCS using `npm install -g jscs`.
[43m[1m SKIP [m[49m ArcanistLesscLinterTestCase::testLinter
Unable to locate binary "lessc" to run linter ArcanistLesscLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install lessc using `npm install -g less`.
[43m[1m SKIP [m[49m ArcanistLesscLinterTestCase::testVersion
Unable to locate binary "lessc" to run linter ArcanistLesscLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install lessc using `npm install -g less`.
[43m[1m SKIP [m[49m ArcanistPEP8LinterTestCase::testLinter
Unable to locate binary "pep8" to run linter ArcanistPEP8Linter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install PEP8 using `pip install pep8`.
[43m[1m SKIP [m[49m ArcanistPEP8LinterTestCase::testVersion
Unable to locate binary "pep8" to run linter ArcanistPEP8Linter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install PEP8 using `pip install pep8`.
[42m[1m PASS [m[49m [32m 60ms[39m ArcanistPhpLinterTestCase::testVersion
[42m[1m PASS [m[49m [33m497ms[39m ArcanistPhpLinterTestCase::testLinter
[43m[1m SKIP [m[49m ArcanistPhpcsLinterTestCase::testLinter
Unable to locate binary "phpcs" to run linter ArcanistPhpcsLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install PHPCS with `pear install PHP_CodeSniffer`.
[43m[1m SKIP [m[49m ArcanistPhpcsLinterTestCase::testVersion
Unable to locate binary "phpcs" to run linter ArcanistPhpcsLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install PHPCS with `pear install PHP_CodeSniffer`.
[43m[1m SKIP [m[49m ArcanistPuppetLintLinterTestCase::testVersion
Unable to locate binary "puppet-lint" to run linter ArcanistPuppetLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install puppet-lint using `gem install puppet-lint`.
[43m[1m SKIP [m[49m ArcanistPuppetLintLinterTestCase::testLinter
Unable to locate binary "puppet-lint" to run linter ArcanistPuppetLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install puppet-lint using `gem install puppet-lint`.
[43m[1m SKIP [m[49m ArcanistPyFlakesLinterTestCase::testLinter
Unable to locate binary "pyflakes" to run linter ArcanistPyFlakesLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install pyflakes with `pip install pyflakes`.
[43m[1m SKIP [m[49m ArcanistPyFlakesLinterTestCase::testVersion
Unable to locate binary "pyflakes" to run linter ArcanistPyFlakesLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install pyflakes with `pip install pyflakes`.
[43m[1m SKIP [m[49m ArcanistPyLintLinterTestCase::testVersion
Unable to locate binary "pylint" to run linter ArcanistPyLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install PyLint using `pip install pylint`.
[43m[1m SKIP [m[49m ArcanistPyLintLinterTestCase::testLinter
Unable to locate binary "pylint" to run linter ArcanistPyLintLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install PyLint using `pip install pylint`.
[43m[1m SKIP [m[49m ArcanistRuboCopLinterTestCase::testLinter
Unable to locate binary "rubocop" to run linter ArcanistRuboCopLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install RuboCop using `gem install rubocop`.
[43m[1m SKIP [m[49m ArcanistRuboCopLinterTestCase::testVersion
Unable to locate binary "rubocop" to run linter ArcanistRuboCopLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install RuboCop using `gem install rubocop`.
[43m[1m SKIP [m[49m ArcanistRubyLinterTestCase::testLinter
Unable to locate binary "ruby" to run linter ArcanistRubyLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install `ruby` from .
[43m[1m SKIP [m[49m ArcanistRubyLinterTestCase::testVersion
Unable to locate binary "ruby" to run linter ArcanistRubyLinter. You may need to install the binary, or adjust your linter configuration.
TO INSTALL: Install `ruby` from .
[42m[1m PASS [m[49m [32m 62ms[39m ArcanistFilenameLinterTestCase::testLinter
[42m[1m PASS [m[49m [32m 49ms[39m[33m★[39m ArcanistGeneratedLinterTestCase::testLinter
[42m[1m PASS [m[49m [33m307ms[39m ArcanistJSONLinterTestCase::testLinter
[42m[1m PASS [m[49m [32m 21ms[39m[33m★[39m ArcanistMergeConflictLinterTestCase::testLinter
[42m[1m PASS [m[49m [32m 27ms[39m[33m★[39m ArcanistNoLintLinterTestCase::testLinter
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistSpellingLinterTestCase::testFixLetterCase
[42m[1m PASS [m[49m [32m 47ms[39m[33m★[39m ArcanistSpellingLinterTestCase::testLinter
[42m[1m PASS [m[49m [32m 88ms[39m ArcanistTextLinterTestCase::testLinter
[42m[1m PASS [m[49m [32m137ms[39m ArcanistAbstractMethodBodyXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 37ms[39m[33m★[39m ArcanistAbstractPrivateMethodXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 34ms[39m[33m★[39m ArcanistAliasFunctionXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 38ms[39m[33m★[39m ArcanistArrayCombineXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 47ms[39m[33m★[39m ArcanistArrayIndexSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 46ms[39m[33m★[39m ArcanistArraySeparatorXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 50ms[39m[33m★[39m ArcanistArrayValueXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 80ms[39m ArcanistBinaryExpressionSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 38ms[39m[33m★[39m ArcanistBinaryNumericScalarCasingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 58ms[39m ArcanistBlacklistedFunctionXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m187ms[39m ArcanistBraceFormattingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m111ms[39m ArcanistCallParenthesesXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m135ms[39m ArcanistCallTimePassByReferenceXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 38ms[39m[33m★[39m ArcanistCastSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 34ms[39m[33m★[39m ArcanistClassExtendsObjectXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m132ms[39m ArcanistClassMustBeDeclaredAbstractXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 60ms[39m ArcanistClassNameLiteralXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 52ms[39m ArcanistCommentStyleXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 65ms[39m ArcanistConcatenationOperatorXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 58ms[39m ArcanistConstructorParenthesesXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m133ms[39m ArcanistContinueInsideSwitchXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 82ms[39m ArcanistControlStatementSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m156ms[39m ArcanistCurlyBraceArrayIndexXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 99ms[39m ArcanistDeclarationParenthesesXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 89ms[39m ArcanistDefaultParametersXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 48ms[39m[33m★[39m ArcanistDeprecationXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 57ms[39m ArcanistDoubleQuoteXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 45ms[39m[33m★[39m ArcanistDuplicateKeysInArrayXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 59ms[39m ArcanistDuplicateSwitchCaseXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 54ms[39m ArcanistDynamicDefineXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 57ms[39m ArcanistElseIfUsageXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 36ms[39m[33m★[39m ArcanistEmptyStatementXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 32ms[39m[33m★[39m ArcanistExitExpressionXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 44ms[39m[33m★[39m ArcanistExtractUseXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 61ms[39m ArcanistFormattedStringXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m118ms[39m ArcanistFunctionCallShouldBeTypeCastXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 39ms[39m[33m★[39m ArcanistGlobalVariableXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 62ms[39m ArcanistHexadecimalNumericScalarCasingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 76ms[39m ArcanistImplicitConstructorXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 95ms[39m ArcanistImplicitFallthroughXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 55ms[39m ArcanistImplicitVisibilityXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 64ms[39m ArcanistImplodeArgumentOrderXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 49ms[39m[33m★[39m ArcanistInlineHTMLXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 63ms[39m ArcanistInnerFunctionXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 63ms[39m ArcanistInstanceofOperatorXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 69ms[39m ArcanistInterfaceAbstractMethodXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 71ms[39m ArcanistInterfaceMethodBodyXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 57ms[39m ArcanistInvalidDefaultParameterXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 51ms[39m ArcanistInvalidModifiersXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m126ms[39m ArcanistInvalidOctalNumericScalarXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 65ms[39m ArcanistIsAShouldBeInstanceOfXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m110ms[39m ArcanistKeywordCasingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 43ms[39m[33m★[39m ArcanistLambdaFuncFunctionXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 44ms[39m[33m★[39m ArcanistLanguageConstructParenthesesXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m106ms[39m ArcanistListAssignmentXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 70ms[39m ArcanistLogicalOperatorsXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 63ms[39m ArcanistLowercaseFunctionsXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 55ms[39m ArcanistModifierOrderingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m107ms[39m ArcanistNamespaceFirstStatementXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m112ms[39m ArcanistNamingConventionsXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 69ms[39m ArcanistNestedNamespacesXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 50ms[39m ArcanistNewlineAfterOpenTagXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 71ms[39m ArcanistNoParentScopeXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 68ms[39m ArcanistObjectOperatorSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 54ms[39m ArcanistPHPCloseTagXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [33m357ms[39m ArcanistPHPCompatibilityXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 40ms[39m[33m★[39m ArcanistPHPEchoTagXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 84ms[39m ArcanistPHPOpenTagXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 41ms[39m[33m★[39m ArcanistPHPShortTagXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m128ms[39m ArcanistPaamayimNekudotayimSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 66ms[39m ArcanistParentMemberReferenceXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m153ms[39m ArcanistParenthesesSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 88ms[39m ArcanistParseStrUseXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 80ms[39m ArcanistPlusOperatorOnStringsXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 55ms[39m ArcanistPublicPropertyXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 84ms[39m ArcanistRaggedClassTreeEdgeXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 92ms[39m ArcanistReusedAsIteratorXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m165ms[39m ArcanistReusedIteratorReferenceXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 95ms[39m ArcanistReusedIteratorXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 70ms[39m ArcanistSelfClassReferenceXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m196ms[39m ArcanistSelfMemberReferenceXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 74ms[39m ArcanistSemicolonSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 79ms[39m ArcanistSlownessXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 52ms[39m ArcanistStaticThisXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 86ms[39m ArcanistTautologicalExpressionXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 90ms[39m ArcanistThisReassignmentXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 77ms[39m ArcanistToStringExceptionXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 34ms[39m[33m★[39m ArcanistTodoCommentXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 45ms[39m[33m★[39m ArcanistUnaryPostfixExpressionSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 37ms[39m[33m★[39m ArcanistUnaryPrefixExpressionSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m187ms[39m ArcanistUndeclaredVariableXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m195ms[39m ArcanistUnexpectedReturnValueXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 77ms[39m ArcanistUnnecessaryFinalModifierXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 69ms[39m ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m108ms[39m ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 46ms[39m[33m★[39m ArcanistUseStatementNamespacePrefixXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 60ms[39m ArcanistUselessOverridingMethodXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 91ms[39m ArcanistVariableReferenceSpacingXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [32m 59ms[39m ArcanistVariableVariableXHPASTLinterRuleTestCase::testLinter
[42m[1m PASS [m[49m [31m686ms[39m ArcanistXHPASTLinterTestCase::testLinter
[42m[1m PASS [m[49m [33m213ms[39m ArcanistXMLLinterTestCase::testLinter
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m ArcanistMercurialParserTestCase::testParseAll
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m ArcanistRepositoryAPIMiscTestCase::testSVNFileEscapes
[42m[1m PASS [m[49m [32m151ms[39m ArcanistRepositoryAPIStateTestCase::testSvnStateParsing
[42m[1m PASS [m[49m [31m650ms[39m ArcanistRepositoryAPIStateTestCase::testHgStateParsing
[42m[1m PASS [m[49m [31m584ms[39m ArcanistRepositoryAPIStateTestCase::testGitStateParsing
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m ArcanistRepositoryURINormalizerTestCase::testSVNURINormalizer
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m ArcanistRepositoryURINormalizerTestCase::testGitURINormalizer
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m ArcanistRepositoryURINormalizerTestCase::testDomainURINormalizer
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistUnitTestResultTestCase::testCoverageMerges
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ArcanistXHPASTLintNamingHookTestCase::testStripUtilities
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m ArcanistXHPASTLintNamingHookTestCase::testCaseUtilities
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m CaseInsensitiveArrayTestCase::testOffsetGet
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m CaseInsensitiveArrayTestCase::testOffsetExists
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m CaseInsensitiveArrayTestCase::testCount
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m CaseInsensitiveArrayTestCase::testOffsetSet
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m CaseInsensitiveArrayTestCase::testGetKeys
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m CaseInsensitiveArrayTestCase::testOffsetUnset
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ConduitClientTestCase::testConduitRequestEncoding
[42m[1m PASS [m[49m [32m 91ms[39m ExecFutureTestCase::testEmptyWrite
[42m[1m PASS [m[49m [32m 23ms[39m[33m★[39m ExecFutureTestCase::testTimeoutTestShouldRunLessThan1Sec
[42m[1m PASS [m[49m [32m 89ms[39m ExecFutureTestCase::testBufferLimit
[42m[1m PASS [m[49m [32m 61ms[39m ExecFutureTestCase::testMultipleTimeoutsTestShouldRunLessThan1Sec
[42m[1m PASS [m[49m [33m223ms[39m ExecFutureTestCase::testMultipleResolves
[42m[1m PASS [m[49m [32m169ms[39m ExecFutureTestCase::testLargeBuffer
[42m[1m PASS [m[49m [33m220ms[39m ExecFutureTestCase::testReadBuffering
[42m[1m PASS [m[49m [32m 78ms[39m ExecFutureTestCase::testKeepPipe
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m ExecFutureTestCase::testTerminateWithoutStart
[42m[1m PASS [m[49m [31m 1.3s[39m ExecFutureTestCase::testEscaping
[42m[1m PASS [m[49m [32m 26ms[39m[33m★[39m ExecFutureTestCase::testResolveTimeoutTestShouldRunLessThan1Sec
[42m[1m PASS [m[49m [32m109ms[39m ExecPassthruTestCase::testExecPassthru
[42m[1m PASS [m[49m [32m 16ms[39m[33m★[39m FileFinderTestCase::testFinderWithPath
[42m[1m PASS [m[49m [32m 24ms[39m[33m★[39m FileFinderTestCase::testFinderWithFilesAndDirectories
[42m[1m PASS [m[49m [32m 23ms[39m[33m★[39m FileFinderTestCase::testFinderWithNames
[42m[1m PASS [m[49m [32m 24ms[39m[33m★[39m FileFinderTestCase::testFinderWithoutChecksums
[42m[1m PASS [m[49m [32m133ms[39m FileFinderTestCase::testFinderWithGlobMagic
[42m[1m PASS [m[49m [32m 21ms[39m[33m★[39m FileFinderTestCase::testFinderWithDirectories
[42m[1m PASS [m[49m [32m 14ms[39m[33m★[39m FileFinderTestCase::testFinderWithNameAndSuffix
[42m[1m PASS [m[49m [32m 22ms[39m[33m★[39m FileFinderTestCase::testFinderWithChecksums
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m FilesystemTestCase::testisDescendant
[42m[1m PASS [m[49m [32m 34ms[39m[33m★[39m FilesystemTestCase::testBinaryExists
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m FilesystemTestCase::testRandomIntegers
[42m[1m PASS [m[49m [32m 20ms[39m[33m★[39m FilesystemTestCase::testResolveBinary
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m FilesystemTestCase::testReadRandomBytes
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m FilesystemTestCase::testWriteUniqueFile
[42m[1m PASS [m[49m [32m 13ms[39m[33m★[39m FilesystemTestCase::testWalkToRoot
[42m[1m PASS [m[49m [32m146ms[39m FutureIteratorTestCase::testAddingFuture
[42m[1m PASS [m[49m [32m183ms[39m LinesOfALargeExecFutureTestCase::testExecLargeFile
[42m[1m PASS [m[49m [32m 12ms[39m[33m★[39m LinesOfALargeExecFutureTestCase::testExecException
[42m[1m PASS [m[49m [32m157ms[39m LinesOfALargeExecFutureTestCase::testExecBasics
[42m[1m PASS [m[49m [33m314ms[39m LinesOfALargeExecFutureTestCase::testExecLongLine
[42m[1m PASS [m[49m [32m 4ms[39m[33m★[39m LinesOfALargeFileTestCase::testChangeDelimiter
[42m[1m PASS [m[49m [32m140ms[39m LinesOfALargeFileTestCase::testLongLine
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m LinesOfALargeFileTestCase::testTerminalDelimiterPresent
[42m[1m PASS [m[49m [32m 9ms[39m[33m★[39m LinesOfALargeFileTestCase::testLargeFile
[42m[1m PASS [m[49m [32m 6ms[39m[33m★[39m LinesOfALargeFileTestCase::testLineFilter
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m LinesOfALargeFileTestCase::testReadFailure
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m LinesOfALargeFileTestCase::testTerminalDelimiterAbsent
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m LinesOfALargeFileTestCase::testBasics
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m LinesOfALargeFileTestCase::testEmptyLines
[42m[1m PASS [m[49m [31m 1.6s[39m PHPASTParserTestCase::testParser
[42m[1m PASS [m[49m [32m138ms[39m PhageAgentTestCase::testPhagePHPAgent
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhobjectTestCase::testThrowOnUndeclaredProperty
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhobjectTestCase::testThrowOnIteration
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhpunitTestEngineTestCase::testSearchLocations
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilAWSv4SignatureTestCase::testAWSv4SignaturesS3GetObject
[42m[1m PASS [m[49m [32m 22ms[39m[33m★[39m PhutilAWSv4SignatureTestCase::testAWSv4SignaturesVanillaQuery
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilAWSv4SignatureTestCase::testAWSv4SignaturesS3PutObject
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilAWSv4SignatureTestCase::testAWSv4SignaturesS3GetBucketLifecycle
[42m[1m PASS [m[49m [32m 17ms[39m[33m★[39m PhutilAWSv4SignatureTestCase::testAWSv4SignaturesS3GetBucket
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testRepeatableFlag
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testDuplicateWildcards
[42m[1m PASS [m[49m [32m 10ms[39m[33m★[39m PhutilArgumentParserTestCase::testWildcards
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testBadArg
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testDuplicateNames
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testUnrecognizedFlag
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testExtraParameterValue
[42m[1m PASS [m[49m [32m 9ms[39m[33m★[39m PhutilArgumentParserTestCase::testDuplicateNamesWithParsePartial
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testParameterValues
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testDuplicateFlag
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testRepeatableParam
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testBasics
[42m[1m PASS [m[49m [32m 9ms[39m[33m★[39m PhutilArgumentParserTestCase::testConflictSpecificationWithSelf
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testConflictParameterValue
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testMissingParameterValue
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testStdinValidParameter
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testDuplicatePartialWildcards
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testPartialParse
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testConflictSpecificationWithUnrecognizedArg
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentParserTestCase::testDuplicateShortAliases
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentSpecificationTestCase::testAliases
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArgumentSpecificationTestCase::testNames
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilArgumentSpecificationTestCase::testSpecs
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilArgumentSpellingCorrectorTestCase::testCommandCorrection
[42m[1m PASS [m[49m [32m 5ms[39m[33m★[39m PhutilArgumentSpellingCorrectorTestCase::testFlagCorrection
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilArrayTestCase::testPhutilArrayWithDefaultValue
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilBinaryAnalyzerTestCase::testParseGitBinaryVersions
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilBinaryAnalyzerTestCase::testParsePygmentizeBinaryVersions
[42m[1m PASS [m[49m [32m 9ms[39m[33m★[39m PhutilBinaryAnalyzerTestCase::testMercurialFilesCommandVersions
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilBinaryAnalyzerTestCase::testParseDiffBinaryVersions
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilBinaryAnalyzerTestCase::testParseSubversionBinaryVersions
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilBufferedIteratorTestCase::testBufferedIterator
[42m[1m PASS [m[49m [32m 16ms[39m[33m★[39m PhutilBugtraqParserTestCase::testBugtraq
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilChannelTestCase::testChannelBasics
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilChunkedIteratorTestCase::testChunkedIterator
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilConsoleWrapTestCase::testWrapIndent
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilConsoleWrapTestCase::testConsoleWrap
[42m[1m PASS [m[49m [32m 16ms[39m[33m★[39m PhutilConsoleWrapTestCase::testWrap
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilCowsayTestCase::testCowsay
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilCsprintfTestCase::testNoPowershell
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilCsprintfTestCase::testPowershell
[42m[1m PASS [m[49m [32m 93ms[39m PhutilCsprintfTestCase::testPasswords
[42m[1m PASS [m[49m [32m 19ms[39m[33m★[39m PhutilCsprintfTestCase::testEscapingIsRobust
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilCsprintfTestCase::testCommandReadableEscapes
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilDeferredLogTestCase::testLogWriteFailure
[42m[1m PASS [m[49m [32m 5ms[39m[33m★[39m PhutilDeferredLogTestCase::testLogging
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilDeferredLogTestCase::testSetAfterWrite
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilDeferredLogTestCase::testDoubleWrite
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilDeferredLogTestCase::testNoWrite
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilDocblockParserTestCase::testParser
[42m[1m PASS [m[49m [32m 3ms[39m[33m★[39m PhutilEditDistanceMatrixTestCase::testDamerauEditDistance
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilEditDistanceMatrixTestCase::testEditMatrixMaximumLength
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilEditDistanceMatrixTestCase::testDamerauEditString
[42m[1m PASS [m[49m [32m 5ms[39m[33m★[39m PhutilEditDistanceMatrixTestCase::testEditString
[42m[1m PASS [m[49m [32m 4ms[39m[33m★[39m PhutilEditDistanceMatrixTestCase::testEditDistance
[42m[1m PASS [m[49m [33m249ms[39m PhutilEditorConfigTestCase::testGetProperty
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilEmailAddressTestCase::testEmailEncoding
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilEmailAddressTestCase::testEmailParsing
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilErrorHandlerTestCase::testProxyException
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilErrorHandlerTestCase::testSilenceHandler
[42m[1m PASS [m[49m [31m504ms[39m PhutilFileLockTestCase::testLockHolding
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilFileLockTestCase::testExcessiveUnlock
[42m[1m PASS [m[49m [32m 3ms[39m[33m★[39m PhutilFileLockTestCase::testIsLocked
[42m[1m PASS [m[49m [33m308ms[39m PhutilFileLockTestCase::testLockTesting
[42m[1m PASS [m[49m [33m369ms[39m PhutilFileLockTestCase::testInProcessHolding
[42m[1m PASS [m[49m [33m478ms[39m PhutilFileLockTestCase::testUnlockAll
[42m[1m PASS [m[49m [33m282ms[39m PhutilFileLockTestCase::testInProcessLocking
[42m[1m PASS [m[49m [32m 5ms[39m[33m★[39m PhutilFileLockTestCase::testRelock
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilGitURITestCase::testStrictGitURIParsingOfLeadingWhitespace
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilGitURITestCase::testGitURIParsing
[42m[1m PASS [m[49m [32m 7ms[39m[33m★[39m PhutilHTMLParserTestCase::testHTMLParser
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilHTMLParserTestCase::testSelectChildrenWithTags
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilHTTPResponseParserTestCase::testSimpleParsing
[42m[1m PASS [m[49m [32m 4ms[39m[33m★[39m PhutilHashingIteratorTestCase::testHashingIterator
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilHgsprintfTestCase::testHgsprintf
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilIPAddressTestCase::testValidIPv6CIDRBlocks
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilIPAddressTestCase::testIPv6CIDRBlockContains
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilIPAddressTestCase::testValidIPv4CIDRBlocks
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilIPAddressTestCase::testValidIPv6Addresses
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilIPAddressTestCase::testIPv6AddressToAddress
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilIPAddressTestCase::testIPv4AddressToBits
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilIPAddressTestCase::testIPv4CIDRBlockContains
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilIPAddressTestCase::testIPv6AddressToBits
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilIPAddressTestCase::testCIDRList
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilIPAddressTestCase::testValidIPv4Addresses
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilInvalidStateExceptionTestCase::testException
[42m[1m PASS [m[49m [32m 17ms[39m[33m★[39m PhutilJSONParserTestCase::testValidJSON
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilJSONParserTestCase::testDuplicateKeys
[42m[1m PASS [m[49m [32m 5ms[39m[33m★[39m PhutilJSONParserTestCase::testInvalidJSON
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilJSONProtocolChannelTestCase::testJSONChannelBasics
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilJSONTestCase::testEmptyArrayEncoding
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilLanguageGuesserTestCase::testGuessing
[42m[1m PASS [m[49m [31m971ms[39m PhutilLibraryTestCase::testMethodVisibility
[42m[1m PASS [m[49m [31m 5.0s[39m PhutilLibraryTestCase::testLibraryMap
[42m[1m PASS [m[49m [32m 5ms[39m[33m★[39m PhutilLibraryTestCase::testEverythingImplemented
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilLocaleTestCase::testLoadAllLocales
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilLunarPhaseTestCase::testLunarPhases
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilModuleUtilsTestCase::testGetCurrentLibraryName
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilOAuth1FutureTestCase::testOAuth1SigningWithTwitterExamples
[42m[1m PASS [m[49m [32m 76ms[39m PhutilOAuth1FutureTestCase::testOAuth1SigningWithJIRAExamples
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilOAuth1FutureTestCase::testOAuth1SigningWithOldSpecExmaples
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilOpaqueEnvelopeTestCase::testOpaqueEnvelope
[42m[1m PASS [m[49m [32m 45ms[39m[33m★[39m PhutilPHPFragmentLexerTestCase::testPHPFragmentLexer
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilPHPObjectProtocolChannelTestCase::testPHPObjectChannelBasics
[42m[1m PASS [m[49m [32m 61ms[39m PhutilPHPObjectProtocolChannelTestCase::testCloseExecWriteChannel
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilPHPObjectProtocolChannelTestCase::testCloseSocketWriteChannel
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilParserGeneratorTestCase::testFirst
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilParserGeneratorTestCase::testUnreachableRule
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilParserGeneratorTestCase::testMessySymbols
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilParserGeneratorTestCase::testIrreducibleGrammars
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilParserGeneratorTestCase::testStates
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilParserGeneratorTestCase::testBogusGrammar
[42m[1m PASS [m[49m [32m 3ms[39m[33m★[39m PhutilParserGeneratorTestCase::testETParser
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilParserGeneratorTestCase::testBadStartRule
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilParserGeneratorTestCase::testUnreachableTerminal
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilPhtTestCase::testPht
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilPregsprintfTestCase::testPregsprintf
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilProcessRefTestCase::testIdentifyOverseerProcess
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilQueryStringParserTestCase::testQueryStringListParsing
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilQueryStringParserTestCase::testQueryStringParsing
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilReadableSerializerTestCase::testPrintableValue
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilRopeTestCase::testRopeOperations
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilRopeTestCase::testMoreRopeOperations
[42m[1m PASS [m[49m [32m 4ms[39m[33m★[39m PhutilShellLexerTestCase::testShellLexer
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilSimpleOptionsLexerTestCase::testSimpleOptionsLexerTokens
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilSimpleOptionsLexerTestCase::testSimpleOptionsLexerNiceTokens
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilSimpleOptionsTestCase::testSimpleOptionsUnterminatedStrings
[42m[1m PASS [m[49m [32m 7ms[39m[33m★[39m PhutilSimpleOptionsTestCase::testSimpleOptionsParse
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilSimpleOptionsTestCase::testSimpleOptionsUnparse
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilSimpleOptionsTestCase::testSimpleOptionsCaseParse
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilSystemTestCase::testParseMeminfo
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilSystemTestCase::testParseVMStat
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTranslationTestCase::testLoadAllTranslations
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTranslatorTestCase::testCzech
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTranslatorTestCase::testValidateTranslation
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTranslatorTestCase::testPerson
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTranslatorTestCase::testSetInstance
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTranslatorTestCase::testTranslateDate
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTranslatorTestCase::testEnglish
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTranslatorTestCase::testFormatNumber
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTranslatorTestCase::testNumberTranslations
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTsprintfTestCase::testTsprintf
[42m[1m PASS [m[49m [32m 38ms[39m[33m★[39m PhutilTypeSpecTestCase::testTypeSpecParse
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilTypeSpecTestCase::testRegexValidation
[42m[1m PASS [m[49m [32m 18ms[39m[33m★[39m PhutilTypeSpecTestCase::testGetTypeOf
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilTypeSpecTestCase::testMixedVector
[42m[1m PASS [m[49m [32m 3ms[39m[33m★[39m PhutilTypeSpecTestCase::testCanonicalize
[42m[1m PASS [m[49m [32m 4ms[39m[33m★[39m PhutilTypeSpecTestCase::testScalarOrListRegexp
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilTypeSpecTestCase::testGetCommonParentClass
[42m[1m PASS [m[49m [32m 6ms[39m[33m★[39m PhutilTypeSpecTestCase::testTypeCheckFailures
[42m[1m PASS [m[49m [32m 16ms[39m[33m★[39m PhutilTypeSpecTestCase::testTypeSpecStringify
[42m[1m PASS [m[49m [32m 4ms[39m[33m★[39m PhutilTypeSpecTestCase::testCheckMap
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testBadHTTPParameters
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testStrictGitURIParsingOfLeadingWhitespace
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testHTTPParameterTypes
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testDefaultPorts
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilURITestCase::testURIParsing
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testAmbiguousURIs
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testURIGeneration
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testGetQueryParamsAsMap
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testNoRelativeURIPaths
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testQueryURIConstruction
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testUnusualURIs
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testStrictURIParsingOfLeadingWhitespace
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testStrictURIParsingOfHosts
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testGitURIParsing
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testAppendPath
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilURITestCase::testDuplicateKeys
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8shorten
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8ucwords
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8IsCombiningCharacter
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8izeASCIIIgnored
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testCJK
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8ConsoleStrlen
[42m[1m PASS [m[49m [32m 44ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8izeLongStringNosegfault
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8Wrap
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8v
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8CodepointEncoding
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8BMP
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8StringTruncator
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8StringlikeObjects
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8strtoupper
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8izeOwlIsCuteAndFerocious
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8NonHTMLWrap
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8LargeTruncation
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8vCodepoints
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8vCombined
[43m[1m SKIP [m[49m PhutilUTF8TestCase::testSystemLocaleManagement
System does not have en_US + en_GB to do locale adjustment tests.
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8ConvertParams
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8strtolower
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testOverlongFormFiltering
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8izeUTF8Ignored
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testSurrogateFiltering
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8izeInvalidUTF8Fixed
[42m[1m PASS [m[49m [32m101ms[39m PhutilUTF8TestCase::testUTF8BMPSegfaults
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8len
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUTF8TestCase::testUTF8Convert
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUnitTestEngineTestCase::testTryTestCases
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUnitTestEngineTestCase::testTryTestMap
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUnitTestEngineTestCase::testPass
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilUnitTestEngineTestCase::testFailSkip
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilUnitTestEngineTestCase::testGetTestPaths
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUrisprintfTestCase::testUrisprintf
[42m[1m PASS [m[49m [32m 2ms[39m[33m★[39m PhutilUtilsTestCase::testPhutilJSONDecode
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testAssertStringLike
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testIFilterWithEmptyValueNegateFiltered
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testIFilterInvalidIndexThrowException
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testNaturalList
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testVectorSortString
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testHashComparisons
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testPhutilUnits
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testmergevMergingBasicallyWorksCorrectly
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testIFilterIndexNotExistsNotFiltered
[42m[1m PASS [m[49m [32m 3ms[39m[33m★[39m PhutilUtilsTestCase::testFnmatch
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testHeadKeyLastKey
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testMFilterWithEmptyValueFiltered
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testAssertSameKeys
[42m[1m PASS [m[49m [32m 1ms[39m[33m★[39m PhutilUtilsTestCase::testPhutilINIDecode
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testVectorSortInt
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testHeadLast
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testIFilterWithEmptyValueFiltered
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testArrayInterleave
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testNonempty
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testArrayPartition
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testLoggableString
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testIdx
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testVarExport
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testCensorCredentials
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testID
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testSplitLines
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testJSONEncode
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testAssertInstancesOf
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testMFilterNullMethodThrowException
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testMFilterWithEmptyValueNegateFiltered
[42m[1m PASS [m[49m [32m 20ms[39m[33m★[39m PhutilUtilsTestCase::testQueryStringEncoding
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testCoalesce
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testArrayFuse
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m PhutilUtilsTestCase::testIFilterIndexNotExistsAllFiltered
[42m[1m PASS [m[49m [32m183ms[39m XHPASTNodeTestCase::testGetStringVariables
[42m[1m PASS [m[49m [32m 63ms[39m XHPASTNodeTestCase::testGetNamespace
[42m[1m PASS [m[49m [31m671ms[39m XHPASTTreeTestCase::testEvalStaticString
[42m[1m PASS [m[49m [32m 5ms[39m[33m★[39m XUnitTestResultParserTestCase::testAcceptsSimpleInput
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m XUnitTestResultParserTestCase::testEmptyInputFailure
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m XUnitTestResultParserTestCase::testAcceptsNoTestsInput
[42m[1m PASS [m[49m [32m <1ms[39m[33m★[39m XUnitTestResultParserTestCase::testInvalidXmlInputFailure