question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Unable to discern reason for junit provider test failure

See original GitHub issue

pact-jvm = 3.3.1 pact-spec-version = 3.0.0 initial SO post

unable to debug as failures only happen on jenkins

Test logs:

Error Message

0 - $.body.2 -> Expected name='FXUHHqWrZZcodhHBmeLf' but was missing
Stacktrace

java.lang.AssertionError: 
0 - $.body.2 -> Expected name='FXUHHqWrZZcodhHBmeLf' but was missing
	at au.com.dius.pact.provider.junit.target.HttpTarget.getAssertionError(HttpTarget.java:224)
	at au.com.dius.pact.provider.junit.target.HttpTarget.testInteraction(HttpTarget.java:132)
	at au.com.dius.pact.provider.junit.InteractionRunner$2.evaluate(InteractionRunner.java:180)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at au.com.dius.pact.provider.junit.InteractionRunner.run(InteractionRunner.java:140)
	at au.com.dius.pact.provider.junit.PactRunner.runChild(PactRunner.java:102)
	at au.com.dius.pact.provider.junit.PactRunner.runChild(PactRunner.java:52)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
Standard Output

Verifying a pact between idm-client and idm
  Given the 'zero' client exists
  a request to get all clients
Client Id:5139950a-ecc8-40e3-aa31-cf79fe1bb72a
Client Secret:secret
https-jsse-nio-8099-exec-4 18 Jan 2017 15:25:16  INFO c.c.m.c.s.l.MobiusRequestResponseLoggingFilter - POST request start:uri=/mobius/v1/sso/oauth/token
https-jsse-nio-8099-exec-4 18 Jan 2017 15:25:16  INFO c.c.m.c.s.l.MobiusRequestResponseLoggingFilter - Request body: grant_type=client_credentials
https-jsse-nio-8099-exec-4 18 Jan 2017 15:25:16  INFO c.c.m.c.s.l.MobiusRequestResponseLoggingFilter - POST request end:uri=/mobius/v1/sso/oauth/token (200)
https-jsse-nio-8099-exec-10 18 Jan 2017 15:25:16  INFO c.c.m.c.s.l.MobiusRequestResponseLoggingFilter - GET request start:uri=/mobius/v1/idm/client
https-jsse-nio-8099-exec-10 18 Jan 2017 15:25:16  INFO c.c.m.c.s.l.MobiusRequestResponseLoggingFilter - GET request end:uri=/mobius/v1/idm/client (200)
Metadata-reload 18 Jan 2017 15:25:17  INFO c.c.m.i.d.p.CassandraMetadataProvider - fetching metadata for entityId zero
Metadata-reload 18 Jan 2017 15:25:17  INFO o.o.s.m.p.AbstractReloadingMetadataProvider - New metadata succesfully loaded for 'zero'
Metadata-reload 18 Jan 2017 15:25:17  INFO o.o.s.m.p.AbstractReloadingMetadataProvider - Next refresh cycle for metadata provider 'zero' will occur on '2017-01-18T18:25:17.292Z' ('2017-01-18T18:25:17.292Z' local time)
Metadata-reload 18 Jan 2017 15:25:17  INFO c.c.m.i.d.p.CassandraMetadataProvider - fetching metadata for entityId SJRfGeRvgsSKAlC
Metadata-reload 18 Jan 2017 15:25:17  INFO o.o.s.m.p.AbstractReloadingMetadataProvider - New metadata succesfully loaded for 'SJRfGeRvgsSKAlC'
Metadata-reload 18 Jan 2017 15:25:17  INFO o.o.s.m.p.AbstractReloadingMetadataProvider - Next refresh cycle for metadata provider 'SJRfGeRvgsSKAlC' will occur on '2017-01-18T18:25:17.296Z' ('2017-01-18T18:25:17.296Z' local time)
    returns a response which
      has status code 200 (OK)
      includes headers
        "Content-Type" with value "application/json; charset=UTF-8" (OK)
      has a matching body (FAILED)

Failures:

0) a request to get all clients returns a response which has a matching body
      $.body.2 -> Expected name='FXUHHqWrZZcodhHBmeLf' but was missing

      Diff:

      @2
          {
      -        "accessTokenValiditySeconds": 42721462,
      +        "accessTokenValiditySeconds": 2047531805,
              "allowedScopes": [
      
      @4
              "allowedScopes": [
      -            "JnTfAlnHKVSDzoWnUqZv"
      +            "CbQKtUHZKpbXgYM",
      +            "HWQEabGJImGSEkp",
      +            "LaIhYNueeqcDQfm",
      +            "SCxIXIFATJEIvit",
      +            "SSqGVJiwXycnHZO",
      +            "iPpENLhFTbXGpTt",
      +            "qmKXLMsEdaXdyvn",
      +            "uJuBiZBGiToWRYK",
      +            "xEtffZzKEQdXNBv",
      +            "ySWoarvfBHBAOmA"
              ],
      
      @7
              "autoApprove": true,
      +        "clientSecret": "$2a$10$6W5venYTPJvN56SoCVISzOAS9NRgnvkQLWI6XKUTgpHD6Q75d9BRu",
      +        "contactEmail": "jsFDnxjMmKedPsM",
      +        "contactFirstName": "CnubJIiONQshfju",
      +        "contactLastName": "dSzktEWSSSCprRV",
      +        "description": "DDnerbtCJcXJdSJ",
              "grantTypes": [
      
      @8
              "grantTypes": [
      -            "VfWudsTQINERQCnVKvoK"
      +            "AZyZGSnloQEkXrZ",
      +            "BNgxGvVgawObCVA",
      +            "BjCRlTHkIrknhYY",
      +            "LHMMMDnYcvuLBBr",
      +            "OIrutyPdvoSFBEK",
      +            "QvCZUUeKLSXfSwP",
      +            "WtQmSJdnWutzEFu",
      +            "tzKRkWouoUtnZYH",
      +            "vYhaZOcFlrIscRU",
      +            "wktIDvVUQJUehFR"
              ],
      
      @10
              ],
      -        "id": "c53927c3-0d1c-48a8-8f0a-7560be89daa5",
      -        "name": "FXUHHqWrZZcodhHBmeLf",
      +        "id": "9daaad0a-8a2d-4e73-a963-fa1625cec110",
      +        "name": "name",
      +        "privileges": [
      +            "CHECK_TOKEN",
      +            "MANAGE_CLIENT",
      +            "MANAGE_IDP",
      +            "MANAGE_USER"
      +        ],
              "redirectUris": [
      
      @13
              "redirectUris": [
      -            "vWxSTjgJQvwUtwphDGcn"
      +            "JSdQvUdokPTlodl",
      +            "JpEMvpcIWescPZR",
      +            "VeqlKVXnbCPyjZK",
      +            "ZgVqKaCOgYZtlZj",
      +            "hMFJKfVwkgapsNe",
      +            "hQxZXAecosoXsif",
      +            "kFGJHlrcwnWORzL",
      +            "nQdyNhxIKLmpZHk",
      +            "oHUgeTNOYNQdkGo",
      +            "wnrIZYwfVHPoLcU"
              ],
      
      @15
              ],
      -        "refreshTokenValiditySeconds": 12393550,
      +        "refreshTokenValiditySeconds": 165274901,
              "secretRequired": true
      
      @17
              "secretRequired": true
      +    },
      +    {
      +        "accessTokenValiditySeconds": 1725247274,
      +        "allowedScopes": [
      +            "DniUNWUNDSoDBmh",
      +            "PCKoRyrTHZkdjjQ",
      +            "TDGLJwfbUeziRgS",
      +            "WLaCWUpQQjadDze",
      +            "bIKJzzITpzkTKKe",
      +            "kBnuzmYirIFSDHb",
      +            "kllRvIwJInmGGDo",
      +            "sAGFquVxtUfsHkv",
      +            "vwHipQUTSpvwihE",
      +            "wtOOOSLDvdPUbpe"
      +        ],
      +        "autoApprove": false,
      +        "clientSecret": "$2a$10$JwbbZXMdlUcA1MLFuuVhIuGoNuWonOmBsS/rwU5MsehYhuYNATYlK",
      +        "contactEmail": "LwjNwwogIBxMbSj",
      +        "contactFirstName": "oZxnuPyIDpWMlif",
      +        "contactLastName": "SeJEOGhoEjVaEuk",
      +        "description": "neeqtcvQabZRfXP",
      +        "grantTypes": [
      +            "GcpIbfNNisoSNOz",
      +            "JjPlzVVjfDyupEg",
      +            "KWRiUwKAMugbfPu",
      +            "KgcbziOdPPRStin",
      +            "MgDYVCVVAVZjVCv",
      +            "RgVWYlRkucVyeYj",
      +            "WlPOmAIlNKbiLLh",
      +            "ngKPorkQQeZCDCh",
      +            "pXpajHeVaiBgnRy",
      +            "vzEJhYIqrlaVCSQ"
      +        ],
      +        "id": "ec9aa5b3-ac7c-45b1-b953-cedb81e5edc1",
      +        "name": "kttnlBIPLEnuBiZ",
      +        "privileges": [
      +            "CHECK_TOKEN",
      +            "MANAGE_CLIENT",
      +            "MANAGE_IDP",
      +            "MANAGE_USER"
      +        ],
      +        "redirectUris": [
      +            "BaRiVtqyuNMZHPN",
      +            "FwewjwPbonGsHGT",
      +            "NuJLdsXCsPHpohJ",
      +            "aNgUAnBjTypdOSR",
      +            "eBbFcnqrkiOrmFS",
      +            "eDuAcRFfkLHWLDQ",
      +            "gCsvfvXcBMxmweb",
      +            "iWNmdhYHPugfbuK",
      +            "wNIkiYFWKrEAkWx",
      +            "zzSSwkPFznXoTyS"
      +        ],
      +        "refreshTokenValiditySeconds": 1933494902,
      +        "secretRequired": true
      +    },
      +    {
      +        "accessTokenValiditySeconds": 0,
      +        "allowedScopes": [
      +            
      +        ],
      +        "autoApprove": false,
      +        "clientSecret": null,
      +        "grantTypes": [
      +            
      +        ],
      +        "id": "29b16b57-8212-4aeb-a180-b021399c0012",
      +        "privileges": [
      +            
      +        ],
      +        "redirectUris": [
      +            
      +        ],
      +        "refreshTokenValiditySeconds": 0,
      +        "secretRequired": false
      +    },
      +    {
      +        "accessTokenValiditySeconds": 600000,
      +        "allowedScopes": [
      +            "Authentication"
      +        ],
      +        "autoApprove": false,
      +        "clientSecret": "$2a$10$tMneESmkGPUwIQlzN3C4J.wcKrSmIq2uzsy96iKrUSOt42zNUZmNi",
      +        "grantTypes": [
      +            "client_credentials",
      +            "password"
      +        ],
      +        "id": "5139950a-ecc8-40e3-aa31-cf79fe1bb72a",
      +        "name": "Bootstrapped IDM Super Admin Client",
      +        "privileges": [
      +            "CHECK_TOKEN",
      +            "MANAGE_CLIENT",
      +            "MANAGE_IDP",
      +            "MANAGE_USER"
      +        ],
      +        "redirectUris": [
      +            
      +        ],
      +        "refreshTokenValiditySeconds": 0,
      +        "secretRequired": false
      +    },
      +    {
      +        "accessTokenValiditySeconds": 1809947019,
      +        "allowedScopes": [
      +            "HTjyKASlWYCBEUL",
      +            "LuRbWINFCYYfqmn",
      +            "NISLZYXBQfuvomi",
      +            "aYHzRfYrLXanoHS",
      +            "evdIxHlemfODOKz",
      +            "iyDRsGFHXDfFBAV",
      +            "jFEaMGEnlgFXsoa",
      +            "mRAAkSlNbWWTqsG",
      +            "pDaAdfKPCVfbyaw",
      +            "vrdvokfjVROZPan"
      +        ],
      +        "autoApprove": false,
      +        "clientSecret": "$2a$10$b7MNfMwh0BGVubuKYlDbV.5oCqJoeQYG2hSo9C4DihXOeb4CXqrsG",
      +        "contactEmail": "VaMZTtqRqBvOvBl",
      +        "contactFirstName": "ffHtrxjHpzIAihS",
      +        "contactLastName": "VcaCBwtCeZCfsxb",
      +        "description": "KQlCEHKgKGObNhi",
      +        "grantTypes": [
      +            "GKZMjJbGxVvKdTf",
      +            "HTBnDSaTnuDootw",
      +            "IOgFyTrlNyQcYUa",
      +            "SNqWULQeMVLrPjN",
      +            "ZvEUOgyqMOeoSjW",
      +            "bBzeQzHXRvcUBPu",
      +            "bkCouMGlhCaDhgb",
      +            "iwUvuqgFKLfcDVh",
      +            "juyotxqlMIGwiys",
      +            "sgyYQrnkPRVclVJ"
      +        ],
      +        "id": "abe5645a-b303-4dd7-bc4c-5a3599e4ce72",
      +        "name": "uHZUxyJqDAyNptF",
      +        "privileges": [
      +            "CHECK_TOKEN",
      +            "MANAGE_CLIENT",
      +            "MANAGE_IDP",
      +            "MANAGE_USER"
      +        ],
      +        "redirectUris": [
      +            "GoAuyKzABYDTUqg",
      +            "HTwMUvPcQOYPkUT",
      +            "MJHipgdmPTxfUuj",
      +            "NLulSzXmjnCjifO",
      +            "VSlGAUERZQztLyT",
      +            "VwnhszQuaLEkQon",
      +            "bQJsqttVsvaHrtX",
      +            "cjMrHahYtcbTjkG",
      +            "oTZYTlcMuFlAnjY",
      +            "vnlzNRecpUiGAxX"
      +        ],
      +        "refreshTokenValiditySeconds": 1013769012,
      +        "secretRequired": false
      +    },
      +    {
      +        "accessTokenValiditySeconds": 2124378825,
      +        "allowedScopes": [
      +            "IYULWZOlSmyOuQO",
      +            "JmpNgONMIZWZQLp",
      +            "RmIgJyXmUUzIspF",
      +            "bogyoaCJjLeRUtC",
      +            "iPZCIbXkTgsRtes",
      +            "kihJzBSfXirxlxq",
      +            "pZuBJSjRtJYbVPX",
      +            "qNFJwRqvzogwQjb",
      +            "rXSYjJOocszzdTJ",
      +            "sUGVsVEAJADDenq"
      +        ],
      +        "autoApprove": false,
      +        "clientSecret": "$2a$10$b7UeYkUlzJtMQolYT0EfUuFvc0oxkWDIZK47WgIZl5WIs0fHe06jW",
      +        "contactEmail": "zfKuMYNkolWqAPK",
      +        "contactFirstName": "lgNQHrcREakjEDA",
      +        "contactLastName": "DILHlcDnOYXAxVh",
      +        "description": "fXFARwCruCXTNuE",
      +        "grantTypes": [
      +            "IUnJVmlnTYKcaJS",
      +            "SvKDbcqJkhyIhVX",
      +            "WDmeMkrVLQVxoUU",
      +            "apelxyjDDWXuCag",
      +            "dXivSOKqrFpaNAT",
      +            "mSJhWHXtVTkgqZS",
      +            "oQGyIGTwqCuirCf",
      +            "uTFTiJoIkarfpSA",
      +            "wQLNARxYjZmKDvE",
      +            "wuVbAPumkrvOlRv"
      +        ],
      +        "id": "00000000-0000-0000-0000-000000000000",
      +        "name": "EAtjINlTAReePqR",
      +        "privileges": [
      +            "CHECK_TOKEN",
      +            "MANAGE_CLIENT",
      +            "MANAGE_IDP",
      +            "MANAGE_USER"
      +        ],
      +        "redirectUris": [
      +            "BNsvZRCMNyrtJaD",
      +            "FQXBHSNdEUimaNJ",
      +            "GWsniUCqOoNSPhn",
      +            "IbBIvORNmaAFOFT",
      +            "VPLtuVKbdigjZfq",
      +            "VUDiKjFEYBHhiqC",
      +            "aCbOaeXgMEapzyi",
      +            "cOAMxaavBWeBbvd",
      +            "rCRustlayuLmXnf",
      +            "zPtYmXtjrNdJoRw"
      +        ],
      +        "refreshTokenValiditySeconds": 419507870,
      +        "secretRequired": true
      +    },
      +    {
      +        "accessTokenValiditySeconds": 754238008,
      +        "allowedScopes": [
      +            "AGxOUOfBzAibEnX",
      +            "DnXPgPkHcXDJSNx",
      +            "GDebGtpNFedFMPm",
      +            "KjpNccNvtfIRMqx",
      +            "OrnXWhKCFwFDVCf",
      +            "OtVrUtgbUMhnHQd",
      +            "aErDlnPkIolnFvG",
      +            "bwWHWGNsHlSZDrG",
      +            "obStsABdnutCNuT",
      +            "rVZzTsgYuSqsEym"
      +        ],
      +        "autoApprove": true,
      +        "clientSecret": "$2a$10$m7Wy0xvy7Cw2uF28XcWUmOpFMp4iYFZTYQexd5r3FKTX2Vx8RaeGu",
      +        "contactEmail": "WcYFsLhijGBPjQY",
      +        "contactFirstName": "MCeAUJhvcnmEXko",
      +        "contactLastName": "jALQvTAoYrFAvCI",
      +        "description": "JSxfCILtMXellpE",
      +        "grantTypes": [
      +            "AUPLnUKJczywqLT",
      +            "MvgXIcoULCbArnF",
      +            "SUTZcNpCNUryhPk",
      +            "SZzixGZwOOwsdEm",
      +            "TUwlKSJzOQJjFtE",
      +            "UBYbkDYVWUqXtgV",
      +            "UMvtOwECDAtRaKe",
      +            "bvVjUGMHZuOjFvH",
      +            "lRpGIaMPiVPcQaX",
      +            "skvQACLVEhUWetK"
      +        ],
      +        "id": "25eeb46b-0332-4954-923c-6cacfab61e5e",
      +        "name": "cztobBVnSsdhUos",
      +        "privileges": [
      +            "CHECK_TOKEN",
      +            "MANAGE_CLIENT",
      +            "MANAGE_IDP",
      +            "MANAGE_USER"
      +        ],
      +        "redirectUris": [
      +            "CoXWoFdJnvHsgEs",
      +            "LMyTEdLbEJGQjtO",
      +            "WRLrPPjoXxQhrnM",
      +            "fITktVzrQkgdBPx",
      +            "hgoSWAfeVATseYr",
      +            "pOEcevjMzzmFmaD",
      +            "qsCHHuCOZdZhkMh",
      +            "uKlmmfIzLBTmbLl",
      +            "wshXTzgJHAakLno",
      +            "ztSBSqnMvszorzj"
      +        ],
      +        "refreshTokenValiditySeconds": 2122765226,
      +        "secretRequired": false
      +    },
      +    {
      +        "accessTokenValiditySeconds": 112231087,
      +        "allowedScopes": [
      +            "JGMMpPRhdYuWXWM",
      +            "SqgATtdjuWzdIVM",
      +            "WdmJIkwNtFkpvxv",
      +            "cMKgMHLGHuqqebY",
      +            "iivGvqdAzwWBFgG",
      +            "lSYnBbQLOzEWUpj",
      +            "pPYAdhBUCTjGQMH",
      +            "psAmNOXdhwZxnJk",
      +            "sfinhnHbsSGRFOZ",
      +            "uHqjAJxKEWirNKZ"
      +        ],
      +        "autoApprove": false,
      +        "clientSecret": "$2a$10$bVZCH/ltnO2yuJLOIJnxoOJtDIKg/mDPT1ntIfUiD.mD3tS8GD/9.",
      +        "contactEmail": "BTzlOzxviOBjCVj",
      +        "contactFirstName": "weBRrYFUYrqXvEv",
      +        "contactLastName": "BEMvDYebZtccAUc",
      +        "description": "zVRyZGuFIxnBgJx",
      +        "grantTypes": [
      +            "FKkchfLYgGfpchA",
      +            "KAPCTXcUxFXwQOG",
      +            "KecdGwJMtQHpKAo",
      +            "PkyfhJsWTIThsiZ",
      +            "ScNivDlmQzDFXvx",
      +            "SckEYPiRzhuHeUo",
      +            "WCpeXjwnikZYRow",
      +            "ZzFcvrbMYryaIFn",
      +            "tKIHJZtIJYZhgCt",
      +            "thNSNRBUpckNMmn"
      +        ],
      +        "id": "4978ec48-abfb-47aa-854f-0e6410230c82",
      +        "name": "VJUpcLuNAFKgchn",
      +        "privileges": [
      +            "CHECK_TOKEN",
      +            "MANAGE_CLIENT",
      +            "MANAGE_IDP",
      +            "MANAGE_USER"
      +        ],
      +        "redirectUris": [
      +            "DIpcrCYZDvdYePH",
      +            "HkudJidqIdMkftV",
      +            "ZlkEKMJRhgwvYdJ",
      +            "acSmGqIydkSwxsO",
      +            "gPZTJxjtKZsbqjR",
      +            "geUrWuiXpMfamxo",
      +            "rxrFHgktNHVaRsx",
      +            "sKhhRKcdTqhOmiz",
      +            "vVjkirLiAjfqAXj",
      +            "wPvvwMlZjkExsZG"
      +        ],
      +        "refreshTokenValiditySeconds": 52955175,
      +        "secretRequired": true
          }

relevant interaction:

{
        "description": "a request to get all clients",
        "request": {
            "method": "GET",
            "path": "/some/url/client"
        },
        "response": {
            "status": 200,
            "headers": {
                "Content-Type": "application/json; charset=UTF-8"
            },
            "body": [
                {
                    "accessTokenValiditySeconds": 42721462,
                    "allowedScopes": [
                        "JnTfAlnHKVSDzoWnUqZv"
                    ],
                    "autoApprove": true,
                    "grantTypes": [
                        "VfWudsTQINERQCnVKvoK"
                    ],
                    "id": "c53927c3-0d1c-48a8-8f0a-7560be89daa5",
                    "name": "FXUHHqWrZZcodhHBmeLf",
                    "redirectUris": [
                        "vWxSTjgJQvwUtwphDGcn"
                    ],
                    "refreshTokenValiditySeconds": 12393550,
                    "secretRequired": true
                }
            ],
            "matchingRules": {
                "$.body[*].allowedScopes[*]": {
                    "match": "type"
                },
                "$.body[*].redirectUris[*]": {
                    "match": "type"
                },
                "$.body[*].grantTypes[*]": {
                    "match": "type"
                },
                "$.body[*].redirectUris": {
                    "min": 0,
                    "match": "type"
                },
                "$.body[*].autoApprove": {
                    "match": "type"
                },
                "$.body": {
                    "min": 1,
                    "match": "type"
                },
                "$.body[*].id": {
                    "regex": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"
                },
                "$.body[*].accessTokenValiditySeconds": {
                    "match": "integer"
                },
                "$.body[*].secretRequired": {
                    "match": "type"
                },
                "$.body[*].refreshTokenValiditySeconds": {
                    "match": "integer"
                },
                "$.body[*].name": {
                    "match": "type"
                },
                "$.body[*].allowedScopes": {
                    "min": 0,
                    "match": "type"
                },
                "$.body[*].grantTypes": {
                    "min": 0,
                    "match": "type"
                }
            }
        },
        "providerState": "the 'zero' client exists"
    },

generating fragment:

           builder
            .given("the 'zero' client exists")
            .uponReceiving("a request to get all clients")
            .path("/some/url/client")
            .method("GET")
            .willRespondWith()
            .status(200)
            .body(PactDslJsonArray
                    .arrayMinLike(1)
                    .uuid("id")
                    .booleanType("secretRequired")
                    .eachLike("allowedScopes", stringType())
                    .eachLike("grantTypes", stringType())
                    .eachLike("redirectUris", stringType())
                    .integerType("accessTokenValiditySeconds")
                    .integerType("refreshTokenValiditySeconds")
                    .booleanType("autoApprove")
                    .stringType("name")
                    .closeObject())
            .toFragment();

Issue Analytics

  • State:closed
  • Created 7 years ago
  • Comments:5 (5 by maintainers)

github_iconTop GitHub Comments

1reaction
uglyogcommented, Jan 26, 2017

Improved it a bit by showing more localised diffs for missing elements:

  $.body.2 -> Expected name='FXUHHqWrZZcodhHBmeLf' but was missing

    Diff:

        "redirectUris": [
    -        "vWxSTjgJQvwUtwphDGcn"
    +        
        ],
    -    "secretRequired": true,
    -    "name": "FXUHHqWrZZcodhHBmeLf",
    -    "accessTokenValiditySeconds": 42721462,
    -    "id": "c53927c3-0d1c-48a8-8f0a-7560be89daa5",
    +    "secretRequired": false,
    +    "accessTokenValiditySeconds": 0,
    +    "privileges": [
    +        
    +    ],
    +    "id": "29b16b57-8212-4aeb-a180-b021399c0012",
    +    "clientSecret": null,
        "allowedScopes": [
    -        "JnTfAlnHKVSDzoWnUqZv"
    +        
        ],
    -    "autoApprove": true,
    -    "refreshTokenValiditySeconds": 12393550,
    +    "autoApprove": false,
    +    "refreshTokenValiditySeconds": 0,
        "grantTypes": [
    -        "VfWudsTQINERQCnVKvoK"
    +        
        ]
1reaction
uglyogcommented, Jan 26, 2017

Yes, I think the output is really hard to see what was wrong and needs to be improved.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Surefire is not picking up Junit 5 tests - Stack Overflow
This config will fail with Surefire 2.22.0 or higher. You need to exclude the Junit deps from the Surefire config. I wrote a...
Read more >
"Test suite failed to run" does not report as a test failure in the ...
Jest tests don't stop due to a suite failure unless running with the bail option. Console. PS C:\Users\Paul\Documents\GitHub\jest-junit-testcase> npm run test ...
Read more >
Why Your JUnit 5 Tests Are Not Running Under Maven
There is a very common issue preventing your JUnit 5 tests from running under Maven. In this post, I explain why and provide...
Read more >
Fix No Qualifying Spring Bean Error For Spring Boot Tests
With this article, I'm covering a set of common pitfalls of why Spring is unable to resolve a bean when writing tests for...
Read more >
How to fail job and pipeline if there are failed tests in JUnit ...
If the build job was passing but tests failing I would likely setup another step to parse the resulting test results and if...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found