Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
https://github.com/genenetwork/genenetwork2/issues/296
|
|
|
|
|
|
|
|
|
|
|
|
https://github.com/pjotrp/genenetwork2/commit/63a5c8a42ad02e9126bb207465ff5eca98f6515d
- Renamed WQFLASK_SETTINGS to GN2_SETTINGS
|
|
* Add mapping tests, and build the first of the tests.
|
|
* Mainly to tell the dependencies easily.
|
|
* Ensure the key exists in the json object/dictionary, before trying to
use it to retrieve a value.
|
|
|
|
|
|
* Add the module that will hold the code to test the links on the
system.
|
|
* Use argparse to handle commandline arguments.
* Create initial layout of how the code might end up - lots of the code
is currently commented out.
|
|
* Check that the links for OAuth2 logins via ORCID and GitHub are setup
correctly.
|
|
* Provide connections to elasticsearch at various points in the code.
These oversight was caught while running tests.
|
|
|
|
|
|
* With the parameterized module, the testcase cannot be run
independently at this time.
|
|
* The test functions were very similar, so this commit refactors out the
common test code to a single method, and passes in the data to the
test using the parameterized package.
* Check that the page content after a login attempt is the expected
content, rather than checking the url.
|
|
* When logging in, if a user selects "Import existing collections", the
system would throw an exception, since Redis would return a NoneType,
which would then be accessed by json.loads(), which doesn't seem to
know how to process that.
This fixes that, by providing a string representing an empty json
array ("[]"), in place of the NoneType.
|
|
|
|
|
|
* Add an integration test to test that the login process for users
registered locally to genenetwork2 works as expected.
|
|
* Since the tests require that some parameters be provided while running
the tests, create a class that helps abstract away the details of
retrieving and setting the expected parameters.
|
|
* Rename the file to make it an importable module
* Refactor the test to move common code out to a super class.
|
|
* Add integration test to check the registration process.
|
|
|
|
|
|
PYTHONPATH needed as
it is now in the Guix build.
|
|
|
|
* Update functions to make them more testable.
* Update code using updated functions.
|
|
* Instead of checking for the state of elasticsearch at startup, check
the state at the moment the user requests a feature that depends on
elasticsearch.
This reduces the chances that the user is dropped onto an exception
page when elasticsearch server goes down.
|
|
* Add some extra checks to ensure that elasticsearch is running before
presenting the UI to the user.
|
|
* After the email is sent to the user, there is need to provide a way
for the user to actually change their password, and have the results
saved.
|
|
* Refactor code that can be used in more than one place to a more
generic method/function that's called by other methods
|
|
* Update the code so that it sends out emails for the "forgot password"
feature.
|
|
* Add configuration variables to enable the system connect to the
configured SMTP server to send out emails.
|
|
|
|
* If elasticsearch server is down, or the configuration variables are
not provided at startup or in a configuration file, then do not allow
the system to simply crash, but instead, inform the user that they
cannot use the services that depend on elasticsearch to be running.
|
|
* Add a method to set the configuration variables to None if the
configuration values are not provided at startup or in the
configuration files.
The system already checks for these values, and if they are absent, it
simply fails to display the OAuth service as available for use to
login.
|
|
* Register local accounts onto elasticsearch rather than mysql.
* Login from the accounts on elasticsearch
* Harmonise local and oauth2 logins to use the same code.
|
|
* Add code to handle the login via ORCID
|
|
* Have the authorisation URLs build up from the client id and client
secret values.
|
|
* Add some code to handle the login if the user chooses to login via
GitHub or ORCID.
|
|
* Elasticsearch need a short delay after adding document for it to index
the document for subsequent access.
|