Commit graph

47 commits

Author SHA1 Message Date
Siebrand Mazeland
437c84adbc Pass phpcs-strict on tests/phpunit/GlobalFunctions/
Change-Id: I2acc99ac96d8c738668fae2ecc9a0cee1b695f00
2014-04-24 11:47:06 +02:00
umherirrender
725d9d125d Removed unneeded spaces and colons in @param and friends
Also swapped some "$var type" to "type $var" or added missing types
before the $var. Changed some other types to match the more common
spelling. Makes beginning of some text in captial.

Change-Id: Ic36c8c7820a6c2d603f1138130670c6bf6a1ca59
2014-04-08 16:02:49 +00:00
ptarjan
40f6571312 Use lower memory limits
HHVM is ~5x more memory efficient than php-src and it shouldn't make us
fail this test

Change-Id: I35a69766c42818c222d36e1cf2a7fabe63a4ece5
2013-11-23 02:53:55 +05:30
umherirrender
5dbfd5bf80 Fixed spacing
- Removed trailing spaces in comments
- Removed multiple empty lines
- Removed space after object operator

Change-Id: I9fd3256ab490c7cd2034de3fd94e6be6e6d6d8f2
2013-11-21 18:52:25 +00:00
aude
02071ecb18 Fix covers tag in GlobalTest
Change-Id: Ia9e6f539e9b70e82c3fc0b352585650aa3ec5d7a
2013-11-16 16:01:47 +01:00
addshore
4bb09bbca5 @covers for all GlobalFunc tests
Also split 2 tests off into their correct test classes,
this methods are clearly no longer global functions

Change-Id: I482433f3099e72507a766e85d9576ff36e58b9ad
2013-10-24 10:00:55 +00:00
addshore
de7af7ac2c Fix scope on all /phpunit test methods
Change-Id: I3ce92463d485a0fb23e464e9a8059330f32d79af
2013-10-24 10:31:32 +02:00
Elliott Eggleston
f0ea8fdfb9 wfMkdirParents: recover from mkdir race condition
If mkdir fails, check again to see if dir has been created
since our initial check, and return true if so.

Also, in initial check, only return true if $dir is really
a directory, not a file.

Bug: 49391
Change-Id: I2b331669fae70948ce79ba1477c05968a3095c3d
2013-09-12 23:43:45 +00:00
umherirrender
24bfde2710 Fix spacing and break some lines
Change-Id: Ia57685d8858e02e399ad5c75ce64d12609d340ac
2013-08-24 17:06:25 +02:00
Kevin Israel
c2d0b90633 Make wfMatchesDomainList not match partial domains
Change-Id: I90e7af152fbd9bb8d84d5f2c54bd352b461c530d
2013-07-28 11:18:38 +02:00
Kevin Israel
052f1fcf30 Deprecate MWFunction::call and ::callArray
These functions existed to work around a bug (fixed in PHP 5.3) and
a missing feature (added in PHP 5.2) in older versions of PHP;
therefore, they are no longer necessary.

Change-Id: Ifebbe3d449fc57fd83f8350c28f467605c1a07b7
2013-07-19 18:48:51 -04:00
Kevin Israel
8ea3dc7faa Deprecate a few one-line global functions
Additions to the PHP language made these redundant.

* wfArrayLookup() is similar to PHP 5.1's array_intersect_key()
  yet has serious limitations. For example, integer string values
  are implicitly cast to integers.

* wfArrayMerge() can be replaced by PHP 5.3's array_replace().

* wfTime() just returns microtime( true ).

Change-Id: I2c6844fc48a265d2d885083b5bed8df846e0aaf4
2013-07-05 21:06:11 -04:00
Siebrand Mazeland
791d0b2a98 Update code formatting
Change-Id: I16a9b42651f1cfb1a70dffbb67b7b83dfeb90d03
2013-04-26 14:21:20 +00:00
Timo Tijhof
b36d883017 Tests: Make phpunit providers "public static".
Follows-up I9d2b148e57 (including phpunit/languages this time).

Bug: 46434
Change-Id: I30e5efcd88c516121c454676bd7a18f9b7c8fca6
2013-03-22 03:12:37 +01:00
Siebrand Mazeland
ac63001d8e Update formatting
1 of n.

Change-Id: I852729f08bbb0c5e39c2db44362ccdc7f59dcc08
2013-02-14 12:22:13 +01:00
Chad Horohoe
296e57f634 Deprecate in_string()
It's a silly wrapper for something you can do in one line
of PHP anyway.

Change-Id: Ib85e4aaa20e62fe5f218b38cf0759c9c799c3381
2013-02-06 14:38:57 -05:00
jenkins-bot
75ef257c29 Merge "pass codesniffer on tests/" 2013-01-28 23:47:45 +00:00
Alex Monk
c2c982c4e8 (bug 36537) Rename calls to wfArrayToCGI to wfArrayToCgi
Done with this command:
grep wfArrayToCGI * -R -l -Z | xargs -0 -l sed -i -e 's/wfArrayToCGI/wfArrayToCgi/g' && git checkout -- HISTORY

Change-Id: If7f4d4bfc199289c11c43cf519c2415a1aad1c51
2013-01-28 18:04:20 +00:00
Antoine Musso
0fd05285d7 pass codesniffer on tests/
Fix almost all occurences of the following sniffs:

Generic.CodeAnalysis.UselessOverridingMethod.Found
Generic.Formatting.NoSpaceAfterCast.SpaceFound
Generic.Functions.FunctionCallArgumentSpacing.SpaceBeforeComma
Generic.Functions.OpeningFunctionBraceKernighanRitchie.BraceOnNewLine
Generic.PHP.LowerCaseConstant.Found
PSR2.Classes.PropertyDeclaration.ScopeMissing
PSR2.Files.EndFileNewline.TooMany
PSR2.Methods.MethodDeclaration.StaticBeforeVisibility

Change-Id: I96aacef5bafe5a2bca659744fba1380999cfc37d
2013-01-28 12:14:26 +01:00
Brad Jorsch
252ae6268b (bug 43762) Mark slow unit test as @group medium
All tests based on APITestCase can be slow. I've also seen more than one
Jenkins failure due to GlobalTest::testMerge timing out.

Also, added a meta-test on APITestCase to make sure that all its
subclasses are marked with @group medium or @group large, to prevent new
tests from re-causing the bug.

Change-Id: I48630736a3d06574876fd1fa3d90899cfbc48012
2013-01-18 14:07:49 -05:00
umherirrender
9b3292e31a Add MediaWikiTestCase::checkHasDiff3 and use it
Some tests can only passed, when diff3 is enabled on the wiki, when not
the tests should marked as skipped. To avoid code duplicates inside
the test folder for the check, if diff3 is enabled, the new function
MediaWikiTestCase::checkHasDiff3 can be used.

Change-Id: Ie765da49a4a1358da78a3506e38772d61bcd010c
2012-11-22 17:45:50 +01:00
Daniel Kinzler
2c85e0dd5b avoid STDERR diff3 messages when using wfMerge()
diff3 issues a warning to stderr if any of the files does not end with a
newline character.

TextContent::preSaveTransform() does normalize revision text by simply
calling trim().  Thus to avoid a diff3 error we simply apply the same
normalization and add a newline to please the command.

Change-Id: I7baa3df95dd70cbc865b2491ccc791e60f8b9e6e
2012-11-10 17:26:08 +00:00
Antoine Musso
789272e2dc restore wgDebugTimestamps in testDebugFunctionTest()
Change-Id: I362e398bb891618f3c79fe625ef6cf30d6929df9
2012-10-15 15:41:20 +02:00
Timo Tijhof
181c7cdc8e Clean and repair many phpunit tests (+ fix implied configuration)
This commit depends on the introduction of
MediaWikiTestCase::setMwGlobals in change Iccf6ea81f4.

Various tests already set their globals, but forgot to restore
them afterwards, or forgot to call the parent setUp, tearDown...

Either way they won't have to anymore with setMwGlobals.

Consistent use of function characteristics:
* protected function setUp
* protected function tearDown
* public static function (provide..)

(Matching the function signature with PHPUnit/Framework/TestCase.php)

Replaces:
 * public function (setUp|tearDown)\(
 * protected function $1(

 * \tfunction (setUp|tearDown)\(
 * \tprotected function $1(

 * \tfunction (data|provide)\(
 * \tpublic static function $1\(

Also renamed a few "data#", "provider#" and "provides#" functions
to "provide#" for consistency. This also removes confusion where
the /media tests had a few private methods called dataFile(),
which were sometimes expected to be data providers.

Fixes:

TimestampTest often failed due to a previous test setting a
different language (it tests "1 hour ago" so need to make sure
it is set to English).

MWNamespaceTest became a lot cleaner now that it executes with
a known context. Though the now-redundant code that was removed
didn't work anyway because wgContentNamespaces isn't keyed by
namespace id, it had them was values...

FileBackendTest:
* Fixed: "PHP Fatal: Using $this when not in object context"

HttpTest
* Added comment about:
  "PHP Fatal: Call to protected MWHttpRequest::__construct()"
  (too much unrelated code to fix in this commit)

ExternalStoreTest
* Add an assertTrue as well, without it the test is useless
  because regardless of whether wgExternalStores is true or false
  it only uses it if it is an array.

Change-Id: I9d2b148e57bada64afeb7d5a99bec0e58f8e1561
2012-10-09 03:01:51 +02:00
Nikerabbit
d6b9b27492 Merge "Use the MWDebug class to display debug log back in the request." 2012-08-28 05:49:41 +00:00
Tim Starling
ad03f2f753 Revert Uri class due to bug 39710
Revert 94f623363b. Apparently all
ReverseChronologicalPager subclasses were broken by the unexplained
interface change in wfArrayToCgi(): changing the interpretation of
null array values from "omit this key" to "include this key with no
value". The function has always been called with the former
interpretation, that's why the special case was in there.

Also reverted dependent changes 4b517fa and part of 3d97704.

Change-Id: I41dadbde5d0e0e4c54cc76bfc13c263c15c73828
2012-08-28 10:53:09 +10:00
Alexandre Emsenhuber
61dd1d037b Use the MWDebug class to display debug log back in the request.
- This removes the duplication of MWDebug::$debug and
  OutputPage::$mDebugtext, so there's no need to store two times
  the same text
- Removed OutputPage::debug() since it's no longer used
- Had to keep OutputPage::$mDebugtext because it's still
  referenced by SemanticPageMaker extension
- Moved Skin::formatDebugHTML() to MWDebug::GetHTMLDebugLog()
  and replaced the call in Skin::generateDebugHTML() to use it
- Also check $logonly before sending entries to the debug
  toolbar in wfDebug(), for consistency
- Changed MWDebug::getDebugHTML() to also return the debug log
  in an HTML comment if $wgDebugComments is set to true and
  changed the location of this call to BaseTemplate::printTrail()
  so that its result is the latest possible. This also includes
  the debug toolbar.
- Removed MockOutputPage and related test cases since they are
  no longer accurate

Change-Id: Ie0f389f8566457b1c938c627ed930040741ac9d9
2012-08-27 23:47:19 +02:00
Daniel Friesen
94f623363b Add a Uri class.
Add a Uri class matching our mw.Uri JS class for handling uris.
This class should be helpful in a bunch of places where we end up doing manual
concatenation of things like the path + '?' + query of a url parsed with wfParseUrl.

[tylerromeo@gmail.com: Removed cat() function, fixed wfWarn() usage for aliases
 and added visibility to all functions. Also added test for aliases.]
Signed-off-by: Tyler Romeo <tylerromeo@gmail.com>

Change-Id: Iefdedb7c80cf1d4aab58050edab3ab44ba868a58
2012-08-06 22:46:25 -04:00
Antoine Musso
2389ec7141 MockOutputPage class in its own file
The MockOutputPage can be needed in various tests suite beside
GlobalFunctions. Seems to make sense to get it in its own class so we
can easily use it.

Change-Id: Icbb34db81e8cc8636d95f6326dd228bc74a741d7
2012-04-13 12:47:19 +02:00
Santhosh Thottingal
c56cca551e (bug 32748) unicode URL for articles print version
Printer friendly version of article must encode URL in unicode.

- Patch originally written by Brion Vibber
  https://bugzilla.wikimedia.org/attachment.cgi?id=9593
- introduces wfExpandIRI() global function, uses wfExpandIRI_callback.
- phpunit test.

Change-Id: I348b9f1d2ce65cb14f20d4a5751ac9359c8b8316
2012-04-02 18:14:41 +02:00
Aaron Schulz
7c54a34730 Reverted r113688, r113691 per CR and filed #61440 upstream. 2012-03-19 18:28:47 +00:00
Aaron Schulz
c8cc2ff897 r113688: updated test assertions 2012-03-13 00:18:29 +00:00
Antoine Musso
2721648de3 Break wfBCP47, wfBaseName and wfTimestamp tests
They are now in their own files. Rewrite wfTimestamp tests to use
data providers like it should.

Originally commited without history by ^demon as r108420
2012-01-09 16:30:32 +00:00
Antoine Musso
13427e7448 revert r108420, will split with history 2012-01-09 16:21:13 +00:00
Chad Horohoe
3bdc1d5e99 * Drop old parserTests.php way of running parser tests. You can run parser tests via --group Parser or specifying
the includes/parser/MediaWikiParserTest.php test case
* Drop now unused various test recorder options -- phpunit outputs its data in lots of machine-readable formats, use those if you need to work with
  test data
* There's still a lot of duplication between NewParserTest::setUp() and MediaWikiTestCase, but hey one step at a time ;-)
* All tests pass for me (make phpunit && make parser)
2012-01-09 15:18:07 +00:00
Daniel Friesen
14a99505df Followup r105809; Split up the tests with a dataProvider and add a round trip test. 2012-01-05 00:26:13 +00:00
Daniel Friesen
57c8fe18c7 Update wfArrayToCGI and wfCgiToArray:
- 'foo' => '' now outputs "&foo=" instead of the key being omitted
- 'foo' => null and 'foo' => false now omit the key instead of outputting "&foo="
- Added a test to make sure that 'foo' => true outputs "&foo=1"
- Fixed a php notice caused when passing a =value-less bit like "&qwerty" to wfCgiToArray by treating it like php and extracting it as 'qwerty' => ''
- Updated tests
2011-12-11 18:25:23 +00:00
Roan Kattouw
d045b999ec (bug 29854) Store protocol-relative links twice in the externallinks table, one with http: in el_index and once with https: . Modified patch by Brad Jorsch 2011-11-14 09:13:58 +00:00
Aaron Schulz
a727d79f97 FU r100915: split out GlobalWithDBTest (tests which need the DB) 2011-10-27 20:54:27 +00:00
Aaron Schulz
e8dfaccd3b * Allow passing in a blacklist into wfIsBadImage()
* Added wfIsBadImage() unit tests
2011-10-27 00:23:23 +00:00
Brion Vibber
a6fa806eae Followup r97954: fix unit tests for wfShellMaintenanceCmd() to work on Unix as well as Windows 2011-09-23 22:17:41 +00:00
Aaron Schulz
122a14140a Added wfShellMaintenanceCmd() for Het Deploy support 2011-09-23 20:42:22 +00:00
Roan Kattouw
2aa5f42df7 Followup r95072: add tests for wfMatchesDomainList 2011-08-20 10:41:44 +00:00
Platonides
ecceeb7585 Remove the globals. r91570 was wrong saying that parent::setUp()
would initialise those vars (this class parent is MediaWikiTestCase,
not MediaWikiLangTestCase) but the language doesn't seem to matter.
2011-07-19 21:05:17 +00:00
Brion Vibber
0572c46e6d Partial revert of r91106: followup to r91127.
Suppressing all warning output from unserialize() in ExifBitmap::formatMetadata will hide actual errors; we're now checking explicitly for the bad-metadata and no-metadata markers so the case this was added for should not happen.
2011-07-06 18:47:35 +00:00
Chad Horohoe
0989a2bcbc Call parent::setUp() and allow it to do lang setup stuff 2011-07-06 17:58:29 +00:00
Sam Reed
35205cfd4e Followup r91087, rename directory 2011-06-30 16:41:50 +00:00
Renamed from tests/phpunit/includes/GlobalFunctions.php/GlobalTest.php (Browse further)