Page MenuHomePhabricator

mediawiki/services/function-evaluator coverage reports fail (with the same test suite that passes in the pipeline) so don't get published
Closed, ResolvedPublic

Description

https://gerrit.wikimedia.org/r/c/mediawiki/services/function-evaluator/+/790382 merges and publishes the pipeline image fine, but fails the coverage job:

00:00:34.688   55 passing (4s)
00:00:34.688   2 failing
00:00:34.688 
00:00:34.688   1) evaluate-integration
00:00:34.689        javascript - addition:
00:00:34.689 
00:00:34.689       javascript - addition
00:00:34.689       + expected - actual
00:00:34.689 
00:00:34.689            "Z1K1": "Z9"
00:00:34.689            "Z9K1": "Z22"
00:00:34.689          }
00:00:34.689          "Z22K1": {
00:00:34.689       +    "Z1K1": "Z6"
00:00:34.689       +    "Z6K1": "13"
00:00:34.689       +  }
00:00:34.689       +  "Z22K2": {
00:00:34.689            "Z1K1": "Z9"
00:00:34.689            "Z9K1": "Z24"
00:00:34.689          }
00:00:34.689       -  "Z22K2": {
00:00:34.689       -    "Z1K1": {
00:00:34.689       -      "Z1K1": "Z9"
00:00:34.689       -      "Z9K1": "Z5"
00:00:34.689       -    }
00:00:34.689       -    "Z5K1": {
00:00:34.689       -      "Z1K1": "Z6"
00:00:34.689       -      "Z6K1": "Executor returned some nonsense: ."
00:00:34.689       -    }
00:00:34.689       -  }
00:00:34.689        }
00:00:34.689       
00:00:34.689       at Context.<anonymous> (test/features/v1/evaluateTest.js:140:12)
00:00:34.689 
00:00:34.689   2) evaluate-integration
00:00:34.689        javascript - addition (with generics):
00:00:34.689 
00:00:34.689       javascript - addition (with generics)
00:00:34.689       + expected - actual
00:00:34.689 
00:00:34.689            "Z1K1": "Z9"
00:00:34.689            "Z9K1": "Z22"
00:00:34.689          }
00:00:34.689          "Z22K1": {
00:00:34.689       +    "Z1K1": "Z6"
00:00:34.689       +    "Z6K1": "13"
00:00:34.689       +  }
00:00:34.689       +  "Z22K2": {
00:00:34.689            "Z1K1": "Z9"
00:00:34.689            "Z9K1": "Z24"
00:00:34.689          }
00:00:34.689       -  "Z22K2": {
00:00:34.689       -    "Z1K1": {
00:00:34.689       -      "Z1K1": "Z9"
00:00:34.689       -      "Z9K1": "Z5"
00:00:34.689       -    }
00:00:34.689       -    "Z5K1": {
00:00:34.689       -      "Z1K1": "Z6"
00:00:34.689       -      "Z6K1": "Executor returned some nonsense: ."
00:00:34.689       -    }
00:00:34.689       -  }
00:00:34.689        }
00:00:34.689       
00:00:34.689       at Context.<anonymous> (test/features/v1/evaluateTest.js:140:12)
00:00:34.689

Event Timeline

I can reproduce locally with docker run --volume /Users/jamesforrester/code/mediawiki-services-function-evaluator:/src docker-registry.wikimedia.org/releng/node14-test-browser:0.0.2-s4 coverage on current HEAD with up-to-date submodule (path will need to be adjusted for local runs of course).

If I open the image up interactively with docker run --volume /Users/jamesforrester/code/mediawiki-services-function-evaluator:/src --tty --interactive --entrypoint /bin/bash docker-registry.wikimedia.org/releng/node14-test-browser:0.0.2-s4 the file is definitely there:

➜  mediawiki-services-function-evaluator git:(master) ✗ docker run --volume /Users/jamesforrester/code/mediawiki-services-function-evaluator:/src --tty --interactive --entrypoint /bin/bash docker-registry.wikimedia.org/releng/node14-test-browser:0.0.2-s4
nobody@ddc0010bb002:/src$ ls -l ./function-schemata/javascript/src/utils.js
-rw-r--r-- 1 nobody nogroup 19168 May  2 15:44 ./function-schemata/javascript/src/utils.js
nobody@ddc0010bb002:/src$ node -i
Welcome to Node.js v14.17.5.
Type ".help" for more information.
>
Error: Could not open history file.
REPL session history will not be persisted.
> const foo = require( './function-schemata/javascript/src/utils.js' );
undefined
> foo
{
  arrayToZ10: [Function: arrayToZ10],
  convertArrayToZList: [AsyncFunction: convertArrayToZList],
  convertArrayToKnownTypedList: [Function: convertArrayToKnownTypedList],
  convertZListToArray: [Function: convertZListToArray],
  isString: [Function: isString],
  isArray: [Function: isArray],
  isObject: [Function: isObject],
  isKey: [Function: isKey],
  isZid: [Function: isZid],
  isReference: [Function: isReference],
  isGlobalKey: [Function: isGlobalKey],
  deepEqual: [Function: deepEqual],
  deepCopy: [Function: deepCopy],
  getHead: [Function: getHead],
  getTail: [Function: getTail],
  getTypedListType: [Function: getTypedListType],
  inferType: [Function: inferType],
  isEmptyZList: [Function: isEmptyZList],
  isUserDefined: [Function: isUserDefined],
  kidFromGlobalKey: [Function: kidFromGlobalKey],
  makeFalse: [Function: makeFalse],
  makeResultEnvelope: [Function: makeResultEnvelope],
  makeResultEnvelopeWithVoid: [Function: makeResultEnvelopeWithVoid],
  makeMappedResultEnvelope: [Function: makeMappedResultEnvelope],
  makeTrue: [Function: makeTrue],
  makeUnit: [Function: makeUnit],
  makeVoid: [Function: makeVoid],
  isVoid: [Function: isVoid],
  wrapInKeyReference: [Function: wrapInKeyReference],
  wrapInQuote: [Function: wrapInQuote],
  wrapInZ6: [Function: wrapInZ6],
  wrapInZ9: [Function: wrapInZ9],
  makeEmptyZMap: [Function: makeEmptyZMap],
  isZMap: [Function: isZMap],
  setZMapValue: [Function: setZMapValue],
  getZMapValue: [Function: getZMapValue],
  maybeUpgradeResultEnvelope: [Function: maybeUpgradeResultEnvelope],
  maybeDowngradeResultEnvelope: [Function: maybeDowngradeResultEnvelope],
  getError: [Function: getError]
}

Change 835652 had a related patch set uploaded (by Cory Massaro; author: Cory Massaro):

[mediawiki/services/function-evaluator@master] Move function-schemata into JS executor.

https://gerrit.wikimedia.org/r/835652

Change 835652 merged by jenkins-bot:

[mediawiki/services/function-evaluator@master] Move function-schemata into JS executor.

https://gerrit.wikimedia.org/r/835652