-
Notifications
You must be signed in to change notification settings - Fork 54
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
Struggling with importing report from automated tools #114
Comments
I am not sure, but I think the id like Matching against (json-ld) id's seemed like a good idea at the time (and adding complexity to retrieve URLS from either key to be set as id). But to identify the subjects by what is required by the tool might be better. Thus matching against title + description, which may be an URl or not. Treating each key as plain (trimmed?) string. This is what the user fills in step 3. And probably is filled by users in other tools as well. Feels like this requires some more thoughts. |
No, it doesn't. The |
I've finally managed to built a working EARL file 🎉, updated the example in my first message. The file is still somewhat different from what I'm producing automatically, I need to see how important these differences are… Ultimately the only change I needed to do was on the URL matching: diff --git a/src/stores/earl/assertionStore/index.js b/src/stores/earl/assertionStore/index.js
index 2a95f48b..a84b7e13 100644
--- a/src/stores/earl/assertionStore/index.js
+++ b/src/stores/earl/assertionStore/index.js
@@ -100,7 +100,7 @@ export async function importAssertions(json) {
subject.id = subjectID;
return $subjects.find(($subject) => {
- return $subject.id === subject.id;
+ return $subject.description === subject.id;
});
} Some others points I noticed on the way:
Don't get me wrong, I'm happy to help improve things (within the limited time I have…) Getting automated tools results directly in the report would be awesome… |
One more (recording all findings in this issue…) |
All imported // opened json data is expected to be json-ld. As such it is treated with the json-ld api first, given the context of this app. So essentially all following json data is treated knowing it is formated in a way that certain keys and value formats are expected before working with it. (Typing this in github ios app, will point to some essential files later) |
When matching criterion, the test is expected to be part of at most one WCAG SC (getting This effectively causes the import tool to completely drop the full result (for all corresponding SC) since it cannot find |
This is a good point. Simply basing on json-ld, array values should also be accepted. This means however, that these kind of test results are inserted at multiple wcag criteria results. matching on result.pointer (or something similar) should be added. |
Yes. I've (locally) patched that by having |
So, as a tool vendor, I want to produce reports that can be imported in the WCAG-EM report tool.
I'm still struggling to produce a minimal EARL file that gets accepted 😞
The M(N)WE report I'm using:
So, it seems that in
$subjects
the URL is stored in thedescription
field, and theid
field is just a random ID. But in the assertion, the URL is stored in theid
field. Given that this bit of code happens just within this guard:isURL(subjectID)
, I'm fairly confident that it is expected forsubject.id
to be indeed an URL 🤔So, I feel like I'm missing something. Either how to select page and have their URL in the
id
rather thandescription
, or the other way around how to change my EARL to have the correctid
.Changing the comparison in the
find
from$subject.id === subject.id
to$subject.description === subject.id
does get me to load the assertions. (and get an import error, but that's another problem…)[edit: replaced the example EARL file with a working one]
The text was updated successfully, but these errors were encountered: