summaryrefslogtreecommitdiff
path: root/src/rebar_prv_eunit.erl
Commit message (Collapse)AuthorAgeFilesLines
* Refactor normalizemopp2018-12-301-6/+10
|
* Use format_error/1mopp2018-12-301-1/+3
|
* Revert try-catchmopp2018-12-301-12/+8
|
* Use ?PRV_ERROR instead of throwing errormopp2018-12-301-1/+1
|
* Add --generator option for eunitmopp2018-12-291-11/+33
|
* Abstracted path managementFred Hebert2018-10-111-4/+4
| | | | | | | | | | | | | | | | Move path management out of rebar_utils manual code path function handling (which we leave there for backwards compat), and centralize them to allow easier coordination of paths between plugins and deps. On top of path handling, do a check of loaded modules to only purge and reload those that actually need it done in order to prevent all kinds of weird interaction and accidental purge kills. It also allows the possible cohabitation of both at once, with a "in case of conflict pick X" as a policy Changing path handling in providers also highlighted a bunch of bugs in some tests and appears to fix some in other providers, specifically around plugins.
* add eunit and ct option to set coverdata file nameTristan Sloughter2017-12-041-1/+4
|
* OTP-21 readiness, Full Unicode supportFred Hebert2017-11-161-1/+2
| | | | | | | | | | | | This replaces all deprecated function usage by alternative ones based on a version switch enacted at compile time, preventing all warnings. This will likely introduce some possible runtime errors in using a Rebar3 compiled on OTP-20 or OTP-21 back in versions 19 and earlier, but we can't really work around that. A bunch of dependencies have been updated to support OTP-21 without warnings as well.
* catch badarg exception from eunit in `rebar_prv_eunit`alisdair sullivan2017-02-051-7/+10
| | | | fixes #1469
* eunit: remove application modules from the modules eligible to testalisdair sullivan2016-12-231-4/+5
| | | | | application modules will be added to the eunit test set automatically, no need to consider them for inclusion in the test set separately
* don't filter eunit test modules based on file extensionalisdair sullivan2016-12-221-2/+2
| | | | | | stops the eunit provider from filtering out test modules based on the file extension. previously, it was hardcoded to expect all test files ended in `.erl`. this change allows for endings like `.lfe` and `.beam`
* Fix regex match for ignored fileFred Hebert2016-12-091-1/+1
| | | | | | | The regex mistakenly matched too many files (any character followed by an underscore) rather than only files starting in '._' This properly escapes the expressions to work in all cases.
* Restrict regexp to match on files starting with '._'Roberto Aloi2016-12-061-1/+1
|
* Add 'recursive' optionSiri Hansen2016-11-211-1/+1
| | | | | | | | | | | | The option {recursive,boolean()} can now be set pr directory in 'src_dirs' and 'extra_src_dirs', and on top level in the new 'erlc_compiler' option. Example config: {erlc_compiler,[{recursive,false}]}. {src_dirs,[{"src",[{recursive,true}]}]}. This will cause recursive compilation within the "src" directory, but not in any other directoires.
* Fix rebar3 dialyzer warningsFred Hebert2016-11-191-10/+4
| | | | Some tricky changes in there but should be okay
* allow using an alternate regex to locate test modules during eunit runsalisdair sullivan2016-09-201-7/+12
| | | | | | | | {`eunit_test_regex`, Regex}` will use the supplied `Regex` instead of the default to locate tests in test dirs. note this matches only the filename, not the path. the regex is applied to all test dirs, recursively fixes #1331
* Add sname, name, setcookie option in eunit, ctsoranoba2016-04-071-8/+14
|
* supported dist_node in ct and eunitsoranoba2016-04-071-0/+5
|
* move definition of 'EUNIT' macro to eunit provideralisdair sullivan2016-03-031-1/+19
| | | | add definition of 'COMMON_TEST' macro to eunit provider
* Add short-options to the eunit provider.Alexander Færøy2016-02-281-4/+4
| | | | This patch adds support for short options in the eunit provider.
* in providers that don't run per app run all available hooksTristan Sloughter2016-02-281-3/+3
|
* deduplicate default test set generated by `rebar3 eunit`alisdair sullivan2016-01-171-10/+39
| | | | | this ONLY attempts to deduplicate test sets that are generated by rebar in the absence of any user specified tests
* Merge pull request #1018 from talentdeficit/cover_what_are_you_doooooingFred Hebert2016-01-161-4/+3
|\ | | | | change detection of valid modules for `eunit`
| * change detection of valid modules for `eunit`alisdair sullivan2016-01-131-4/+3
| | | | | | | | | | | | | | `beam_lib:chunks(..)` needs a path to object code which, frustratingly, `code:which/1` won't return for cover compiled modules. instead just assume that if `code:which/1` doesn't return `non_existing` a module is something we can run tests on
* | Merge pull request #1021 from tsloughter/masterTristan Sloughter2016-01-151-1/+2
|\ \ | |/ |/| convert 'app' to 'application' in eunit_opts to match cmdline args
| * convert 'app' to 'application' in eunit_opts to match cmdline argsTristan Sloughter2016-01-151-1/+2
| |
* | when using the `--file' argument to `eunit' paths were being convertedalisdair sullivan2016-01-121-9/+20
|/ | | | into directory test arguments
* Default to no eunit formatter if verbose specifiedJulian Squires2015-12-011-1/+2
| | | | The previous default meant that verbose output would not be emitted.
* fetch eunit_formatters config not from the command args but from the configTristan Sloughter2015-11-301-1/+1
|
* error on ct/eunit argument errors instead of warningalisdair sullivan2015-11-151-95/+115
|
* warn on incorrectly specified test options in `rebar.config`alisdair sullivan2015-11-141-8/+26
| | | | | | | when `ct_opts`, `eunit_tests`, `eunit_first_files`, `ct_first_files`, `erl_first_files`, `eunit_compile_opts`, `ct_compile_opts` and `erl_opts` have values that are single non-list terms warn and try wrapping them in a list when processing them in the `eunit` and `ct` providers
* add space before end so eyes don't bleedTristan Sloughter2015-11-131-1/+1
|
* include Sean Cribbs eunit formatter by defaultTristan Sloughter2015-11-131-3/+14
|
* add an option to soft purge rather than purge old codealisdair sullivan2015-11-011-1/+1
| | | | | at the cost of some SASL warnings this prevents rebar3 from terminating processes when reloading their code before running tests
* Merge pull request #895 from talentdeficit/delay_eunit_validationFred Hebert2015-11-011-23/+24
|\ | | | | delay validation of eunit tests until just before running
| * delay validation of eunit tests until just before runningalisdair sullivan2015-10-301-23/+24
| |
* | move test profile bootstrap into corealisdair sullivan2015-10-301-20/+1
|/
* remove unnecessary filtering of checkapps from project apps in `rebar_prv_eunit`alisdair sullivan2015-10-261-16/+4
|
* restore debug calls to `rebar_erlc_compiler` and `rebar_prv_eunit`alisdair sullivan2015-10-261-2/+2
|
* refactor `rebar_erlc_compiler`alisdair sullivan2015-10-261-65/+102
| | | | | | | | | | | | | | | | | | | * 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
* fix failing cover testalisdair sullivan2015-09-291-6/+27
|
* shiny and new test suite for eunit provideralisdair sullivan2015-09-291-107/+124
|
* inject `eunit_compile_opts`, `eunit_first_files` and `TEST` macroalisdair sullivan2015-09-291-11/+36
| | | | prior to running compile and compile prehooks
* Revert "drop `eunit_first_files' and `eunit_compile_opts'. that's what"alisdair sullivan2015-09-291-2/+23
| | | | This reverts commit dde60d491f64e8545c586d07015a466eb8e6e126.
* drop `eunit_first_files' and `eunit_compile_opts'. that's whatalisdair sullivan2015-09-291-23/+2
| | | | profiles are for
* add `application' flag and additional testsalisdair sullivan2015-09-291-8/+9
|
* add `error_on_warning' option to eunit provideralisdair sullivan2015-09-291-22/+51
|
* reworked eunit provider to allow access to full range of eunit testsalisdair sullivan2015-09-291-92/+97
|
* improve `--help' documentation for eunit provideralisdair sullivan2015-08-161-5/+5
|
* add support for `rebar3 eunit --file=...'alisdair sullivan2015-08-151-3/+29
|