Commit graph

662 commits

Author SHA1 Message Date
Sam Reed
6b1c5279b3 Fix mixed/messed up whitespace 2012-03-07 01:09:35 +00:00
Alexandre Emsenhuber
1f6f0371cc Make RecentChangeTest work by using the same context for expected and actual results. They were failing on my installation because $wgLang->getCode() != $wgContLang->getCode() when the test was called. 2012-03-05 21:21:34 +00:00
Antoine Musso
2741323b9b amend r113016 , that was for bug 34302 2012-03-05 11:50:30 +00:00
Antoine Musso
3c098d1da5 place holder to test bug 34919 when it is fixed 2012-03-05 11:48:35 +00:00
Aaron Schulz
ea6b51694e r112563: Removed random bogus user IDs passed into to Block constructor in tests 2012-02-28 02:32:59 +00:00
Krinkle
3cb731351e [IRC Log Message] Fix for protect/protect and protect/modify
* protect/protect and protect/modify were still failing because the output on IRC is not matching the i18n messages. The bots look for comment.match(<i18n-message> + (optionally) followed by ": user comment").
* The problem with protect/protect and protect/modify is that the protection settings are also inserted in somewhere in the message. Before MediaWiki 1.19 these were included in the IRC message as part of $1 (title). That may be ugly, but that's how it has always been. Since the point is to reproduce the old output we need to fix this one as well. This will make the output like:

  Krinkle * protected "[[Sandbox [edit=autoconfirmed)]]"

which is exactly how it has been before and that's the the bots rely on (which was presumably done originally like that since it was the only way to make the output match the i18n message)

* Fixes more bug 34508
2012-02-28 01:56:15 +00:00
Krinkle
6c3ab734a9 [RecentChangeTest] Refactor unit test to test better test the issue
* assert used message-keys/variables instead of hardcoded values
* Pass $comment to the assertion helper instead of using it by default so that actions that don't use a comment (such as patrol) don't get forced a comment, to better replicate the IRC behavior
* Adding placeholder for Auto-Edit-Summary things that should also be checked in here, not sure how to do those yet
* Adding tests for block/* and protect/*
2012-02-28 00:39:01 +00:00
Antoine Musso
b2d220519d rename test file to end with Test.php :D 2012-02-25 21:39:54 +00:00
Antoine Musso
ab046e8362 basic tests for bug 34508 2012-02-25 21:22:49 +00:00
Antoine Musso
f40529b464 avoid test suite file leaks 2012-02-24 20:30:55 +00:00
Max Semenik
66cb810778 Test that verifies uniqueness of query module prefixes 2012-02-24 18:49:48 +00:00
Antoine Musso
f5b45904e1 avoid exif tests file leakage
Exif test are leaking files heavily on our test server. This quick patch make
it sure we delete temporary files.

Ideally, we should have something like a temporary filesystem backend that
would self destruct :-D

requires r112326: wfRecursiveRemoveDir()
2012-02-24 15:43:11 +00:00
Daniel Friesen
d0a51ee5a4 Fix bug 34684 in my PathRouter code:
- Update the tests to test extra characters and patterns like like \\ and $1
- Also update the tests to make sure that matches that don't have enough data to work fail
- Replace the str_replace and preg_match based code with code based on preg_replace_callback.
2012-02-24 11:31:36 +00:00
Platonides
f13819e5be xdiff_string_rabdiff() appeared in version 1.5.0 of xdiff extension.
PHP manual saying PECL xdiff >= 0.2.0 is wrong.
Follow-up to r111701
2012-02-20 16:03:40 +00:00
Tim Starling
e1ee5c469b (bug 34428) Fixed hash mismatch errors in DiffHistoryBlob::patch() by simulating LibXDiff's broken Adler-32 implementation. 2012-02-16 23:27:00 +00:00
Sam Reed
8e78fbe32b Cleanup a few unused globals 2012-02-16 02:35:48 +00:00
Alexandre Emsenhuber
3732676a8c Removed assertions calling MWNamespace::isMain() from MWNamespaceTest::testIsSubject() that give an error since the former now calls wfDeprecated() 2012-02-15 13:31:20 +00:00
Antoine Musso
51dacc9fbf split ns selector tests for filter / disable options
ping r111376
2012-02-14 09:59:59 +00:00
Alexandre Emsenhuber
765d9ca795 Use WikiPage instead of Article to call doDeleteArticle 2012-02-13 16:38:37 +00:00
Krinkle
78c157faf9 [Html] Follow-up r109990: Add support for excluding and disabling options 2012-02-13 15:08:26 +00:00
Krinkle
8a5c2c6026 [Html] Follow-up r109990: Add category to example namespaces
- Category is a special case since it is not moveable  by default, useful to keep in the test
2012-02-13 14:53:40 +00:00
Alexandre Emsenhuber
2aecd77a15 * Use WikiPage instead of Article to call doEdit()
* Use a local user object and pass it WikiPage::doEdit()
* User::$mRights is a flat array of permissions, not a 2-D array like $wgGroupPermissions
2012-02-12 15:22:01 +00:00
Aaron Schulz
c2861f924c * Corrected and improved FileBackend::getFileList() comments.
* Added unit tests for using getFileList() iterators twice.
2012-02-08 22:13:03 +00:00
Antoine Musso
6a3fb66d2d test FileRepo constructor 2012-02-07 14:54:06 +00:00
Antoine Musso
c9c00ef397 disable ApiUploadTest
ApiUploadTest gives inconsistent results which trigger false alamrs to all
the ops team. We are disabling those tests for now.

See https://bugzilla.wikimedia.org/26169
2012-02-06 21:39:56 +00:00
Alexandre Emsenhuber
845767dd09 Use WikiPage instead of Article to call doEdit() and getId() 2012-02-06 11:19:14 +00:00
Aaron Schulz
34a8565419 Added missing tests from r110731 2012-02-06 05:26:36 +00:00
Alexandre Emsenhuber
ba913a2eb0 * Use WikiPage instead of Article for ParserCache stuff
* Use ParserOptions::newFromUserAndLang() instead of 'new ParserOptions' to not rely on global variables
2012-02-05 16:45:41 +00:00
Aaron Schulz
1bebf0c7ea Fixed windows-related test failures (that string format doesn't work with \r\n line endings as the \r chars are left in the PHP string). 2012-02-02 18:42:02 +00:00
Antoine Musso
fc6bc233be Fix doxygen docs before REL1_19 branching 2012-02-01 20:53:38 +00:00
Alexandre Emsenhuber
97349af667 * Use WikiPage instead of Article
* Use a local User object passed to WikiPage::doEdit() instead of overriding $wgUser
2012-02-01 15:53:57 +00:00
Krinkle
6ebbb369a6 [Xml::encodeJsVar] Change to match FormatJson::encode output
- Pure whitespace change
- In preparation to deprecate it in favor of FormatJson / json_encode
2012-01-30 19:40:20 +00:00
Antoine Musso
3bbbe1f867 make sure we test normalization against normalized title
This patch fix ApiQueryTest::testTitlesGetNormalized() when $wgMetaNamespace
would contains space / underscore.

Example:
-8<-------------8<------------8<------------------8<----------8<------
1) ApiQueryTest::testTitlesGetNormalized
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
 Array (
     'from' => 'Project:articleA'
-    'to' => 'My_Project:ArticleA'
+    'to' => 'My Project:ArticleA'
 )
-8<-------------8<------------8<------------------8<----------8<------

This patch use Title class logic to forge a normalized title instead of
manually creating it by appending two strings.

Final fix to bug 33663 (comment 21):
https://bugzilla.wikimedia.org/show_bug.cgi?id=33663#c21
2012-01-30 15:54:46 +00:00
Antoine Musso
9755d2e5aa test Html::namespaceSelector() id & name attributes generation
Method was introduced by r109990.
2012-01-30 10:39:51 +00:00
Aaron Schulz
9a1452ae92 In FileBackendBase/FileBackend:
* Moved some public static functions from FileBackend to FileBackendBase as the later defines the public API.
* Made splitStoragePath() return null if the backend or container name is empty.
* Made normalizeContainerPath() kill leading directory separators.
* Added more unit tests and made some documentation tweaks.
In FSFileBackend:
* Added resolveContainerName() to disallow '.' a container name, since this would cause a traversal.
2012-01-29 21:28:31 +00:00
Aaron Schulz
638b58c272 * In NewParserTest, made it possible to use the --use-filebackend param to run the tests on a given registered backend.
* In FileBackendTest, killed useless recursiveClean() call.
2012-01-28 01:20:42 +00:00
Aaron Schulz
ece8bb5e6f r110180: fixed copy-paste cruft for custom backend code. Also made backend names consistent. 2012-01-28 00:43:55 +00:00
Aaron Schulz
e9f1ffeed7 Killed the metric arseload of test folders that were being leaked and killing jenkins 2012-01-27 22:57:14 +00:00
Aaron Schulz
6c784b1812 Fixed a bunch of dir leakage 2012-01-27 22:46:55 +00:00
Alexandre Emsenhuber
308660c29a Use WikiPage instead of Article to call doDeleteArticle() 2012-01-27 21:21:19 +00:00
Chad Horohoe
e8da212569 Fixup r109698, add setter for $namespaceNames and use proper accessors in the tests.
Since we're here: nothing uses $namespaceNames, $mNamespaceIds or $namespaceAliases
outside of this class (core or extensions) so lets make it protected.
2012-01-27 13:00:26 +00:00
Aaron Schulz
c1c6433bfc * In NewParserTest, refactored code to use FileBackend (bug 31737). Also made some speed improvements and made regex= not flood the output with 600 items of crap.
* In FileBackendTest, call clean() on the dirs *after* deleting all the files first.
* Speed improvements to MediaWikiTestCase.
2012-01-25 23:11:53 +00:00
Krinkle
3065ece7a2 Fix broken unit test
* r109993 broke the test by overwriting namespaces it tried to preserve
* tearDown should always have the opposite order of the overrides in setUp
* Adding wgLanguageCode while at it, no reason not to, just in case.

-- Follows-up r109993
2012-01-25 03:45:01 +00:00
Krinkle
3c9d05055b [Html] Unit test + bugfix Html::namespaceSelector
* Previously it was passing $selectAttribs['name'] to Xml::label, which uses its value for the <label for=""> attribute. This works as long as $selectAttribs['id'] and $selectAttribs['name'] match, but when they don't it fails. <label for=""> always corresponds with <{input,text area,select} id=""> in browsers, never with "name".
* Make name/id match eachother by default to avoid backwards compatibility breakages (they used to match in the Xml class method as well)
* Add HtmlTest.php entries similar to the ones in XmlTest
* Fix E_NOTICE about $params['selected'], default to ''

-- Follows-up r109974, r109698, r109990
-- Bug originally introduced in r41425
-- XmlTest.php still runs successfully
-- HtmlTest.php runs successfully
2012-01-25 03:25:54 +00:00
Aaron Schulz
d1b159ef63 In FileBackend:
* Use 'b' param in some fopen() calls as needed for Windows and newline handling.
* Removed some useless padding code in FileBackend::getContainerShard(). Initialized $m to make IDE happy.
* Updated some code comments.
In SwiftFileBackend:
* Manually set the ETag when using php-cloudfiles for creating files to avoid https://github.com/rackspace/php-cloudfiles/issues/59.
* Manually set the content type based on how StreamFile::getType(). This makes it safe to read files directly out of the proxy to end-users. The streamFile() backend functions already uses a similar content-type check.
2012-01-25 01:57:28 +00:00
Krinkle
957c3b5b68 [Unit testing] Re-order attribs to a-z to make testing more reliable
* This is in preparation for deprecating this in favor of an Html:: method soon, making sure here that tests still match afterwards
* Follows-up r109698
2012-01-25 00:52:29 +00:00
Aaron Schulz
73d4d6edbf Made FileOp classes enforce required params. Also reverts r109823. 2012-01-24 05:54:47 +00:00
Antoine Musso
5eba9f361a FileRepo: check constructor parameters
new FileRepo() requires an array of parameters having at least the
'name' and 'backend' key setup.

TODO: 'backend' keyword should probably default to FileBackend.
2012-01-23 14:50:54 +00:00
Aaron Schulz
a0bce8f10e * Added some wfProfileIn() calls to file backend code.
* Made FileBackend::getFileProps() final.
* Added exception needed in SwiftFileBackend::getConnection().
* Various FileBackendTests fixes and additions. Optimized it a bit by keeping the backend instance in memory.
2012-01-23 08:33:31 +00:00
Aaron Schulz
609cf8d522 * Modified StoreBatchTest and FileBackendTest to allow specifying a registered backend to use
* Improved FileBackendTest file pruning and added more getFileList() tests
2012-01-22 00:34:04 +00:00