Closed craig-willis closed 3 years ago
Issues:
docs_href
and set DataONE auth type to apikey
. Make sure docs_url is portal/oauth.~ https://github.com/whole-tale/terraform_deployment/pull/50main.c7f0d694c1c23437436d.js:1 ERROR Error: Uncaught (in promise): e: {"headers":{"normalizedNames":{},"lazyUpdate":null},"status":403,"statusText":"OK","url":"https://girder.stage.wholetale.org/api/v1/tale/60a866713a4e9f14ff07dcba/access","ok":false,"name":"HttpErrorResponse","message":"Http failure response for https://girder.stage.wholetale.org/api/v1/tale/60a866713a4e9f14ff07dcba/access: 403 OK","error":{"message":"Write access denied for tale 60a866713a4e9f14ff07dcba (user 59fb6165f7e8790001da4e8b).","type":"access"}}
at j (polyfills.de7207a8b54ff5ae9a3b.js:1)
at j (polyfills.de7207a8b54ff5ae9a3b.js:1)
at polyfills.de7207a8b54ff5ae9a3b.js:1
at e.invokeTask (polyfills.de7207a8b54ff5ae9a3b.js:1)
at Object.onInvokeTask (main.c7f0d694c1c23437436d.js:1)
at e.invokeTask (polyfills.de7207a8b54ff5ae9a3b.js:1)
at t.runTask (polyfills.de7207a8b54ff5ae9a3b.js:1)
at y (polyfills.de7207a8b54ff5ae9a3b.js:1)
at t.invokeTask [as invoke] (polyfills.de7207a8b54ff5ae9a3b.js:1)
at _ (polyfills.de7207a8b54ff5ae9a3b.js:1)
Notes/thoughts:
Test Plan
https://github.com/whole-tale/wt-design-docs/issues/new?template=TEST_PLAN.md
Note: For all tests, repeat for supported browser/OS combinations.
Preconditions:
Splash page
Authentication
[x] Basic login flow
[x] Basic logout flow
[x] Return-route for non-logged in users
Navigation
Tale Dashboard
Preconditions:
Assumes production Tales present (e.g., LIGO, materials, etc).
No running instances
[x] General
[x] Search
[x] View tale
[x] Launch instance
Managing Data
Preconditions
Empty home directory
No registered data
[x] Register General
[x] Register DataONE data
10.5065/D6862DM8
[x] Dataverse
[x] Globus/MDF
Run Tale
Preconditions:
No running Tale instances
[x] General
[x] Interact tab
[x] Files tab
[x] Metadata tab - Owned Tale
Published Location
readsThis Tale has not been published
Environment
dropdown menuLicense
dropdown (CC4 and CC0)[x] Metadata tab - Non-Owned Tale (e.g., Public LIGO Tale)
[x] Home
[x] External data
doi:10.18739/A29G5GD0V
)[x] Tale Workspace
[x] Files - Non-Owned Tale
[ ] Export Tale
pip install bdbag
andbdbag --validate full .
FAIL: fetch.txt has incorrect path
Settings
[x] Default State
[x] Connect to Zenodo
[x] Connect to Dataverse
[x] Connect to DataONE
[x] Confirm tokens retained across logins #370
/user/me
endpoint to confirm tokens are still presentTale Creation
[x] Create JupyterLab Tale
[x] Create RStudio Tale
[x] Compose Jupyter Notebook Tale
[x] Compose JupyterLab Tale
[x] Compose JupyterLab with Spark
[x] Compose MATLAB Desktop Tale
multiplicative_arima_example_script.m
, confirm outputsmultiplicative_arima_example_livescript.m
, confirm outputs[x] Compose MATLAB Jupyter Kernel Tale
multiplicative_arima_example.ipynb
, confirm outputs matchmultiplicative_arima_example.html
[ ] Compose MATLAB Linux Desktop Tale
multiplicative_arima_example_script.m
, confirm outputs[x] Compose STATA Desktop Tale
example.do
, confirm outputs[x] Compose STATA Jupyter Kernel Tale
example.ipynb
, confirm outputs matchexample.html
[x] Compose OpenRefine Tale
[x] Too many instances
Analyze in Whole Tale
Task 1: Importing a Dataset from Dataverse
These test cases cover potential situations that can occur when importing datasets from Dataverse.
Testing Steps:
Replication Data for: "Agricultural Fires and Health at Birth"
Input data
section matches the uri withData Source
appendedCreate New Tale
button is disabledCreate New Tale
science
Task 2: Importing a Dataset from DataONE
These test cases cover different scenarios that may happen when importing datasets from DataONE.
This test covers the ideal case where dataset importing has all of the needed information to properly run. This includes the dataset location, title, and selected environment.
Testing Steps:
Fire influences on forest recovery and associated climate feedbacks in Siberian Larch Forests, Russia
Selected data
section matches the uri withData Source
appendedRstudio
is selected in the Environments widgetCreate New Tale
button is enabledCreate New Tale
science
Analyze in Whole Tale
feature is deployed across a few DataONE test sites. This test ensures Whole Tale has the ability to import data from each of them.Links:
Testing Steps:
Create New Tale
FAIL: proveit import fails; Alpha Helix 2001 does not get correct title. DataONE config problem? Or due to CN change?
Task 3: Shared Behavior
These cases show errors that are common between Dataverse and DataONE. Although they are tested using DataONE URIs, the errors should be the same when replacing it with a Dataverse URI.
This test covers the case where the name query parameter is missing. The expected behavior is that the uri query parameter is used instead.
Testing Steps:
https://dataverse.harvard.edu/api/access/datafile/3323458
Selected data
section matches the uri withData Source
appendedCreate New Tale
button is disabledCreate New Tale
FAIL: Title does not match URI. Does this really matter?
This test covers the case where a user imports data from an external source and selects READ/WRITE in the Create Tale Modal.
Testing Steps (Variant 1):
Selected data
section matches the uri withData Source
appendedCreate New Tale
button is disabledREAD/WRITE
Create New Tale
Testing Steps (Variant 2):
Selected data
section matches the uri withData Source
appendedCreate New Tale
button is disabledREAD/WRITE
Create New Tale
Tale metadata tests
The purpose of these tests are to confirm that the metadata files (manifest.json, environment.json, LICENSE) we generate are correct.
manifest.json
file undermetadata/
wt
context present@id
references the correct Tale IDschema:author
createdBy
aggregates
aggregates
wt:usesDataset
dct:hasVersion
is present and matches your created versionrdflib
can parse:import urllib.parse urllib.parse.uses_relative.append('arcp') urllib.parse.uses_netloc.append('arcp')
g = Graph().parse(source="manifest.json", format="json-ld") print(g.serialize(format='turtle', indent=2).decode())