Turnerj / forem-dotnet

.NET API interface for Forem apps. Forem is the platform which powers DEV and other online communities.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Improving CI Testing via local DEV/Forem Instance

Turnerj opened this issue · comments

Currently the testing occurs on the live DEV site with a number of public API calls to GET endpoints. This isn't sustainable while building a testable solution.

While it could be enough to just write mocking tests, that really doesn't test anything with a library like this. I would rather that the tests keep up with the current version of DEV/Forem and make sure we don't have any subtle API failures with the latest versions.

To do this, it will require running a local instance of DEV/Forem with data seeded in the DB for the various read/write operations available via the API.

@Turnerj do you know about any "easy" way to get a local instance of Forem and the DB running in AppVeyor?

Unfortunately not. From looking at the DEV repo itself, it seems like it might be easiest to run a container on the CI as that might require the least dependencies.

https://github.com/thepracticaldev/dev.to/#prerequisites
https://docs.dev.to/installation/

I haven't run a container before on AppVeyor so I'm not entirely sure of the process required.

Another reason for moving to a local instance is that we are now starting to hit API limits against the live site. This was always bound to happen but will make testing a little more difficult now that it does.

heads up: I created this issue in Forem repository
forem/forem#9408