Skip to content
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

Need script tests #1

Open
sebbASF opened this issue Aug 25, 2020 · 4 comments
Open

Need script tests #1

sebbASF opened this issue Aug 25, 2020 · 4 comments

Comments

@sebbASF
Copy link
Contributor

sebbASF commented Aug 25, 2020

The current test harness only tests the shared part of the archiver which parses emails.

There need to be some tests for the functioning of the archiver when processing input messages, and for the importer when uploading mail from files.

This will either need a test ES instance, or a way of emulating the behaviour of the ElasticSearch API. Or both.

@Humbedooh
Copy link
Member

We could extend upon this, and have the following steps run:

  • spin up ES
  • set up foal via non-interactive config
  • import from an mbox corpus we know
  • use the archiver on a select number of messages
  • spin up the UI backend and ensure that we are able to fetch the messages we need
  • Possibly test AAA in the UI?

@sebbASF
Copy link
Contributor Author

sebbASF commented Aug 25, 2020

I think we also need to test against earlier versions to ensure compatibility

@Humbedooh
Copy link
Member

With regards to which elements in particular?
The old backend and UI will obviously not be compatible with the new DB and structure.
We might however be able to test migrations from old DBs to Foal - ensuring that once before and after you migrate, permalinks etc are stable.

@sebbASF
Copy link
Contributor Author

sebbASF commented Aug 25, 2020

The archiver in particular needs to generate the same output for the same input and settings.
For example, the current tests don't exercise the part of the archiver that adds the archived-at header.

This is no longer added, but there may be other parts of the code that affect the output.

Similar considerations apply to the importer.
These are the two main items that need testing.

Also need to test the backend to check the output is compatible with the published API.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants