 			description: should.be "action-name"
 },
 {
-	given: ->
+	"given an ActionWatcher with an AsyncAction that calls done": ->
 		@action = new Witness.AsyncAction (-> @done())
 		@watcher = new Witness.ViewModels.ActionWatcher @action
 
-	when: ->
+	"when it is run": ->
 		@action.run {}, (->), (->)
 
 	then:
 		watcher: should.haveStatus "passed"
 },
 {
-	given: ->
+	"given an ActionWatcher with an AsyncAction that fails": ->
 		@action = new Witness.AsyncAction (-> @fail())
 		@watcher = new Witness.ViewModels.ActionWatcher @action
 
-	when: ->
+	"when is is run": ->
 		@action.run {}, (->), (->)
 
 	then:
 		watcher: should.haveStatus "failed"
 },
 {
-	given: ->
+	"given an ActionWatcher with an AsyncAction and has been run": ->
 		@action = new Witness.AsyncAction (-> @done())
 		@watcher = new Witness.ViewModels.ActionWatcher @action
 		@action.run {}, (->), (->)
 
-	when: ->
+	"when it is reset": ->
 		@watcher.reset()
 
 	then:

			description: should.be "description"
},
{
	given: ->
		@action = new Witness.Action (-> throw new Error "action failed")
		@watcher = new Witness.ViewModels.ActionWatcher @action

	when: ->
		@action.run {}, (->), (->)

	then:
		watcher: should.haveStatus "failed"
},
{
	given: ->
		@action = new Witness.Action (->)
		@watcher = new Witness.ViewModels.ActionWatcher @action

	when: ->
		@action.run {}, (->), (->)

	then:
		watcher: should.haveStatus "passed"
},
{
	given: ->
		@action = new Witness.Action (->)
		@watcher = new Witness.ViewModels.ActionWatcher @action
		@action.run {}, (->), (->)

	when: ->
		@watcher.reset()

	then:


describe "ActionWatcher with AsyncAction",
{
	"given an ActionWatcher with an AsyncAction that calls done": ->
		@action = new Witness.AsyncAction (-> @done()), [], "action-name"
		@watcher = new Witness.ViewModels.ActionWatcher @action

