Replaced @Test(sequential) with @Test(singleThreaded)
diff --git a/CHANGES.txt b/CHANGES.txt
index fbd04a6..ce5e36c 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -7,6 +7,7 @@
 Added: Passing command line properties via the ant task and doc update (Todd Wells)
 Added: Hierarchical XmlSuites (Nalin Makar) 
 Added: Reporter#clear()
+Fixed: Replaced @Test(sequential) with @Test(singleThreaded)
 Fixed: If inherited configuration methods had defined deps, they could be invoked in incorrect order (Nalin Makar)
 Fixed: Initialize all Suite/Test runners at beginning to catch configuration issues right at start (Nalin Makar)
 Fixed: Issue7: Issue86 Incorrect dates reported for configuration methods
diff --git a/doc/documentation-main.html b/doc/documentation-main.html
index 7ccd11f..67019ed 100644
--- a/doc/documentation-main.html
+++ b/doc/documentation-main.html
@@ -499,10 +499,10 @@
 <td>
 </td>
 <td>
-<tt>sequential</tt>
+<tt>singleThreaded</tt>
 </td>
 <td>
-             If set to true, all the methods on this test class are guaranteed to run sequentially, even if the tests are currently being run with parallel="methods". This attribute can only be used at the class level and it will be ignored if used at the method level. 
+             If set to true, all the methods on this test class are guaranteed to run in the same thread, even if the tests are currently being run with parallel="methods". This attribute can only be used at the class level and it will be ignored if used at the method level. Note: this attribute used to be called <tt>sequential</tt> (now deprecated).
 
 </td>
 </tr>
diff --git a/src/org/testng/TestRunner.java b/src/org/testng/TestRunner.java
index 99e3669..b70cf71 100644
--- a/src/org/testng/TestRunner.java
+++ b/src/org/testng/TestRunner.java
@@ -730,7 +730,7 @@
               org.testng.annotations.ITestAnnotation.class);
 
       // If either sequential=true or parallel=classes, mark this class sequential
-      if (test != null && test.getSequential() ||
+      if (test != null && (test.getSequential() || test.getSingleThreaded()) ||
           XmlSuite.PARALLEL_CLASSES.equals(xmlTest.getParallel())) {
         sequentialClasses.add(cls);
       }
@@ -1131,7 +1131,7 @@
         (org.testng.annotations.ITestAnnotation) m_annotationFinder.
           findAnnotation(cls, org.testng.annotations.ITestAnnotation.class);
       if (test != null) {
-        if (test.getSequential()) {
+        if (test.getSequential() || test.getSingleThreaded()) {
           String className = tm.getTestClass().getName();
           List<ITestNGMethod> list = sequentialAttributeList.get(className);
           if (list == null) {
diff --git a/src/org/testng/annotations/ITestAnnotation.java b/src/org/testng/annotations/ITestAnnotation.java
index b062141..2729a39 100755
--- a/src/org/testng/annotations/ITestAnnotation.java
+++ b/src/org/testng/annotations/ITestAnnotation.java
@@ -61,6 +61,9 @@
   public boolean getSequential();
   public void setSequential(boolean f);
   
+  public boolean getSingleThreaded();
+  public void setSingleThreaded(boolean f);
+
   public String getDataProvider();
   public void setDataProvider(String v);
 
diff --git a/src/org/testng/annotations/Test.java b/src/org/testng/annotations/Test.java
index e8c460c..a9fafd8 100755
--- a/src/org/testng/annotations/Test.java
+++ b/src/org/testng/annotations/Test.java
@@ -139,7 +139,12 @@
    * attribute is ignore if @Test is not at the class level.
    */
   public String testName() default "";
-  
+
+  /**
+   * @deprecated Use singleThreaded
+   */
+  public boolean sequential() default false;
+
   /**
    * If set to true, all the methods on this test class are guaranteed to run
    * sequentially, even if the tests are currently being run with parallel="true".
@@ -147,7 +152,7 @@
    * This attribute can only be used at the class level and will be ignored
    * if used at the method level. 
    */
-  public boolean sequential() default false;
+  public boolean singleThreaded() default false;
 
   /**
    * The name of the class that should be called to test if the test
diff --git a/src/org/testng/internal/annotations/JDK15TagFactory.java b/src/org/testng/internal/annotations/JDK15TagFactory.java
index dd239c0..ca050d4 100755
--- a/src/org/testng/internal/annotations/JDK15TagFactory.java
+++ b/src/org/testng/internal/annotations/JDK15TagFactory.java
@@ -392,6 +392,7 @@
     result.setSuiteName(test.suiteName());
     result.setTestName(test.testName());
     result.setSequential(test.sequential());
+    result.setSingleThreaded(test.singleThreaded());
     result.setRetryAnalyzer(test.retryAnalyzer());
     result.setSkipFailedInvocations(test.skipFailedInvocations());
     result.setIgnoreMissingDependencies(test.ignoreMissingDependencies());
diff --git a/src/org/testng/internal/annotations/TestAnnotation.java b/src/org/testng/internal/annotations/TestAnnotation.java
index 6a6e503..22e84b4 100755
--- a/src/org/testng/internal/annotations/TestAnnotation.java
+++ b/src/org/testng/internal/annotations/TestAnnotation.java
@@ -22,6 +22,7 @@
   private String m_expectedExceptionsMessageRegExp = ".*";

   private String m_suiteName = "";

   private String m_testName = "";

+  private boolean m_singleThreaded = false;

   private boolean m_sequential = false;

   private Class<?> m_dataProviderClass = null;

   private IRetryAnalyzer m_retryAnalyzer = null;

@@ -132,6 +133,14 @@
     m_testName = xmlTest;

   }

   

+  public boolean getSingleThreaded() {

+    return m_singleThreaded;

+  }

+  

+  public void setSingleThreaded(boolean singleThreaded) {

+    m_singleThreaded = singleThreaded;

+  }

+

   public boolean getSequential() {

     return m_sequential;

   }

diff --git a/test/src/test/thread/BaseSequentialSample.java b/test/src/test/thread/BaseSequentialSample.java
index 602ca16..06cff10 100644
--- a/test/src/test/thread/BaseSequentialSample.java
+++ b/test/src/test/thread/BaseSequentialSample.java
@@ -18,7 +18,7 @@
 

   protected void ppp(String s) {

     if (false) {

-      System.out.println("[" + getClass().getName() + " " 

+      System.out.println("[BaseSequentialSample:" + getClass().getName() + " " 

           + Thread.currentThread().getId() + " " 

           + "] " + s);

     }

diff --git a/test/src/test/thread/SequentialSample2Test.java b/test/src/test/thread/SequentialSample2Test.java
index 80caf73..856652f 100644
--- a/test/src/test/thread/SequentialSample2Test.java
+++ b/test/src/test/thread/SequentialSample2Test.java
@@ -5,17 +5,14 @@
 @Test(sequential = true)

 public class SequentialSample2Test extends BaseSequentialSample {

   

-  @Test

   public void f1() {

     addId("SequentialSample2Test.f1()", Thread.currentThread().getId());

   }

   

-  @Test

   public void f2() {

     addId("SequentialSample2Test.f2()", Thread.currentThread().getId());

   }

   

-  @Test

   public void f3() {

     addId("SequentialSample2Test.f3()", Thread.currentThread().getId());

   }  

diff --git a/test/src/test/thread/SequentialSample3Test.java b/test/src/test/thread/SequentialSample3Test.java
index 578c406..94db51c 100644
--- a/test/src/test/thread/SequentialSample3Test.java
+++ b/test/src/test/thread/SequentialSample3Test.java
@@ -5,17 +5,14 @@
 @Test(sequential = true)

 public class SequentialSample3Test extends BaseSequentialSample {

   

-  @Test

   public void f1() {

     addId("SequentialSample3Test.f1()", Thread.currentThread().getId());

   }

   

-  @Test // (dependsOnMethods = "f1")

   public void f2() {

     addId("SequentialSample3Test.f2()", Thread.currentThread().getId());

   }

   

-  @Test // (dependsOnMethods = "f2")

   public void f3() {

     addId("SequentialSample3Test.f3()", Thread.currentThread().getId());

   }  

diff --git a/test/src/test/thread/SequentialSampleTest.java b/test/src/test/thread/SequentialSampleTest.java
index cba2a24..d509faf 100644
--- a/test/src/test/thread/SequentialSampleTest.java
+++ b/test/src/test/thread/SequentialSampleTest.java
@@ -5,17 +5,14 @@
 @Test(sequential = true)

 public class SequentialSampleTest extends BaseSequentialSample {

   

-  @Test

   public void f1() {

     addId("SequentialSampleTest.f1()", Thread.currentThread().getId());

   }

   

-  @Test

   public void f2() {

     addId("SequentialSampleTest.f2()", Thread.currentThread().getId());

   }

   

-  @Test

   public void f3() {

     addId("SequentialSampleTest.f3()", Thread.currentThread().getId());

   }  

diff --git a/test/src/test/thread/SequentialTest.java b/test/src/test/thread/SequentialTest.java
index c7cdd68..ce10534 100644
--- a/test/src/test/thread/SequentialTest.java
+++ b/test/src/test/thread/SequentialTest.java
@@ -26,11 +26,35 @@
     verifySequential(3);

   }    

 

-  public void verifySequential(int threadCount) {

-    runTest(threadCount, "test.thread.SequentialSampleTest",

-        "test.thread.SequentialSample2Test", "test.thread.SequentialSample3Test");

+  @Test

+  public void verifySingleThreaded1() {

+    verifySingleThreaded(1);

+  }    

+

+  @Test

+  public void verifySingleThreaded2() {

+    verifySingleThreaded(2);

   }

   

+  @Test

+  public void verifySingleThreaded3() {

+    verifySingleThreaded(3);

+  }

+

+  public void verifySequential(int threadCount) {

+    runTest(threadCount,

+        SequentialSampleTest.class.getName(),

+        SequentialSample2Test.class.getName(),

+        SequentialSample3Test.class.getName());

+  }

+  

+  public void verifySingleThreaded(int threadCount) {

+    runTest(threadCount, 

+        SingleThreadedSampleTest.class.getName(),

+        SingleThreadedSample2Test.class.getName(),

+        SingleThreadedSample3Test.class.getName());

+  }

+

   private void runTest(int threadCount, String... classes) {

     Helper.reset();

 

diff --git a/test/src/test/thread/SingleThreadedSample2Test.java b/test/src/test/thread/SingleThreadedSample2Test.java
new file mode 100644
index 0000000..c6e4c41
--- /dev/null
+++ b/test/src/test/thread/SingleThreadedSample2Test.java
@@ -0,0 +1,23 @@
+package test.thread;

+

+import org.testng.annotations.Test;

+

+@Test(singleThreaded = true)

+public class SingleThreadedSample2Test extends BaseSequentialSample {

+  

+  @Test

+  public void f1() {

+    addId("SingleThreadedSample2Test.f1()", Thread.currentThread().getId());

+  }

+  

+  @Test

+  public void f2() {

+    addId("SingleThreadedSample2Test.f2()", Thread.currentThread().getId());

+  }

+  

+  @Test

+  public void f3() {

+    addId("SingleThreadedSample2Test.f3()", Thread.currentThread().getId());

+  }  

+

+}

diff --git a/test/src/test/thread/SingleThreadedSample3Test.java b/test/src/test/thread/SingleThreadedSample3Test.java
new file mode 100644
index 0000000..dbc2e52
--- /dev/null
+++ b/test/src/test/thread/SingleThreadedSample3Test.java
@@ -0,0 +1,23 @@
+package test.thread;

+

+import org.testng.annotations.Test;

+

+@Test(singleThreaded = true)

+public class SingleThreadedSample3Test extends BaseSequentialSample {

+  

+  @Test

+  public void f1() {

+    addId("SingleThreadedSample3Test.f1()", Thread.currentThread().getId());

+  }

+  

+  @Test // (dependsOnMethods = "f1")

+  public void f2() {

+    addId("SingleThreadedSample3Test.f2()", Thread.currentThread().getId());

+  }

+  

+  @Test // (dependsOnMethods = "f2")

+  public void f3() {

+    addId("SingleThreadedSample3Test.f3()", Thread.currentThread().getId());

+  }  

+

+}

diff --git a/test/src/test/thread/SingleThreadedSampleTest.java b/test/src/test/thread/SingleThreadedSampleTest.java
new file mode 100644
index 0000000..1e3b7db
--- /dev/null
+++ b/test/src/test/thread/SingleThreadedSampleTest.java
@@ -0,0 +1,23 @@
+package test.thread;

+

+import org.testng.annotations.Test;

+

+@Test(singleThreaded = true)

+public class SingleThreadedSampleTest extends BaseSequentialSample {

+  

+  @Test

+  public void f1() {

+    addId("SingleThreadedSampleTest.f1()", Thread.currentThread().getId());

+  }

+  

+  @Test

+  public void f2() {

+    addId("SingleThreadedSampleTest.f2()", Thread.currentThread().getId());

+  }

+  

+  @Test

+  public void f3() {

+    addId("SingleThreadedSampleTest.f3()", Thread.currentThread().getId());

+  }  

+

+}

diff --git a/test/testng-single.xml b/test/testng-single.xml
index 2d4c5ff..2078a91 100644
--- a/test/testng-single.xml
+++ b/test/testng-single.xml
@@ -1,6 +1,6 @@
 <!DOCTYPE suite SYSTEM "http://beust.com/testng/testng-1.0.dtd" >
   
-<suite name="SingleSuite" verbose="2" parallel="false" thread-count="4"
+<suite name="SingleSuite" verbose="1" parallel="false" thread-count="4"
     data-provider-thread-count="3">
 
   <parameter name="n" value="42" />
@@ -26,11 +26,11 @@
     </groups>
     <parameter name="count" value="10"/>
     <classes>
-      <class name="test.tmp.TestFactory" />
+      <class name="test.thread.SequentialTest" />
 <!-- 
+      <class name="test.tmp.TestFactory" />
       <class name="test.tmp.A" />
       <class name="test.thread.MultiThreadedDependentTest" />
-      <class name="test.thread.FactoryTest" />
       <class name="test.tmp.B" />
       <class name="test.thread.MultiThreadedDependentTest" />
       <class name="test.thread.FactoryTest" />