001: package test.reports;
002:
003: import java.io.File;
004: import java.util.Arrays;
005:
006: import org.testng.Assert;
007: import org.testng.TestNG;
008: import org.testng.xml.XmlSuite;
009: import org.testng.xml.XmlTest;
010:
011: import test.TestHelper;
012:
013: public class ReportTest {
014:
015: /**
016: * @testng.test
017: */
018: public void verifyIndex() {
019: String suiteName = "VerifyIndexSuite";
020: File outputDir = TestHelper.createRandomDirectory();
021: XmlSuite suite = TestHelper.createSuite("test.reports.A",
022: suiteName);
023:
024: File f = new File(outputDir.getAbsolutePath()
025: + File.separatorChar + suiteName + File.separatorChar
026: + "index.html");
027: f.delete();
028: Assert.assertFalse(f.exists());
029:
030: TestNG tng = TestHelper.createTestNG(suite, outputDir
031: .getAbsolutePath());
032: tng.run();
033: Assert.assertTrue(f.exists());
034:
035: f.deleteOnExit();
036: }
037:
038: /**
039: * @testng.test
040: */
041: public void directoryShouldBeSuiteName() {
042: String outputDirectory = TestHelper.createRandomDirectory()
043: .getAbsolutePath();
044:
045: TestNG testng = new TestNG();
046: testng.setVerbose(0);
047: testng.setOutputDirectory(outputDirectory);
048:
049: XmlSuite xmlSuite = new XmlSuite();
050: String suiteName = "ReportTestSuite1";
051: xmlSuite.setName(suiteName);
052:
053: XmlTest xmlTest = new XmlTest(xmlSuite);
054: xmlTest.setName("Test1");
055:
056: testng.setXmlSuites(Arrays.asList(new XmlSuite[] { xmlSuite }));
057:
058: File indexFile = new File(outputDirectory + File.separatorChar
059: + suiteName + File.separatorChar + "index.html");
060: indexFile.delete();
061: Assert.assertFalse(indexFile.exists());
062:
063: testng.run();
064:
065: Assert.assertTrue(indexFile.exists(), "Expected to find file:"
066: + indexFile);
067: }
068:
069: /**
070: * @testng.test
071: */
072: public void oneDirectoryPerSuite() {
073: XmlSuite xmlSuiteA = TestHelper.createSuite("test.reports.A",
074: "ReportSuiteA");
075: XmlSuite xmlSuiteB = TestHelper.createSuite("test.reports.B",
076: "ReportSuiteB");
077: TestNG testng = TestHelper.createTestNG();
078: testng.setXmlSuites(Arrays.asList(new XmlSuite[] { xmlSuiteA,
079: xmlSuiteB }));
080:
081: String outputDir = testng.getOutputDirectory();
082: File f1 = new File(outputDir + File.separatorChar
083: + xmlSuiteA.getName() + File.separatorChar
084: + "index.html");
085:
086: File f2 = new File(outputDir + File.separatorChar
087: + xmlSuiteB.getName() + File.separatorChar
088: + "index.html");
089:
090: Assert.assertFalse(f1.exists());
091: Assert.assertFalse(f2.exists());
092:
093: testng.run();
094:
095: Assert.assertTrue(f1.exists());
096: Assert.assertTrue(f2.exists());
097: }
098:
099: /**
100: * @testng.test
101: */
102: public void shouldHonorSuiteName() {
103: TestNG testng = TestHelper.createTestNG();
104: testng.setSourcePath("./test-14/src;src");
105: testng.setAnnotations(TestNG.JAVADOC_ANNOTATION_TYPE);
106: testng.setTestClasses(new Class[] { A.class, B.class });
107: String outputDir = testng.getOutputDirectory();
108: String dirA = outputDir + File.separatorChar + "SuiteA-JDK14";
109: File fileA = new File(dirA);
110: String dirB = outputDir + File.separatorChar + "SuiteB-JDK14";
111: File fileB = new File(dirB);
112:
113: Assert.assertFalse(fileA.exists());
114: Assert.assertFalse(fileB.exists());
115: testng.run();
116: Assert.assertTrue(fileA.exists(), fileA + " wasn't created");
117: Assert.assertTrue(fileB.exists(), fileB + " wasn't created");
118: }
119: }
|