summaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | Reinstated testGarrett Smith2016-05-021-0/+1
| | | |
| * | | Option to format compiler sourcesGarrett Smith2016-05-021-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By default rebar3 displays compiler sources as absolute paths in their original location, which is under the build dir. This change introduces an option 'compiler_source_format' to format sources in two alternative ways: relative absolute When either 'relative' or 'absolute' are specified, the file is resolved to its original location when it is a link. When 'relative' is specified, the path is displayed relative to the current working directory. When 'absolute' is specified, the path is absolute. The default value is 'unchaged' which leaves the compiler source unchanged. This is arguably too flexible as I suspect most people would opt for 'relative' all the time - it's the most compact representation of the file and is sufficient to find the source given cwd. The change however is meant to introduce the change gradually, preserving existing behavior and giving users a choice for formats. In time perhaps the default can be changed to 'relative' - but still allowing users to revert to the other two options ('absolutel' and 'unchanged') as needed.
* | | | add support for passing a sys_config to common testTristan Sloughter2016-06-111-3/+45
| |/ / |/| |
* | | Support ENV config for proxy valuesFred Hebert2016-06-111-1/+72
| | | | | | | | | | | | | | | - The configured stuff in rebar3 takes precedence over the ENV - The env is then chosen
* | | Regression test showing the bug for umbrella appsFred Hebert2016-06-031-4/+48
| |/ |/| | | | | | | | | | | When the operation for an unlock takes place in the config of a umbrella application, the `unlock' provider does not see the dependency in the `deps' value of the config (since it only includes the deps at the root of the project) and ignores these.
* | adjust `data_dir_correct` test in ct suitealisdair sullivan2016-05-231-1/+1
| | | | | | | | don't bother checking the profile in the path to the data dir
* | don't generated coverage for `extra_src_dirs`alisdair sullivan2016-05-151-4/+4
|/ | | | closes #1057 and #1179
* Merge pull request #1121 from frojasg/feature/config-rebar-dir-using-env-varTristan Sloughter2016-04-301-2/+34
|\ | | | | Allows overwrite default cache dir using REBAR_CACHE_DIR
| * Read env var REBAR_CACHE_DIR on rebar3 only onceFrancisco Rojas2016-04-061-1/+1
| | | | | | | | | | Instead of reading every time that rebar_dir:global_cache_dir/1 is called
| * use priv_dir in rebar_dir testFrancisco Rojas2016-03-171-2/+2
| |
| * Allows overwrite default cache dir using REBAR_CACHE_DIRFrancisco Rojas2016-03-151-2/+34
| | | | | | | | | | Allows overwrite the default cache directory using the environment variable REBAR_CACHE_DIR.
* | rename dist to dist_nodeFred Hebert2016-04-011-8/+8
| |
* | Extract dist config handling, support {dist, ...}Fred Hebert2016-03-211-0/+74
|/ | | | | | | | | | | | | | | | | | This commit moves the handling of distribution config and starting out of rebar_prv_shell and into rebar_dist_utils. The module is able to handle standard config options and boot a distributed node mode. This could be used in plugins (once it is exposed) and other providers like CT. Configuration is also expanded so that options like: {dist, [{sname, atom()}, {name, atom()}, {setcookie, term()}]} can be used and will be handled as a default. The config handler supports similar terms from the command line being parsed in if the calling provider supports them. A test suite is added for configuration handling.
* move definition of 'EUNIT' macro to eunit provideralisdair sullivan2016-03-032-10/+65
| | | | add definition of 'COMMON_TEST' macro to eunit provider
* Revert "define the 'EUNIT' macro in the test profile"alisdair sullivan2016-03-031-10/+4
| | | | This reverts commit 4c32c52b557c66ac6e6764efb1ed9135c00a3c20.
* define the 'EUNIT' macro in the test profilealisdair sullivan2016-03-031-4/+10
|
* include project_plugins in plugins that can be upgradedTristan Sloughter2016-03-021-1/+42
|
* Take CT options errors and turn them to warningsFred Hebert2016-03-021-7/+7
| | | | | | | | The idea is that given we accept arbitrary config items for CT, we should similarly be able to pass unsupported options and keep things running. However for unsupported options, a warning is very useful to have.
* Merge pull request #1099 from talentdeficit/ct_includeTristan Sloughter2016-03-011-3/+27
|\ | | | | add support for common tests `include` flag
| * add support for common tests `include` flagalisdair sullivan2016-03-011-3/+27
| |
* | Merge pull request #1098 from talentdeficit/ct_warn_on_cover_specTristan Sloughter2016-03-011-2/+20
|\ \ | | | | | | error on a cover spec in ct_opts
| * | add a link to the docs about `test_spec` and `cover` in ct warningsalisdair sullivan2016-03-011-2/+2
| | |
| * | error on a cover spec in ct_optsalisdair sullivan2016-03-011-1/+19
| |/
* | add test for new hook functionTristan Sloughter2016-02-281-1/+21
|/
* Merge pull request #1070 from project-fifo/hex-improvementsTristan Sloughter2016-02-242-21/+100
|\ | | | | Hex improvements
| * Add more hex rules so they don't throw errorsHeinz N. Gies2016-02-222-21/+100
| | | | | | | | | | | | | | | | | | | | Add more version constraints Allow for any number of whitespaces after compairison opperator Improve updating and error printing Fix failing tests
* | Merge pull request #1075 from tsloughter/plugin_overrideFred Hebert2016-02-223-7/+85
|\ \ | |/ |/| add project_providers after initing default providers but allow overrides
| * add test to verify only project_plugins override providersTristan Sloughter2016-02-223-7/+85
| |
* | Make lock files future-proofFred Hebert2016-02-161-0/+46
|/ | | | | | | | | | | | | | | | | | | | | | | | | Changes to how hex or packages may work in the future will necessarily bring changes to the format of lock files. This commit adds an optional framing for future lock files of the form: {Version, LockList}. <Whatever consultable attributes> This format is supported such as the LockList is the current lockfile contents, and will never have more information than it currently does. Attributes can be whatever and are currently undefined. Rebar copies will be able to: - Keep using the core locklist (which avoids breaking the last year or so of community libraries using rebar3) - Warn when it runs an outdated copy in comparison to the lock file - Automatically rewrite lock files in the format it supports - Augment or parse files in a version-specific manner. This changes the usage interface slightly, but is backwards *and* forwards compatible.
* Merge pull request #1041 from lrascao/fix/relx_overlay_varsTristan Sloughter2016-02-052-7/+65
|\ | | | | Add test case for relx overlay vars
| * Add test case for relx overlay varsLuis Rascao2016-02-052-7/+65
| | | | | | | | | | Makes use of several var types: integers, strings, binaries, binary strings and tuples.
* | don't lose overrides in an app when installing plugins it uses'Tristan Sloughter2016-01-311-2/+43
| |
* | fix paths for multiple app projects when running ct with no --dir argumentalisdair sullivan2016-01-301-5/+6
|/
* Add module directory to include pathLuis Rascao2016-01-261-2/+64
| | | | | | | | | | Several projects use an include path relative to the project's root. file:compile will look in three places for the include files: The current working directory The directory where the module is being compiled The directories given by the include option
* Merge pull request #1031 from tsloughter/masterFred Hebert2016-01-241-2/+20
|\ | | | | add profile option to clean task
| * add profile option to clean taskTristan Sloughter2016-01-231-2/+20
| |
* | deduplicate default test set generated by `rebar3 eunit`alisdair sullivan2016-01-171-5/+9
|/ | | | | this ONLY attempts to deduplicate test sets that are generated by rebar in the absence of any user specified tests
* merge overlay entries into a single {overlay, list()} for relxTristan Sloughter2016-01-101-1/+23
|
* install project app plugins after discovering them not beforeTristan Sloughter2016-01-101-2/+34
|
* Merge pull request #1006 from tsloughter/masterFred Hebert2016-01-091-5/+35
|\ | | | | only apply default and prod profile to dependencies
| * only apply default and prod profile to dependenciesTristan Sloughter2016-01-091-5/+35
| |
* | fix dirs robocopy and canonical paths in windowsFred Hebert2016-01-071-7/+14
| | | | | | | | | | | | | | | | | | | | | | | | - robocopying a directory into another directory recursively expects the directory name to be properly mapped onto the destination, otherwise all the files are copied into the given path. This patches things so a directory-to-directory robocopy works as expected in a linux mindset so tests pass - the test for canonical paths didn't expect a windows environment at all; the test (and library) is modified to be consistent in that environment: always with a native format and with proper support of drive letters.
* | Avoid changing directories in test suiteFred Hebert2016-01-071-6/+3
|/
* Merge pull request #966 from talentdeficit/ct_root_suitesFred Hebert2016-01-051-1/+94
|\ | | | | allow ct suites to be specified at root of project (or root of app)
| * add test for foo_SUITE_data filesalisdair sullivan2015-12-201-2/+8
| |
| * put `extra' ct test suites in `extras/apps/APPNAME' rather than `extras'alisdair sullivan2015-12-201-1/+44
| | | | | | | | this allows repeated test suite names across apps without conflicts
| * allow ct suites to be specified at the root of a project (or root of app)alisdair sullivan2015-12-201-1/+45
| | | | | | | | | | | | | | | | 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'
* | convert ~> versions to highest matchingTristan Sloughter2015-12-261-3/+22
| |
* | Merge pull request #987 from ferd/plugin-templatesTristan Sloughter2015-12-2111-1/+146
|\ \ | |/ |/| Plugin templates
| * Plugin templates enabledFred Hebert2015-12-1911-1/+146
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.