summaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of app.configjoewilliams2011-09-203-4/+17
| | | | | | | | | | | | | | | | | | | | app.config has been a long standing erroneous file in rebar. Erlang/OTP documentation suggests a sys.config file instead. This file is stored in the releases/VSN directory. This does a few things but most importantly it ensures your config (contained in the application environment) survives a hot upgrade. It also has the advantage of allowing the configuration of the application to be versioned along side the application code. This patch flips rebar to use sys.config rather than app.config. Additionally it makes this flip to vm.args as well, making them versioned just like sys.config. This patch also includes runner script changes to support the old etc/app.config config file location and support for Windows. Thanks to mokele for the initial work and kick in the pants to make this finially happen.
* rebar_eunit_tests: avoid repetitionTuncer Ayaz2011-08-071-2/+3
|
* rebar_eunit_tests: check return valuesTuncer Ayaz2011-08-071-21/+15
|
* Fix whitespace errors in unit testsTuncer Ayaz2011-08-052-17/+19
|
* Sync rel/files in dummy project with templatesTuncer Ayaz2011-07-184-11/+29
|
* Update runner script in test projectTuncer Ayaz2011-03-041-3/+3
|
* Add 'generate-appups' commandjoewilliams2011-02-152-8/+1
| | | | | | | | | | | | | | | To further support OTP releases I have added support for generating application appup files. These include instructions that systools uses to generate a relup file which contains the low level instructions needed to perform a hot code upgrade. My goal with this module is to produce "good enough" appup files or at least a skeleton to help one get started with something more complex. If an appup file already exists for an application this command will not attempt to create a new one. Usage: $ rebar generate-appups previous_release=/path/to/old/version Generally this command will be run just before 'generate-upgrade'.
* Clean up emacs file local variablesTuncer Ayaz2011-01-313-3/+3
|
* Update nodetool in upgrade_projectTuncer Ayaz2011-01-311-0/+22
|
* Fix file existence checksTuncer Ayaz2011-01-292-10/+10
|
* Add 'generate-upgrade' commandjoewilliams2011-01-2713-0/+499
| | | | | | | | | | | | | | | | | | | | | To support OTP release upgrades I have added support for building upgrade packages. Support for this is included in the rebar_upgrade module, specifically generate_upgrade/2. It requires one variable to be set on the command line 'previous_release' which is the absolute path or relative path from 'rel/' to the previous release one is upgrading from. Running an upgrade will create the needed files, including a relup and result in a tarball containing the upgrade being written to 'rel/'. When done it cleans up the temporary files systools created. Usage: $ rebar generate-upgrade previous_release=/path/to/old/version This also includes a dummy application that can be used to test upgrades as well as an example. Special thanks to Daniel Reverri, Jesper Louis Andersen and Richard Jones for comments and patches.
* Apply Tidier suggestionsTuncer Ayaz2011-01-131-1/+1
|
* Unify executable invocationJuhani Rankimies2011-01-061-0/+12
| | | | | Add flags to rebar_utils:sh to control output and error handling. Replace calls to os:cmd with calls to rebar_utils:sh.
* Port rebar_eunit_tests to WindowsJuhani Rankimies2010-10-271-5/+12
|
* Port rebar_file_utils to WindowsJuhani Rankimies2010-10-271-0/+265
| | | | | | | | Modify rm_rf and cp_r to work when {win32,_} = os:type(). Simplify rm_rf to only accept one filename, directoryname or wildcard. Add unit tests to ensure a similar behaviour on windows and unix. Thanks to tuncer for guidance and feedback.
* Fix incorrect coverage count when prod modules include EUnit header.Chris Bernard2010-05-151-2/+22
| | | | | | | | Modules that include the EUnit header get an implicit test/0 fun, which cover considers a runnable line, but eunit:(TestRepresentation) never calls. Result: prod modules with tests can never reach 100% coverage. Ironic. In this case, fix it by decrementing the NotCovered counter returned by cover:analyze/3.
* Fixed 3 bugs in rebar_eunit. Added EUnit tests to capture them.Chris Bernard2010-03-041-0/+229
1. When running the eunit command with the convention of putting tests in "*_tests" modules, eunit would run those tests twice. This is because: 1) eunit:test/1 will naturally look for foo's tests both in foo, and in foo_tests, and 2) eunit:test/1 was being folded over all project modules. The fix is to filter "*_tests" modules from the list passed to eunit:test/1. 2. When running the eunit command with cover enabled and tests in a 'test' directory, cover would error because it couldn't find the source code for those tests. This is because cover:analyze/3 will only find module source in "." and "../src". This is hard-coded in cover :-(. Since cover shouldn't be calculating code coverage on test code anyway, the fix is to not fold cover:analyze/3 over non-production code. 3. When running the eunit command with cover enabled and a test suite defined, cover would only attempt to calculate coverage on the the test suite itself. This was because only the suite was passed to cover:analyze/3. The fix is to fold cover:analyze/3 over all the production code, filtering out the suite module if it is defined.