[PATCH 3 of 5] run-tests: write JSON reports to output dir

Pierre-Yves David pierre-yves.david at ens-lyon.org
Thu Jun 8 09:26:46 EDT 2017



On 06/08/2017 05:26 AM, Siddharth Agarwal wrote:
> # HG changeset patch
> # User Siddharth Agarwal <sid0 at fb.com>
> # Date 1496893603 25200
> #      Wed Jun 07 20:46:43 2017 -0700
> # Node ID 511ebc1769a9de229c5cca69ef3893bea1f2a63a
> # Parent  47a479f6ee522ad1f1d4e72a8d32096000360dc2
> run-tests: write JSON reports to output dir

Small glob missing in that patch, easy to fix in-flight.

> diff --git a/tests/test-run-tests.t b/tests/test-run-tests.t
> --- a/tests/test-run-tests.t
> +++ b/tests/test-run-tests.t
> […]
> @@ -836,6 +836,68 @@ test for --json
>            "time": "\s*[\d\.]{4,5}" (re)
>        }
>    } (no-eol)
> +--json with --outputdir
> +
> +  $ rm report.json
> +  $ rm -r output
> +  $ mkdir output
> +  $ rt --json --outputdir output
> +
> +  --- $TESTTMP/test-failure.t
> +  +++ $TESTTMP/output/test-failure.t.err
> +  @@ -1,5 +1,5 @@
> +     $ echo babar
> +  -  rataxes
> +  +  babar
> +   This is a noop statement so that
> +   this test is still more bytes than success.
> +   pad pad pad pad............................................................
> +
> +  ERROR: test-failure.t output changed
> +  !.s
> +  Skipped test-skip.t: missing feature: nail clipper
> +  Failed test-failure.t: output changed
> +  # Ran 2 tests, 1 skipped, 0 warned, 1 failed.
> +  python hash seed: 1138307315
> +  [1]


That one passed your vigilance, that can be fixed in-flight
(patch 5 also fixes it)

> +  $ f report.json
> +  report.json: file not found
> +  $ cat output/report.json
> +  testreport ={
> +      "test-failure.t": [\{] (re)
> +          "csys": "\s*[\d\.]{4,5}", ? (re)
> +          "cuser": "\s*[\d\.]{4,5}", ? (re)
> +          "diff": "---.+\+\+\+.+", ? (re)
> +          "end": "\s*[\d\.]{4,5}", ? (re)
> +          "result": "failure", ? (re)
> +          "start": "\s*[\d\.]{4,5}", ? (re)
> +          "time": "\s*[\d\.]{4,5}" (re)
> +      }, ? (re)
> +      "test-skip.t": {
> +          "csys": "\s*[\d\.]{4,5}", ? (re)
> +          "cuser": "\s*[\d\.]{4,5}", ? (re)
> +          "diff": "", ? (re)
> +          "end": "\s*[\d\.]{4,5}", ? (re)
> +          "result": "skip", ? (re)
> +          "start": "\s*[\d\.]{4,5}", ? (re)
> +          "time": "\s*[\d\.]{4,5}" (re)
> +      }, ? (re)
> +      "test-success.t": [\{] (re)
> +          "csys": "\s*[\d\.]{4,5}", ? (re)
> +          "cuser": "\s*[\d\.]{4,5}", ? (re)
> +          "diff": "", ? (re)
> +          "end": "\s*[\d\.]{4,5}", ? (re)
> +          "result": "success", ? (re)
> +          "start": "\s*[\d\.]{4,5}", ? (re)
> +          "time": "\s*[\d\.]{4,5}" (re)
> +      }
> +  } (no-eol)
> +  $ ls -a output
> +  .
> +  ..
> +  .testtimes
> +  report.json
> +  test-failure.t.err
>
>  Test that failed test accepted through interactive are properly reported:
>
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
>

-- 
Pierre-Yves David


More information about the Mercurial-devel mailing list