README.markdown in test-harness-0.4.14 vs README.markdown in test-harness-0.6.0
- old
+ new
@@ -1,7 +1,9 @@
# Test Harness
+[![Build Status](https://travis-ci.org/projectdx/test_harness.png)](https://travis-ci.org/projectdx/test_harness)
+
Test Harness is a testing framework which allows for clean separation of test responsibilities.
## Installation
Test Harness is available as a rubygem from rubygems.org
@@ -101,12 +103,17 @@
This block allows you to group constants, procs, and whatever else you might need for testing this component. You
can assign any attributes to the component block which will be available in the UIDriver and UIView classes below.
The **path, within** attributes are special:
-1. **path**: is used by the uid#show method to automatically show that path. You can have symbols within this string,
- e.g., c.path = "/application/:group/:id". The :group and :id symbols will be replaced from the special **mm.subject**
- object, and hence, the **mm.subject** must respond to mm.subject.id, and mm.subject.group.
+1. **path**: is used by the uid#show method to construct the url that it navigates to. You have few options:
+ a. *String*: ```component.path = 'widgets/:widget_id'```, TestHarness will look for :widget_id in few places as follows:
+ * mm.subject.widget_id,
+ * mm.subject[:widget_id] *(if mm.subject is a Hash)*
+ * mm.widget_id,
+ * mm.widget.id
+
+ b. *Proc*: ```component.path = lambda {|mm| 'widges/are/%s' % mm.whatever}```
2. **within**: is used to limit the search for any CSS elements to the children of this css identifier.
#### II. UIView block
UIView objects **Do the looking**. Use this block to define methods used by the **uiv** object in the step definitions. These typically