| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
allow ct suites to be specified at root of project (or root of app)
|
| | |
|
| |
| |
| |
| | |
this allows repeated test suite names across apps without conflicts
|
| |
| |
| |
| |
| |
| |
| |
| | |
previously rebar3 dropped suites declared at the root of the project (via
`--suite=whatever_SUITE' probably) and warned. this was because the compiler
would recursively copy and compile everything in the directory indicated by
the test suite. this changes the copy mechanism to only copy erl source files
and directories that end with `_SUITE_data' into the `extras' dir in `_build'
|
| | |
|
|\ \
| |/
|/| |
Plugin templates
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This lets a plugin define templates to be loaded:
$ rebar3 new
...
proper (plugin): A basic PropEr suite for an OTP application
...
$ rebar3 new help proper
proper:
plugin template (...)
Description: A basic PropEr suite for an OTP application
Variables:
name="suite" (...)
...
→ rebar3 new proper fakesuite
===> Writing test/prop_fakesuite.erl
In this case, proper is a fake template file I've put by hand in
_build/default/plugins/rebar3_proper/priv/<somename>/, meaning it will
only work as far as it's called from the project's root.
The priority order of plugins is now .config > plugin > built-in, such
that someone could ensure plugins do not crush their own private
templates, but also that custom or plugin templates do overtake built-in
ones. It used to be Built-in > .config only.
Templates are searched for recursively in the priv/ directory of
plugins.
|
|/ |
|
|\
| |
| | |
Fix wrong relative path resolution
|
| |
| |
| |
| | |
Tests both absolutes and relative paths.
|
|/
|
|
|
|
|
|
| |
This should fix #955
The test is implicit as a bad index previously silently crashed rebar3.
By adding the bad index to the `new` suite's files, we can show that
things keep running.
|
|\
| |
| | |
symlink mib hrl output in apps `include' directories
|
| | |
|
| |
| |
| |
| | |
this restores compatibility with rebar2 and erlang.mk
|
| |
| |
| |
| | |
Full rewrite, code should be understandable now.
|
|\ \
| |/
|/|
| | |
tsloughter-tup_umerge
|
| | |
|
|/
|
|
| |
(the tests fail)
|
| |
|
| |
|
|
|
|
| |
The checking of flags and the parsing of arguments is separated up.
|
| |
|
| |
|
|\
| |
| | |
fixes for cover under new compiler/eunit/ct
|
| |
| |
| |
| |
| |
| | |
* only try to cover compile directories that actually exist
* recover from failures where source files don't contain required
attributes for cover compilation and print warning
|
| |
| |
| |
| | |
`ct_opts`
|
| |
| |
| |
| |
| |
| |
| |
| | |
* remove partial support for ct `test_spec` until it can be done properly
and warn if `test_spec` is present in test opts
* use new compiler functionality to reduce complexity of provider
* reduce command line options available to those that can be
supported properly
|
|\ \
| |/
|/| |
Rebuild PLT when beams no longer exist
|
| | |
|
|\ \
| |/
|/| |
delay validation of eunit tests until just before running
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* modify compiler interface to work on either application objects or
directories containing source files
* compile all sources in `src_dirs` to the application `ebin` dir and
all sources in `extra_src_dirs` to a directory mirroring it's
position in the app's `_build` directory. for example, `apps/foo/more`
would compile to `_build/default/lib/foo/more`
for `extra_src_dirs` in the root of a project with multiple
applications (so orphan directories that don't "belong" to an
application) compile to `_build/default/extras/more`
* copy directories specified in `extra_src_dirs` into the `_build`
directory so tools like `ct` and `xref` that expect source to be
in a particular location still work
* clean compiled artifacts from all `extra_src_dirs`
* alter `eunit`, `ct` and `cover` to work with the new directory
structure
* billions of new tests
|
|
|
|
|
|
| |
compiled"
This reverts commit 9d82215296205d2d30c152c7d7c6fcb8e4a92443.
|
|
|
|
|
| |
This passes the directory to the option to ensure it works with more
than configs at the root of the project.
|
| |
|
| |
|
| |
|
|
|
|
| |
prior to running compile and compile prehooks
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This commit replaces the method of upgrading by unlocking all transitive
deps by one that utilizes the parent element of each app to only
unlock transitive deps of children of the top level deps being upgraded.
Additionally the run function of upgrade_SUITE is modified to only create
the mock updates before the upgrade provider is run, instead of before
any provider is run, which would cause improper behavior in install_deps.
|
|\
| |
| | |
fix canonical path tests on windows
|
| | |
|
|\ \
| | |
| | | |
add an export to allow specifing arbitrary extra erl files to be compiled
|
| | |
| | |
| | |
| | | |
to `rebar_erlc_compiler`
|
|\ \ \
| | | |
| | | | |
test for ensuring `data_dir` is set correctly in ct configs
|
| | | | |
|