Page MenuHomePhabricator

Echo and Flow fail on Thanks 'check experimental' ('generic') tests
Open, Needs TriagePublic

Description

Steps to reproduce

  • Type check experimental (Only if your whitelisted)

Or you can just go to

https://integration.wikimedia.org/ci/job/mwext-testextension-hhvm/7785/consoleFull

Or you can view the results below

Actual results

  • The test fails with this error

00:48:16
00:48:16 Time: 33.84 seconds, Memory: 108.74Mb
00:48:16
00:48:16 There were 8 errors:
00:48:16
00:48:16 1) EchoEmailFormatterTest::testEmailFormatter
00:48:16 InvalidArgumentException: The icon is not registered
00:48:16
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/formatters/NotificationFormatter.php:138
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:175
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:846
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:733
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:446
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:87
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/tests/phpunit/EmailFormatterTest.php:53
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:156
00:48:16
00:48:16 2) ApiFlowThankTest::testRequestWithoutToken
00:48:16 Flow\Exception\InvalidDataException: User has no id and no ip
00:48:16
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:52
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:84
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/AbstractRevision.php:170
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/PostRevision.php:122
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:223
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:37
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:156
00:48:16
00:48:16 3) ApiFlowThankTest::testInvalidRequest
00:48:16 Flow\Exception\InvalidDataException: User has no id and no ip
00:48:16
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:52
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:84
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/AbstractRevision.php:170
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/PostRevision.php:122
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:223
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:37
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:156
00:48:16
00:48:16 4) ApiFlowThankTest::testValidRequest
00:48:16 Flow\Exception\InvalidDataException: User has no id and no ip
00:48:16
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:52
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:84
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/AbstractRevision.php:170
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/PostRevision.php:122
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:223
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:37
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:156
00:48:16
00:48:16 5) ApiFlowThankTest::testRequestWithInvalidId
00:48:16 Flow\Exception\InvalidDataException: User has no id and no ip
00:48:16
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:52
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:84
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/AbstractRevision.php:170
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/PostRevision.php:122
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:223
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:37
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:156
00:48:16
00:48:16 6) ApiFlowThankTest::testRequestWithOwnId
00:48:16 Flow\Exception\InvalidDataException: User has no id and no ip
00:48:16
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:52
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:84
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/AbstractRevision.php:170
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/PostRevision.php:122
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:223
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:37
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:156
00:48:16
00:48:16 7) ApiFlowThankTest::testApiTestGroup
00:48:16 Flow\Exception\InvalidDataException: User has no id and no ip
00:48:16
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:52
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:84
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/AbstractRevision.php:170
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/PostRevision.php:122
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:223
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:37
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:156
00:48:16
00:48:16 8) ApiFlowThankTest::testMediaWikiTestCaseParentSetupCalled
00:48:16 Flow\Exception\InvalidDataException: User has no id and no ip
00:48:16
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:52
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/UserTuple.php:84
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/AbstractRevision.php:170
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/includes/Model/PostRevision.php:122
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:223
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Thanks/tests/ApiFlowThankIntegrationTest.php:37
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:156
00:48:16
00:48:16 --
00:48:16
00:48:16 There was 1 failure:
00:48:16
00:48:16 1) Flow\Tests\Block\TopicListTest::testSortByOption
00:48:16 Default sortby now changed to updated
00:48:16 Failed asserting that two strings are equal.
00:48:16 --- Expected
00:48:16 +++ Actual
00:48:16 @@ @@
00:48:16 -'updated'
00:48:16 +'newest'
00:48:16
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Flow/tests/phpunit/Block/TopicListTest.php:58
00:48:16 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:156

Expected results

So I doint think thanks is broken, I think echo and flow doint work correctly in thanks generic tests because doing an experimental check in those repos, passes the generic tests In those repos.

Event Timeline

Paladox created this task.Mar 2 2016, 5:24 PM
Restricted Application added a project: Collaboration-Team-Triage. · View Herald TranscriptMar 2 2016, 5:24 PM
Restricted Application added a subscriber: Aklapper. · View Herald Transcript
Paladox updated the task description. (Show Details)Mar 2 2016, 5:24 PM
Catrope added a subscriber: Catrope.Mar 2 2016, 6:13 PM

I noticed that the clonemapper stage of this mwext-testextension-hhvm job clones fewer extensions than mediawiki-extensions-hhvm does, and clones Thanks first (before Echo and Flow). Is it possible that this produces an MW instance where Thanks is loaded before Echo and Flow? That would be a problem because Thanks depends on Echo.

I was thinking something similar to you. But yes it is loading fewer extensions, I have a patch, since we have to update parameter_functions.py with the missing dependencies. But no unlikely since I had a patch that converted thanks to generic, but I broke it by mistake so it was reverted. That patch had the missing thanks dependencies.

But maybe the missing dependencies in flow could be the problem but then that dosent explain echo because that has none.

But the extensions are sorted in generic and not in non generic.

This is how it is set for generic

def set_ext_dependencies(item, job, params):

"""
Reads dependencies from the yaml file and adds them as a parameter
:type item: zuul.model.QueueItem
:type job: zuul.model.Job
:type params: dict
"""
if not params['ZUUL_PROJECT'].startswith('mediawiki/extensions/'):
    return
# mediawiki/extensions/FooBar
split = params['ZUUL_PROJECT'].split('/')
if len(split) != 3:
    # mediawiki/extensions/FooBar/blah
    # mediawiki/extensions
    return

# FooBar
ext_name = split[-1]
params['EXT_NAME'] = ext_name

deps = get_dependencies(ext_name, dependencies)

# Export with a literal \n character and have bash expand it later
params['EXT_DEPENDENCIES'] = '\\n'.join(
    'mediawiki/extensions/' + dep for dep in sorted(deps)
)

What does "generic test" mean? I don't think that Flow failure has anything to do with Thanks.

Mattflaschen-WMF renamed this task from Echo and flow break Thanks generic tests to Echo and Flow fail on Thanks 'check experimental' ('generic') tests.Mar 2 2016, 7:32 PM

@Mattflaschen Thanks requires flow.

In parameter_functions.py

'Thanks': ['Echo', 'Flow', 'MobileFrontend'],

In mediawiki-extensions.yaml

  • Thanks: dependencies: 'Echo,Flow,MobileFrontend,VisualEditor,GuidedTour,AbuseFilter,SpamBlacklist,CheckUser,EventLogging,ConfirmEdit'

Generic is a test that does not have any extension names or is not customised per extension.

It is this test

mwext-testextension-{phpflavour}

I think its a bigger problem since I can reproduce on REL1_26 and REL1_25. On REL1_25 I'm getting this error

14:59:02 There was 1 error:
14:59:02
14:59:02 1) EchoEmailFormatterTest::testEmailFormatter
14:59:02 Undefined index:
14:59:02
14:59:02 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:174
14:59:02 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:849
14:59:02 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:749
14:59:02 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:463
14:59:02 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/includes/EmailFormatter.php:87
14:59:02 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/extensions/Echo/tests/phpunit/includes/EmailFormatterTest.php:54
14:59:02 /mnt/jenkins-workspace/workspace/mwext-testextension-hhvm/src/tests/phpunit/MediaWikiTestCase.php:131
14:59:02

@Legoktm could I add you to task please.

Paladox removed a subscriber: Legoktm.Mar 29 2016, 10:31 PM
Paladox updated the task description. (Show Details)Mar 30 2016, 12:53 AM
Paladox updated the task description. (Show Details)Mar 30 2016, 12:55 AM
Paladox updated the task description. (Show Details)
Restricted Application added a project: Growth-Team. · View Herald TranscriptSep 7 2018, 2:03 PM