Tags: rubyworks/ae
Tags
Minor release adds color diffs for failed equality comparisons to the error message, and it fixes an issue in which class references needed the toplevel prefix (`::`) to ensure they can be found in all cases. Note that ANSI color diffs can be deactivated via AE.ansi = false or using the master switch an upcoming release of the ANSI gem.
AE now uses proper namespace for all classes. In particular, the `Ass… …ertor` class has become `AE::Assertor`. Only the `Assertion` class remains outside the `AE` namespace, as it is now used to map to the current exception class for raising assertions as defined by current test framwework. In addition, AE's Kernel extensions, which are used to adapt AE for use with any given test framework have been moved to the AE and AE::Assertor classes as class methods along with AE's assertion count methods.
Support libraries defining toplevel methods, such as `legacy.rb`, now… … place their methods in AE::World module instead of Object. AE::World needs to to be included in the context desired for the testing framework used. This is important to prevent polution of the the Object namespace.
This release adds adapters for TestUnit, MiniTest and RSpec. AE worke… …d with them previously but AE assertions were seen as errors rather than natice assertions. Likewise assertion counts were off in the final tally. These adapters insert AE's counts so the the tally's are correct. In addition to this the Assertion class itself now acts as the final end point for all assertions, which makes for a very clean interface.
New release of AE adds support for RSpec-style matchers. This means i… …t should be usable with Shoulda 3.0 and any other matchers library. This release also cleans up the underlying code, which is now xtremely clean. Lastly a small API change allows #asser to compare it's argument to the return of it's block using #==, just as #expect does using #===.
Version 1.2.2 simply add one new feature --the ability to use 'object.assert = other' instead of 'object.assert == other'. This was added simply becuase I found I often made the mistake of a missing '=', and since #assert= has no definition, there was no reason not to have behave accordingly. Also note that I switched the license from LGPL to MIT. With regards to reusable libraries and I moving all my work, such that I am able, to MIT to maximize free usage.
PreviousNext