Age | Commit message (Collapse) | Author |
|
|
|
|
|
* 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.
|
|
* Add configurations for elasticsearch and github.
|
|
* On successful login via OAuth2, save the details of the user in
elasticsearch store, to avoid hitting the external provider for the
basic details.
|
|
* Add some code to set up the path for the python-elasticsearch module.
|
|
* Add functions to help with the github OAuth2 login process
|
|
* Collect variables and functions for using the elasticsearch system in
a separate module.
|
|
* Provide the OAuth2 client_id and client_secret values in configuration
variables.
|
|
* Add html elements that will be used to prompt users to login with
either GitHub or ORCID.
|
|
* Add configuration variables for GitHub and ORCID which will be used by
the system to allow users to login.
|
|
* Change the raise statement to use an Exception object rather than
using a string for compatibility with Python3.
|
|
* End the 'def' statement with a colon (:)
* Add an empty line between lines at different indentation levels for
clarity.
|
|
https://github.com/genenetwork/genenetwork2/issues/296
|
|
|
|
* Navigation depends on Javascript to render the elements being tested.
That would require selenium and its ilk to run such tests, meaning
such packages would need to be defined for Guix first.
|
|
|