org.scalatest.WordSpec

class AfterWord

[source: org/scalatest/WordSpec.scala]

protected final class AfterWord(text : java.lang.String)
extends AnyRef
Class whose instances are after words, which can be used to reduce text duplication.

If you are repeating a word or phrase at the beginning of each string inside a block, you can "move the word or phrase" out of the block with an after word. You create an after word by passing the repeated word or phrase to the afterWord method. Once created, you can place the after word after when, a verb (should, must, or can), or that. (You can't place one after in or is, the words that introduce a test.) Here's an example that has after words used in all three places:

   import org.scalatest.WordSpec
   
   class ScalaTestGUISpec extends WordSpec {
   
     def theUser = afterWord("the user")
     def display = afterWord("display")
     def is = afterWord("is")
   
     "The ScalaTest GUI" when theUser {
       "clicks on an event report in the list box" should display {
         "a blue background in the clicked-on row in the list box" in {}
         "the details for the event in the details area" in {}
         "a rerun button" that is {
           "enabled if the clicked-on event is rerunnable" in {}
           "disabled if the clicked-on event is not rerunnable" in {}
         }
       }
     }
   }
   

Running the previous WordSpec in the Scala interpreter would yield:

   scala> (new ScalaTestGUISpec).execute()
   The ScalaTest GUI (when the user clicks on an event report in the list box) 
   - should display a blue background in the clicked-on row in the list box
   - should display the details for the event in the details area
   - should display a rerun button that is enabled if the clicked-on event is rerunnable
   - should display a rerun button that is disabled if the clicked-on event is not rerunnable
   
Method Summary
def apply (f : => Unit) : ResultOfAfterWordApplication
Supports the use of after words.
Methods inherited from AnyRef
getClass, hashCode, equals, clone, toString, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized
Methods inherited from Any
==, !=, isInstanceOf, asInstanceOf
Method Details
def apply(f : => Unit) : ResultOfAfterWordApplication
Supports the use of after words.

This method transforms a block of code into a ResultOfAfterWordApplication, which is accepted by when, should, must, can, and that methods. For more information, see the main documentation for trait WordSpec.



Copyright (C) 2001-2010 Artima, Inc. All rights reserved.