Multi target#3
Draft
eliasson wants to merge 18 commits into
Draft
Conversation
To prepare for the platform specific projects to come.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The current version of Garanti only supports the Erlang target. This was a well known limitation when I started, I wanted to use OTP, it was one of the driving factors. And I intended to use it on my backend project. Now I have an idea for a frontend thingy in Luster and I would like to have both Erlang and JavaScript support.
As I still want to use OTP for test execution when running on Erlang (it keeps tests isolated, allow parallel runs, and is a nice overall model) I landed in the decision to split Garanti into three libraries:
garanti- the core part. Defining the suite, test, assertions and implementing the matchers.garanti_javascript- the new runner targetting JavaScript. Only a few tests for integration / smoketest.A consuming client will then have to use both
garantiand the runner they need, depending on what they target.*) As Garanti is self-hosted in terms of tests it needs a runner, and the core project cannot introduce that dependency. So the tests needed to move.
TODO
garanti_erlang.