1 package test.factory;
2 
3 import org.testng.annotations.Test;
4 
5 public class MyTest {
6   private int i;
7 
8   // in this test, our default constructor sets s to a value that will cause a failure
9   // the valid test instances should come from the factory
MyTest()10   public MyTest() {
11     i = 0;
12   }
13 
MyTest(int i)14   public MyTest(int i) {
15     this.i = i;
16   }
17 
18   @Test(groups = "MyTest")
testMethod()19   public void testMethod() {
20     FactoryInSeparateClass.addToSum(i);
21     //    assert i > 0 : "MyTest was not constructed with correct params";
22     assert (i != 0) : "My test was not created by the factory";
23   }
24 
25   @Test(dependsOnGroups = "testMethodOnFactoryClass")
verifyThatTestMethodOnFactoryClassWasRun()26   public void verifyThatTestMethodOnFactoryClassWasRun() {
27     assert FactoryInSeparateClass.wasRun() : "Test method on factory class wasn't run";
28   }
29 
30 }