Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ApiDefinitionParser identifierar felaktigt kompakt json-data som YAML RAML #23

Open
jonasseglare opened this issue May 12, 2023 · 0 comments · May be fixed by #25
Open

ApiDefinitionParser identifierar felaktigt kompakt json-data som YAML RAML #23

jonasseglare opened this issue May 12, 2023 · 0 comments · May be fixed by #25
Labels
bug Something isn't working

Comments

@jonasseglare
Copy link

Contact Details

jonas.ostlund@arbetsformedlingen.se

What happened?

Betrakta följande stycke kod från filen ApiDefinitionParser.java:

        if (apiLine1.contains("openapi")) {
            apiJsonString = getFileApiYamlRaml(fileString, outJsonFile);
        } else if (apiLine1.contains("RAML")) {
            apiJsonString = getFileApiYamlRaml(fileString, outJsonFile);
        } else if (apiLine1.contains("{")){
            apiJsonString = fileString;
        }

Ovanstående kod försöker identifiera syntaxen för api-definitionen genom några strängtester. Det första av dessa tester, apiLine1.contains("openapi"), kommer att evaluera till sant för kompakt json-data där alla data är på samma rad, eftersom denna data kan innehåller delsträngen openapi som vi letar efter, t.ex. som "openapi":"3.0.3".

Ändra filändelsen till .json för nedanstående fil och provkör.

occupations.txt

Steps To Reproduce

Anropa metoden ApiDefinitionParser.getApiJsonString på innehållet från följande fil:

occupations.txt

Detta kommer att resultera i att filen output.json produceras i aktuell katalog, eftersom metoden felaktigt klassificerar innehållet i filen som YAML RAML och inte Json som den borde. I övrigt har jag inte studerat returvärdet från ovanstående metod när man gör anropet.

What did you expect?

Att filen output.json inte produceras av metoden ApiDefinitionParser.getApiJsonString.

Version

Den här commiten: 76c0cdd

Optional Screenshots

No response

Relevant log output

No response

@jonasseglare jonasseglare added the bug Something isn't working label May 12, 2023
jonasseglare pushed a commit to jonasseglare/DCAT-AP-SE-Processor that referenced this issue May 16, 2023
@jonasseglare jonasseglare linked a pull request May 16, 2023 that will close this issue
8 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant