summaryrefslogtreecommitdiff
path: root/src/rebar_prv_eunit.erl
Commit message (Collapse)AuthorAgeFilesLines
* 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
|
* Revert "don't add `{extra_src_dirs, ["test"]}` to `test` profile"alisdair sullivan2015-07-121-42/+20
| | | | This reverts commit b06a6ecaddfc6fea16f3c24881fd41ac731ffa9e.
* Merge pull request #487 from ferd/fix-provider-barenessTristan Sloughter2015-05-301-1/+1
|\ | | | | fix bareness issues
| * fix bareness issuesFred Hebert2015-05-311-1/+1
| | | | | | | | | | | | - Crashes in providers lib when no providers in a namespace are bare - Making sure bareness matches semantics; i.e. a bare provider is visible, a non-bare provider is hidden.
* | move handling of undefined app state to functionTristan Sloughter2015-05-221-8/+1
|/
* don't add `{extra_src_dirs, ["test"]}` to `test` profilealisdair sullivan2015-05-201-20/+49
| | | | | | adding it results in ct test suites being compiled before they're properly copied so changes made to suites between runs are not reflected if a run fails before test dirs are copied
* purge loaded code when it conflicts with project apps in testsTristan Sloughter2015-05-181-2/+3
|
* generalize the "test" special dir into an {extra_src_dirs, [...]} optionalisdair sullivan2015-05-161-41/+20
| | | | | | like `src_dirs`, `extra_src_dirs` are directories to be copied to the `_build` dir and compiled. unlike `src_dirs` they are not added to the .app specification