VNG-Realisatie/Haal-Centraal-WOZ-bevragen

foutmeldingen nog niet volgens fout-meldingen.feature

Closed this issue · 5 comments

de foutmeldingen teksten in title, detail en nvalidParams.reason zijn nog niet aangepast naar wat is beschreven in https://github.com/VNG-Realisatie/Haal-Centraal-WOZ-bevragen/blob/master/features/fout-meldingen.feature

Bijvoorbeeld GET https://api.acceptatie.kadaster.nl/lvwoz/api/v1/wozobjecten geeft:

{
    "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
    "title": "De combinatie van opgegeven parameters is niet toegestaan.",
    "detail": "De combinatie '' is niet toegestaan bij zoeken.",
    "instance": "http://api.acceptatie.kadaster.nl/haalcentraal-api/wozobjecten",
    "status": 400,
    "code": "unsupportedCombi"
}

de feature beschrijft hier:

        | naam   | waarde                                                                                                                                                                          |
        | title  | Tenminste één parameter moet worden opgegeven.                                                                                                                                  |
        | status | 400                                                                                                                                                                             |
        | detail | Er moet minimaal één van de parameters 'rsin', 'kvkNummer', 'adresseerbaarObjectIdentificatie', 'nummeraanduidingIdentificatie' of 'postcode' met 'huisnummer' worden opgegeven |

GET https://api.acceptatie.kadaster.nl/lvwoz/api/v1/wozobjecten?rsin=12345678A geeft:

{
    "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
    "title": "Een of meerdere parameters zijn niet correct.",
    "instance": "http://api.acceptatie.kadaster.nl/haalcentraal-api/wozobjecten?rsin=12345678A",
    "status": 400,
    "invalidParams": [
        {
            "code": "pattern",
            "reason": "Waarde voldoet niet aan het patroon ^[0-9]{9}$",
            "name": "rsin"
        }
    ],
    "code": "paramsValidation"
}

De feature beschrijft hier:

        | name   | reason                                    |
        | rsin   | waarde 'A' is geen 9 cijferig getal       |

1). Ga ik even induiken
2). We hebben hier eerder besproken dat het patroon ^[0-9]{9}$ alle gevallen van groter/kleiner/niet-numeriek etc. dekt, en dat we dit daarom kunnen gebruiken voor de foutmelding. Deze conversatie staat ergens onder een ticket, ik zal deze even opzoeken

Excuses, ik zie nu mijn verwarring. In #95 hebben we geconcludeerd dat de pattern check voldoende is, maar ik zie nu dat dit in https://github.com/VNG-Realisatie/Haal-Centraal-WOZ-bevragen/pull/49/files wel vertaald is naar een 'begrijpbaar nederlandse' foutmelding (is geen x cijferig getal). Ik ga hier naar kijken.

Voor de volledigheid, ik neem aan dat je bij de tweede verwachtte foutmelding bedoelt

| name   | reason                                            |
| rsin   | waarde '12345678A' is geen 9 cijferig getal       |

Alle scenario's lijken nu de gewenste waarden voor de opgegeven properties te geven op het abstract scenario 'Er zijn meerdere identificatie parameters opgegeven' na.

GET https://api.acceptatie.kadaster.nl/lvwoz/api/v1/wozobjecten?rsin=000000061&kvkNummer=00409420 leidt tot:

    {
        "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
        "title": "De combinatie van opgegeven parameters is niet toegestaan.",
        "detail": "Er zijn meerdere zoekingangen opgegeven. Graag 1 zoekingang gebruiken.",
        "instance": "https://api.acceptatie.kadaster.nl/lvwoz/api/v1/wozobjecten?rsin=000000061&kvkNummer=00409420",
        "status": 400,
        "code": "unsupportedCombi"
    }

terwijl ik daarbinnen nog een 'invalidParams' met de volgende inhoud zou verwachten:

    "invalidParams": [
        {
            "code": "...",
            "reason": "parameter 'kvkNummer' kan niet worden opgegeven in combinatie met 'rsin",
            "name": "kvkNummer"
        } , 
       {
            "code": "...",
            "reason": "parameter 'rsin' kan niet worden opgegeven in combinatie met 'kvkNummer",
            "name": "rsin"
        }  
     ]

Vraag is nog wat je bij GET https://api.acceptatie.kadaster.nl/lvwoz/api/v1/wozobjecten?rsin=000000061&kvkNummer=00409420&fields=waarden,type zou moeten verwachten.

Nu krijg je daar:

    {
        "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
        "title": "Een of meerdere parameters zijn niet correct.",
        "instance": "https://api.acceptatie.kadaster.nl/lvwoz/api/v1/wozobjecten?rsin=000000061&kvkNummer=00409420&fields=waarden,type",
        "status": 400,
        "code": "invalidParams",
         "invalidParams": [
            {
                "code": "fields",
                "reason": "ongeldige waarden: 'waarden', 'type' opgegeven",
                "name": "fields"
            }
        ]
    }

maar ik zou daar binnen 'invaliParams' ook nog:

    {
        "code": "...",
        "reason": "parameter 'kvkNummer' kan niet worden opgegeven in combinatie met 'rsin",
        "name": "kvkNummer"
    } , 
   {
        "code": "...",
        "reason": "parameter 'rsin' kan niet worden opgegeven in combinatie met 'kvkNummer",
        "name": "rsin"
    }  

verwachten.
Aangezien het hier niet alleen gaat om een 'unsupportedCombi' lijkt me dan de waarde 'invalidParams' voor 'code' correct.

Weg gelaten obv PR 120

Werking is inderdaad zoals beschreven in PR 120.