Skip to content
milanmajchrak edited this page Dec 7, 2023 · 9 revisions

There are many tests in dspace. Unit tests for both backend and frontend as well as integration tests. Then there are tests that run as Github actions.

UI test scenarios

https://github.com/dataquest-dev/dspace-customers/issues/55

Frontend Github actions tests

Tests are run from this docker compose. In service dspacedb there is environment variable LOADSQL that loads SQL script which contains database dump. Tests will be run on this database.

It is possible to change it by uploading it into this release.

It was necessary to change entrypoint into service dspace, in order to create new metadata fields (added force after dspace database migrate).

Test database migrations

Database migrations are in following folder (and subfolders) dspace-api/src/main/resources/org/dspace/storage/rdbms/sqlmigration. Subfolder postgres is used when dspace is installed and deployed, h2 is used for tests with in-memory database. If migration is added to postgres, it needs to be added to h2 as well.

Delete and create database

  1. Drop database in pgAdmin or use command dropdb --username=postgres dspace (with appropriate username)
  2. In PostgreSQL\13\bin: createdb --username=postgres --owner=dspace --encoding=UNICODE dspace
  3. Create extension pgcrypto psql -U postgres -d dspace -c "CREATE EXTENSION pgcrypto"
  4. In [dspace]/bin/ dspace database migrate
  5. Create new admin: dspace create-administrator
Clone this wiki locally