package forceworkbench.tests;

public class DescribeTests extends WorkbenchSeleneseBaseTest {
		
	public void setUp() throws Exception{
		super.setUp();
		loginWithConfig();
	}

	public void testDescribeAllObjects()throws Exception{
		selenium.open("describe.php");			
		selenium.waitForPageToLoad(WAIT_TIMEOUT);
		assertTrue(selenium.isTextPresent("Choose an object to describe:"));
		assertFalse(selenium.isTextPresent("Expand All | Collapse All"));

		for(String type : selenium.getSelectOptions("default_object")){			
			if(type.equalsIgnoreCase("")) continue;
			
			selenium.select("default_object", "label=" + type);
			selenium.waitForPageToLoad(WAIT_TIMEOUT);

            assertTrue(selenium.isTextPresent("Choose an object to describe:"));
			assertTrue(selenium.isTextPresent("Expand All | Collapse All"));
			assertTrue(selenium.isTextPresent("Attributes"));
			assertTrue(selenium.isTextPresent("Fields ("));
			assertEquals(type, selenium.getSelectedValue("default_object"));
			assertNoPhpErrors();
		}
	}
	
}

@@ -311,32 +311,98 @@
 );%0A%09%09assertTrue(
+%22Instructions should appear before selecting a type to describe%22, 
 selenium.isTextP
@@ -457,16 +457,83 @@
 rtFalse(
+%22Tree controls should appear before selecting a type to describe%22, 
 selenium
@@ -811,32 +811,81 @@
      assertTrue(
+%22Instructions should appear for %5B%22 + type + %22%5D%22, 
 selenium.isTextP
@@ -932,32 +932,82 @@
 ;%0A%09%09%09assertTrue(
+%22Tree controls should appear for %5B%22 + type + %22%5D%22, 
 selenium.isTextP
@@ -1050,32 +1050,79 @@
 ;%0A%09%09%09assertTrue(
+%22Attributes should appear for %5B%22 + type + %22%5D%22, 
 selenium.isTextP
@@ -1158,16 +1158,59 @@
 ertTrue(
+%22Fields should appear for %5B%22 + type + %22%5D%22, 
 selenium
@@ -1254,16 +1254,66 @@
 tEquals(
+%22Default object should be set to %5B%22 + type + %22%5D%22, 
 type, se

add assertion messages to describe tests