Commit graph

179 commits

Author SHA1 Message Date
Platonides
fe7ee51f3c Follow up r87210 2011-05-01 23:02:27 +00:00
Platonides
e5a26f3460 Convert r86795 tests into a dataProvider 2011-05-01 21:33:16 +00:00
Platonides
10cd6f1b6a Fix the old XmlTest.php test bug in the dateMenu() when the wiki is configured for a languange other than English
Other tests were running before and messing with the Language objects.
2011-05-01 19:32:49 +00:00
Sam Reed
c720f313a8 Followup r86800, add missing () 2011-04-29 17:51:50 +00:00
Brion Vibber
6fff535d08 * (bug 28627) External link normalization now handles file: URL cases without throwing notice warnings.
Added some test cases for wfMakeUrlIndex() to GlobalTests (tweaks $wgUrlProtocols to toss in file:// support so it can test them).
Needs more cases for other URL styles probably; some of the more pathological file: URL cases still won't normalize really cleanly but will go through the function without exploding. The most-needed variants will be the Windows/IE-compatible ones I think -- so file:///c:/foo or file://server/foo.
2011-04-25 21:00:49 +00:00
Happy-melon
21813a563c Follow-up r86775: restub $wgLang. Not because it's a good idea, but because I can't see how to avoid the circular dependencies on it *without* stubbing it. Probably easier to just continue the drive to deprecate the global variable altogether. 2011-04-24 10:50:51 +00:00
Sam Reed
8e80b8c3c1 Tidy up some unused variables and such 2011-04-23 21:40:52 +00:00
Mark A. Hershberger
2e6a9b9cea * Add preprocessor tests that Bergi supplied for Bug #28642
* Add Bergi to CREDITS
2011-04-23 21:26:04 +00:00
Mark A. Hershberger
7d90f16834 Use assertStringEqualsFile in place of assertEquals and reading the file. 2011-04-23 21:21:02 +00:00
Mark A. Hershberger
e8ccedbbf0 missed some w/s 2011-04-23 21:18:50 +00:00
Mark A. Hershberger
6c3d0e056e w/s cleanup 2011-04-23 21:18:22 +00:00
Mark A. Hershberger
d42259d38c random w/s cleanup 2011-04-23 19:28:35 +00:00
Happy-melon
c80535ae10 Stop stubbing $wgLang and $wgContLang. There are no major code paths which do not call either $wgLang or $wgContLang at least once. All index.php calls unstub $wgContLang from MediaWiki::parseTitle() except in the edgecase of viewing pages referenced only by "curid=123", and since those will end up calling OutputPage::output() they will eventually be unstubbed at some point as well. All calls through load.php unstub $wgLang in ResourceLoaderContext::getLanguage() from ResouceLoader::respond() --> ResourceLoader::preloadModuleInfo(). All calls through api.php unstub $wgContLang in ApiResult::cleanUpUTF8() from ApiMain::printResult(). 2011-04-23 15:19:38 +00:00
Platonides
9f63d96785 Change tests to match preprocessor changes in r86072.
sed -i 's/<root><\(template\|tplarg\)>/<root><\1 lineStart=\\"1\\">/' phpunit/includes/parser/PreprocessorTest.php
sed -i 's/<root><\(template\|tplarg\)>/<root><\1 lineStart="1">/' parser/preprocess/*.expected
2011-04-19 18:39:37 +00:00
Max Semenik
f7c1ecc5ee Removed JavaScriptDistiller: unused 2011-04-19 10:13:25 +00:00
Sam Reed
0bf458ec62 Apply phase3 related Title fixes. With one minor addition, Title constructor marked as protected, "just in case"...
Patches by Yuvi Panda

From (bug 28583) Remove all /* private */ declarations in MediaWiki core
2011-04-18 23:20:21 +00:00
Platonides
eb7e30ee42 I forgot to commit this in r85906 2011-04-12 20:48:19 +00:00
Paul Copperman
8ec3ce80d9 Follow-Up r85618:
* UploadFromUrlTest.php: Remove another instance of stray ini_set statements.
* Makefile: Also exclude group Stub from tests when running 'make noparser' etc.
2011-04-11 16:41:23 +00:00
Neil Kandalgaonkar
4ae2a98e13 followup to r85654, move global declarations 2011-04-10 22:27:52 +00:00
Platonides
028a4a8378 Follow up r85566. Add the helper classes to test autoloader. 2011-04-10 16:42:29 +00:00
Max Semenik
1275cc6df6 SQLite is picky about the position of AUTOINCREMENT in field definition, handle it when converting from MySQL syntax 2011-04-10 08:44:06 +00:00
Neil Kandalgaonkar
33d656ff88 also generate random SVG files 2011-04-07 23:32:36 +00:00
Paul Copperman
f7e6dfb4a3 Various fixes for PHPUnit tests:
* Block.php: Set mExpiry to the value we store in the database, so that Block::equals() returns true. Fixes BlockTest::testInitializerFunctionsReturnCorrectBlock.
* In Title::checkUserBlock(): Convert message parameters to plain strings to make strict comparisons work. Fixes TitlePermissionTest::testUserBlock().
* ApiBlock.php: Follow-Up r85166, add 'Confirm' parameter to data array. Fixes ApiBlockTest::testMakeNormalBlock().
* ApiQueryTest.php: Use $wgMetaNamespace instead of $wgSitename	to account for customizations.
* RandomImageGenerator.php: Use default value for constructor param to prevent fatals.
* ApiTestCaseUpload.php: 
** Fix undefined variable $fileName.
** Remove stray ini_set statements, they don't belong there. Especially ini_set( 'error_reporting', 1 ) will effectively disable all reporting, which makes errors hard to track.
* ArticleTablesTest.php: Put testbug14404() in group Broken, as the fix for the bug has been reverted in r83868.
2011-04-07 14:54:38 +00:00
Happy-melon
37895d45e7 Follow-up r85302: new MediaWiki() constructor format in phpunit test declaration. 2011-04-06 21:59:49 +00:00
Platonides
c878cd608f r85553 fixup. When there are variants involved, the line
$GLOBALS['wgContLang'] = $context->lang;
is not assigning $wgContLang the same $langObj instantiated a couple of lines above, but a different object obtained from the user code, breaking variant parsertestsw..
2011-04-06 21:36:07 +00:00
Mark A. Hershberger
4e9b2c5c53 Apply modification of mdale's patch from Bug #28420: “Re-factor upload tests to support extensions extending upload test case” 2011-04-06 19:50:54 +00:00
Happy-melon
f121f89674 Follow-up r85403: fix fatal in parser tests. 2011-04-06 17:39:18 +00:00
Happy-melon
625695317e Follow-up r85302: update OutputPage constructors in core. 2011-04-05 00:06:47 +00:00
Platonides
25a338f5e0 Add a couple of brace test cases. 2011-03-30 17:41:58 +00:00
Sam Reed
8c0292520b Fixup whitespace from r80445 2011-03-27 01:27:02 +00:00
Happy-melon
cf08b61b1b Follow-up r84475: fixing the warning is easy enough... :D Also some random tweaks to Database.php documentation. 2011-03-21 23:03:11 +00:00
Happy-melon
6dbcdc1be0 Blame hashar for this giant commit; he teased me for making so many smaller ones earlier... :D
* Internalise $mAddress/$mUser, $mBy/$mByName, $mEnableAutoblock, $mId as getTarget(), getBlockers(), isAutoblocking(), getId().  
* This required editing AbuseFilter and CheckUser backwards-incompatibly, so push the rest of the changes out to those extensions.
* Attack the evil 14-parameter constructor and gratuitously-confusing newFromDB( $notVeryImportantParameter, $moreImportantParameter)
* Reimplement the hack for bug 13611 in a slightly less fragile fashion; could still do with further cleanup, but then again the login frontend is its own can of worms... :S
* Remove transitionary getTargetAndType() and newFromTargetAndType() methods
* Some optimisation in parseTarget()
* Fix the broken phpunit test mentioned in r84251
2011-03-21 19:12:41 +00:00
Aaron Schulz
91fb54d0f9 Reverted r84386; breakage too severe 2011-03-20 21:30:24 +00:00
Antoine Musso
5da14533aa Makes wikilinks nicer when possible
This patch mostly impact Title:getLocalUrl() with two changes:

1) Abstraction:

$wgActionPath related code is now in Title::resolveActionPath(). It now
interprets query parameters using an array which is easier to read than
playing with a regexp and the evil $matches[].


2) Tweaking:

Change the 7 years old (r2621) URL forge:
  "{$wgScript}?title={$dbkey}&{$query}"
  => /w/index.php?title=FOO&q=2

To a nicer
  "str_replace( '$1', $dbkey, $wgArticlePath )"
  => /wiki/FOO?q=2


Additional changes:

* Parser tests were modified to reflect the changes.
* PHPUnit TitleTest amended to test getLocalUrl() (add more!!)
* When using wgActionPaths, makes sure the 'view' action is a sane default
2011-03-20 14:57:49 +00:00
Antoine Musso
8012c3b188 debugging statement when starting a phpunit parser test 2011-03-18 21:45:32 +00:00
Sam Reed
7f1c9f7b63 Fixup some more old version comparison stuff 2011-03-15 12:06:40 +00:00
Roan Kattouw
27508f06af Followup r83891: don't insert a newline before ++ or -- . Patch by Paul Copperman 2011-03-14 18:04:39 +00:00
Roan Kattouw
5ce4ecfced Per Nikerabbit, add some minifier tests for historic failure cases that I had lying around 2011-03-14 13:55:42 +00:00
Roan Kattouw
867fc1cba8 (bug 27528) Incorporate Paul Copperman's minifier 2011-03-14 11:44:33 +00:00
Antoine Musso
187575aa47 Makes MediaWikiProvide methods static
Follow up and revert r82369 which used dynamic calls
2011-03-10 20:24:04 +00:00
Antoine Musso
e29fa6eef9 switch 'column' for 'colon'
I always thought the colon and semicolon punctuation marks were named after
their architectural equivalent: column. At least, to me, it made more sens
than using a term relating to thedigestive system.

Per Nikerabbit r83296
2011-03-08 07:27:18 +00:00
Platonides
95f1076f20 Remove unused globals 2011-03-06 23:28:32 +00:00
Antoine Musso
16c6730b84 PHPUnit coverage comment must not have parentheses
Those comments have the format:
 @covers Class::Method

In PHPUnit 3.5.12, the comment is split by :: and method_exist called on
the resulting string. When one use  Class::Method(), the result is a call
to method_exist( 'Method()' ) which is always false and raise an exception

Removing parentheses from r79118 solve the issue. This also kind of
revert r79164.
2011-03-06 17:36:42 +00:00
Max Semenik
09756f3c1e Fixed fatals in UploadFromUrlTest. It still fails though 2011-03-06 09:01:19 +00:00
Antoine Musso
6fbd3da876 tests for IP class, mostly incompletes
* IP::sanitizeIP()
* IP::canonicalize()
* IP::isInRange()
2011-03-05 17:30:33 +00:00
Antoine Musso
9ad5b773f7 Tests for bug 27854 - Http::isValidURI is to lax
Those tests are made to help someone fix bug 27854. You might want to add
some more.  Please note we want this function to only validate curl supported
URI, hence the hardcoded protocols http,https and ftp.

Some of those tests currently fail because of bug 27854.
2011-03-05 16:15:39 +00:00
Chad Horohoe
b661588c1f Followup r83140: FakeMemCachedClient -> EmptyBagOStuff in tests 2011-03-03 12:55:22 +00:00
Tim Starling
be76d86932 * Rewrote ObjectCache.php to conform to the modern coding style, and to be less convoluted about how CACHE_ANYTHING and CACHE_ACCEL are resolved. Moved most functionality to static members of a new ObjectCache class.
* Moved the global functions to GlobalFunctions.php, where they are now just convenience wrappers. Made them return non-references. Updated callers (none found in extensions). 
* Added an advanced configuration method, $wgObjectCaches, which allows a lot more detail in the object cache configuration than $wgMainCacheType. 
* Made all object cache classes derive from BagOStuff. 
* Split the MWMemcached class into a generic client class and a MediaWiki-specific wrapper class. The wrapper class presents a simple BagOStuff interface to calling code, hiding memcached client internals, and will simplify the task of supporting the PECL extension.
* Added some extra constructor parameters to MWMemcached, configurable via $wgObjectCaches.
* Removed the *_multi() methods from BagOStuff, my grepping indicates that they are not used.
* Rewrote FakeMemCachedClient as a BagOStuff subclass, called EmptyBagOStuff.
* Added an optional "server" parameter to SQLBagOStuff. This allows the server holding the objectcache table to be different from the server holding the core DB.
* Added MultiWriteBagOStuff: a cache class which writes to multiple locations, and reads from them in a defined fallback sequence. This can be used to extend the cache space by adding disk-backed storage to existing in-memory caches.
* Made MWMemcached::get() return false on failure instead of null, to match the BagOStuff documentation and the other BagOStuff subclasses. Anything that was relying on it returning null would have already been broken with SqlBagOStuff.
* Fixed a bug in the memcached client causing keys with spaces or line breaks in them to break the memcached protocol, injecting arbitrary commands or parameters. Since the PECL client apparently also has this flaw, I implemented the fix in the wrapper class.
* Renamed BagOStuff::set_debug() to setDebug(), since we aren't emulating the memcached client anymore
* Fixed spelling error in MWMemcached: persistant -> persistent
2011-03-03 09:37:37 +00:00
Antoine Musso
2a165ac219 Bug 2429 allow selection of associated namespace in recent changes
Done by adding yet another checkbox in Special:RecentChanges. The feature
also support namespace inversion.  For example, if you have selected
the TALK namespace with inversion and associated namespace, you will
be shown any changes which is not NS_MAIN or NS_TALK.

Tests:

SpecialRecentchanges tests only this feature. I had to filter out
the rc_timestamp condition which might cause trouble if the test
suite is run on another day. A better solution remains to be implemented.
2011-03-02 20:40:40 +00:00
Alexandre Emsenhuber
60f1302644 Per Platonides, fix for r82686: make ApiUploadTest work again
Added option request parameter to User::editToken() and User::matchEditToken() and use them where possible from the api.
Also removed $_SESSION usage since it's no longer needed
2011-03-02 12:52:47 +00:00