From 09664e3b37e092fb568485b968de54ba4b26629c Mon Sep 17 00:00:00 2001 From: Heng Sin Low Date: Thu, 13 Dec 2012 17:22:56 +0800 Subject: [PATCH] IDEMPIERE-92 - Integrate Selenium. Improve support for Combobox. Reorganize and reformat test suite for zk. Added test case for the missing field translation tab bug. Added support for selection of tab. --- fitnesse/FitNesseRoot/FrontPage/content.txt | 5 +- .../MissingFieldTranslationTab/content.txt | 27 +++ .../properties.xml | 0 .../ZkGardenAdminLogin}/content.txt | 21 +-- .../ZkGardenAdminLogin}/properties.xml | 0 .../ZkSystemAdminLogin}/content.txt | 31 ++-- .../ZkSuite/ZkSystemAdminLogin/properties.xml | 12 ++ fitnesse/FitNesseRoot/ZkSuite/content.txt | 1 + fitnesse/FitNesseRoot/ZkSuite/properties.xml | 12 ++ .../20121127124208_0_0_0_1.xml | 62 ------- .../20121127124241_0_0_0_1.xml | 62 ------- .../20121127130309_0_0_0_3.xml | 168 ------------------ .../20121127124138_0_0_0_1.xml | 62 ------- .../20121127130013_2_0_0_0.xml | 62 ------- .../20121127130051_0_0_0_1.xml | 69 ------- .../20121127121927_0_0_0_1.xml | 93 ---------- .../20121127122140_0_0_0_1.xml | 93 ---------- .../20121127122551_0_3_0_1.xml | 132 -------------- .../20121127122627_0_3_0_1.xml | 132 -------------- .../20121127123937_3_0_0_0.xml | 105 ----------- .../20121127143715_3_0_0_0.xml | 105 ----------- .../20121127150334_3_0_0_0.xml | 105 ----------- .../20121127160556_3_0_0_0.xml | 105 ----------- .../20121127130353_2_1_0_1.xml | 123 ------------- .../20121127130420_2_1_0_1.xml | 123 ------------- .../20121127142851_2_1_0_1.xml | 123 ------------- .../20121127120507_0_0_0_1.xml | 83 --------- .../20121127120752_0_0_0_1.xml | 83 --------- .../20121127122728_0_1_0_1.xml | 81 --------- .../20121127123229_0_1_0_1.xml | 81 --------- .../20121127123249_0_1_0_1.xml | 81 --------- .../20121127123406_0_1_0_1.xml | 81 --------- .../20121127123925_2_0_0_0.xml | 54 ------ .../20121127142951_2_0_0_0.xml | 54 ------ .../20121127142938_2_0_0_0.xml | 54 ------ .../adempiere/webui/AdempiereIdGenerator.java | 21 ++- .../adempiere/webui/adwindow/DetailPane.java | 3 +- .../adempiere/webui/component/Combobox.java | 11 +- .../webui/desktop/TabbedDesktop.java | 4 +- .../org/adempiere/webui/panel/RolePanel.java | 16 +- .../adempiere/webui/part/WindowContainer.java | 1 + org.idempiere.fitnesse.server/.classpath | 2 +- .../src/fitlibrary/zk/ZkFixture.java | 75 +++++++- .../src/test/AbstractTestCase.java | 84 ++++++++- .../src/test/ChangeRoleTest.java | 4 +- .../src/test/SelectTabTest.java | 27 +++ 46 files changed, 282 insertions(+), 2451 deletions(-) create mode 100644 fitnesse/FitNesseRoot/ZkSuite/MissingFieldTranslationTab/content.txt rename fitnesse/FitNesseRoot/{ZkMultiClientLogin => ZkSuite/MissingFieldTranslationTab}/properties.xml (100%) rename fitnesse/FitNesseRoot/{ZkSingleClientLogin => ZkSuite/ZkGardenAdminLogin}/content.txt (88%) rename fitnesse/FitNesseRoot/{ZkSingleClientLogin => ZkSuite/ZkGardenAdminLogin}/properties.xml (100%) rename fitnesse/FitNesseRoot/{ZkMultiClientLogin => ZkSuite/ZkSystemAdminLogin}/content.txt (60%) create mode 100644 fitnesse/FitNesseRoot/ZkSuite/ZkSystemAdminLogin/properties.xml create mode 100644 fitnesse/FitNesseRoot/ZkSuite/content.txt create mode 100644 fitnesse/FitNesseRoot/ZkSuite/properties.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127124208_0_0_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127124241_0_0_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127130309_0_0_0_3.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/CommonTests.LoginGardenAdmin/20121127124138_0_0_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/CommonTests.LoginGardenAdmin/20121127130013_2_0_0_0.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/CommonTests.ValidateClientSetOnAvgInv/20121127130051_0_0_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127121927_0_0_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127122140_0_0_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127122551_0_3_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127122627_0_3_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127123937_3_0_0_0.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127143715_3_0_0_0.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127150334_3_0_0_0.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127160556_3_0_0_0.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127130353_2_1_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127130420_2_1_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127142851_2_1_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127120507_0_0_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127120752_0_0_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127122728_0_1_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123229_0_1_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123249_0_1_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123406_0_1_0_1.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123925_2_0_0_0.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127142951_2_0_0_0.xml delete mode 100644 fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginSystem/20121127142938_2_0_0_0.xml create mode 100644 org.idempiere.ui.zk.selenium/src/test/SelectTabTest.java diff --git a/fitnesse/FitNesseRoot/FrontPage/content.txt b/fitnesse/FitNesseRoot/FrontPage/content.txt index ff78554d13..c60c4db593 100644 --- a/fitnesse/FitNesseRoot/FrontPage/content.txt +++ b/fitnesse/FitNesseRoot/FrontPage/content.txt @@ -6,10 +6,7 @@ Suites: IdempiereSuite AvgCostSuite - -Zk Examples: -ZkSingleClientLogin -ZkMultiClientLogin +ZkSuite | '''To Learn More...'''| diff --git a/fitnesse/FitNesseRoot/ZkSuite/MissingFieldTranslationTab/content.txt b/fitnesse/FitNesseRoot/ZkSuite/MissingFieldTranslationTab/content.txt new file mode 100644 index 0000000000..ad71b5248d --- /dev/null +++ b/fitnesse/FitNesseRoot/ZkSuite/MissingFieldTranslationTab/content.txt @@ -0,0 +1,27 @@ +!contents +'''IDEMPIERE-369 Master Detail Improvement''' +Bugs: Field translation tab not show + +!include -c ZkSystemAdminLogin +'''Open Window, Tab & Field''' +|''combobox''|$treeSearchCombo|''select item''|!-Window, Tab & Field-!| +|''wait response''| +|''click''|$findWindow_1 $simpleSearch $btnOk| + +|''wait response''| + +'''Edit Tab''' +|''element exists''|$Window__Tab___Field_1 $Window $detailPane @tab[label="Tab"]| +|''click''|$Window__Tab___Field_1 $Window $detailPane $BtnEdit| + +|''wait response''| + +'''Edit Field''' +|''element exists''|$Window__Tab___Field_1 $Tab $detailPane @tab[label="Field"]| +|''element exists''|$Window__Tab___Field_1 $Tab $detailPane @tab[label="Field Translation"]| +|''click''|$Window__Tab___Field_1 $Tab $detailPane $BtnEdit| + +|''wait response''| + +'''Verify Field Translation Detail Tab Exists''' +|''element exists''|$Window__Tab___Field_1 $Field $detailPane @tab[label="Field Translation"]| diff --git a/fitnesse/FitNesseRoot/ZkMultiClientLogin/properties.xml b/fitnesse/FitNesseRoot/ZkSuite/MissingFieldTranslationTab/properties.xml similarity index 100% rename from fitnesse/FitNesseRoot/ZkMultiClientLogin/properties.xml rename to fitnesse/FitNesseRoot/ZkSuite/MissingFieldTranslationTab/properties.xml diff --git a/fitnesse/FitNesseRoot/ZkSingleClientLogin/content.txt b/fitnesse/FitNesseRoot/ZkSuite/ZkGardenAdminLogin/content.txt similarity index 88% rename from fitnesse/FitNesseRoot/ZkSingleClientLogin/content.txt rename to fitnesse/FitNesseRoot/ZkSuite/ZkGardenAdminLogin/content.txt index 2de9ba75e5..5e813cb039 100644 --- a/fitnesse/FitNesseRoot/ZkSingleClientLogin/content.txt +++ b/fitnesse/FitNesseRoot/ZkSuite/ZkGardenAdminLogin/content.txt @@ -1,35 +1,28 @@ !contents - !|fitlibrary.zk.ZkFixture| |''start spider with''|firefox| - |''shutdown browser automatically''|false| - |''get url''|http://localhost:8080/webui/index.zul| +'''Login''' |''with''|$loginPanel $txtUserId|''set text''|!-GardenAdmin-!| - |''with''|$loginPanel $txtPassword|''set text''|!-GardenAdmin-!| - |''combobox''|$loginPanel $lstLanguage|''select item''|English| - |''with''|$loginPanel $chkSelectRole|''select''|true| - |''click''|$loginPanel $Ok| -|checking timeout|2000| +|''wait response''| + +'''Select Role''' |''element''|$rolePanel $lstClient|''exists''| - |''element invisible''|$rolePanel $lstClient| - |''combobox''|$rolePanel $lstRole|''select item''|!-GardenWorld Admin-!| - |''combobox''|$rolePanel $lstOrganisation|''select item''|HQ| - |''click''|$rolePanel $Ok| -|checking timeout|3000| -|element|$loginUserAndRole|exists| +|''wait response''| +'''Verify login user name and role''' +|element|$loginUserAndRole|exists| |''text of''|$loginUserAndRole|is|!-GardenAdmin@GardenWorld.HQ/GardenWorld Admin-!| diff --git a/fitnesse/FitNesseRoot/ZkSingleClientLogin/properties.xml b/fitnesse/FitNesseRoot/ZkSuite/ZkGardenAdminLogin/properties.xml similarity index 100% rename from fitnesse/FitNesseRoot/ZkSingleClientLogin/properties.xml rename to fitnesse/FitNesseRoot/ZkSuite/ZkGardenAdminLogin/properties.xml diff --git a/fitnesse/FitNesseRoot/ZkMultiClientLogin/content.txt b/fitnesse/FitNesseRoot/ZkSuite/ZkSystemAdminLogin/content.txt similarity index 60% rename from fitnesse/FitNesseRoot/ZkMultiClientLogin/content.txt rename to fitnesse/FitNesseRoot/ZkSuite/ZkSystemAdminLogin/content.txt index a0bde946fc..e19d42f1cc 100644 --- a/fitnesse/FitNesseRoot/ZkMultiClientLogin/content.txt +++ b/fitnesse/FitNesseRoot/ZkSuite/ZkSystemAdminLogin/content.txt @@ -1,37 +1,28 @@ !contents - !|fitlibrary.zk.ZkFixture| - |''start spider with''|firefox| - |''shutdown browser automatically''|false| - |''get url''|http://localhost:8080/webui/index.zul| +'''Login''' |''with''|$loginPanel $txtUserId|''set text''|!-SuperUser-!| - |''with''|$loginPanel $txtPassword|''set text''|!-System-!| - |''combobox''|$loginPanel $lstLanguage|''select item''|English| - |''with''|$loginPanel $chkSelectRole|''select''|true| - |''click''|$loginPanel $Ok| -|checking timeout|2000| +|''wait response''| + +'''Select Role''' |''element''|$rolePanel $lstClient|''exists''| - |''element visible''|$rolePanel $lstClient| - -|''combobox''|$rolePanel $lstClient|''select item''|!-GardenWorld-!| - -|''combobox''|$rolePanel $lstRole|''select item''|!-GardenWorld Admin-!| - -|''combobox''|$rolePanel $lstOrganisation|''select item''|HQ| - +|''combobox''|$rolePanel $lstClient|''select item''|!-System-!| +|''combobox''|$rolePanel $lstRole|''select item''|!-System Administrator-!| +|''combobox''|$rolePanel $lstOrganisation|''select item''|*| |''click''|$rolePanel $Ok| -|checking timeout|3000| -|element|$loginUserAndRole|exists| +|''wait response''| -|''text of''|$loginUserAndRole|is|!-SuperUser@GardenWorld.HQ/GardenWorld Admin-!| +'''Verify login user and role''' +|element|$loginUserAndRole|exists| +|''text of''|$loginUserAndRole|is|!-SuperUser@System.*/System Administrator-!| diff --git a/fitnesse/FitNesseRoot/ZkSuite/ZkSystemAdminLogin/properties.xml b/fitnesse/FitNesseRoot/ZkSuite/ZkSystemAdminLogin/properties.xml new file mode 100644 index 0000000000..3e87512357 --- /dev/null +++ b/fitnesse/FitNesseRoot/ZkSuite/ZkSystemAdminLogin/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + + true + true + diff --git a/fitnesse/FitNesseRoot/ZkSuite/content.txt b/fitnesse/FitNesseRoot/ZkSuite/content.txt new file mode 100644 index 0000000000..f0e96e5bbc --- /dev/null +++ b/fitnesse/FitNesseRoot/ZkSuite/content.txt @@ -0,0 +1 @@ +!contents \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/ZkSuite/properties.xml b/fitnesse/FitNesseRoot/ZkSuite/properties.xml new file mode 100644 index 0000000000..e475416cd6 --- /dev/null +++ b/fitnesse/FitNesseRoot/ZkSuite/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + + true + true + diff --git a/fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127124208_0_0_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127124208_0_0_0_1.xml deleted file mode 100644 index e6a53f391a..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127124208_0_0_0_1.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - v20111026 - CreateProduct - - - 0 - 0 - 0 - 1 - - 4 - - - Create Record
Could not find fixture: CreateRecord. - - - *Table* - M_Product - - - Name - @RandomName@ - - - Value - @RandomName@ - - - C_UOM_ID - @Ref=C_UOM[Name='Each'].C_UOM_ID - - - M_Product_Category_ID - @Ref=M_Product_Category[Name='Standard' and AD_Client_ID=@AD_Client_ID@].M_Product_Category_ID - - - C_TaxCategory_ID - @Ref=C_TaxCategory[Name='Standard' and AD_Client_ID=@AD_Client_ID@].C_TaxCategory_ID - - - *Save* - - - -]]>
- CreateProduct - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127124241_0_0_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127124241_0_0_0_1.xml deleted file mode 100644 index 5c713d215e..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127124241_0_0_0_1.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - v20111026 - CreateProduct - - - 0 - 0 - 0 - 1 - - 6 - - - Create Record
Could not find fixture: CreateRecord. - - - *Table* - M_Product - - - Name - @RandomName@ - - - Value - @RandomName@ - - - C_UOM_ID - @Ref=C_UOM[Name='Each'].C_UOM_ID - - - M_Product_Category_ID - @Ref=M_Product_Category[Name='Standard' and AD_Client_ID=@AD_Client_ID@].M_Product_Category_ID - - - C_TaxCategory_ID - @Ref=C_TaxCategory[Name='Standard' and AD_Client_ID=@AD_Client_ID@].C_TaxCategory_ID - - - *Save* - - - -]]>
- CreateProduct - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127130309_0_0_0_3.xml b/fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127130309_0_0_0_3.xml deleted file mode 100644 index 6b67193b54..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/CommonTests.CreateProduct/20121127130309_0_0_0_3.xml +++ /dev/null @@ -1,168 +0,0 @@ - - - v20111026 - CreateProduct - - - 0 - 0 - 0 - 3 - - 7 - - - Create Record
org.adempiere.exceptions.DBException: org.postgresql.util.PSQLException: ERROR: syntax error at end of input - Position: 59 - at org.compiere.util.DB.getSQLValueStringEx(DB.java:1448) - at org.idempiere.fitnesse.fixture.Util.evaluate(Util.java:120) - at org.idempiere.fitnesse.fixture.CreateRecord.doStaticTable(CreateRecord.java:134) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -Caused by: org.postgresql.util.PSQLException: ERROR: syntax error at end of input - Position: 59 - at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2157) - at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1886) - at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255) - at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:555) - at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:417) - at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:302) - at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:76) - at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source) - at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.lang.reflect.Method.invoke(Method.java:616) - at org.compiere.db.StatementProxy.invoke(StatementProxy.java:125) - at $Proxy0.executeQuery(Unknown Source) - at org.compiere.util.DB.getSQLValueStringEx(DB.java:1440) - ... 27 more -
- - - *Table* - M_Product - - - Name - @RandomName@

java.lang.IllegalArgumentException: Name is mandatory. - at org.compiere.model.PO.set_Value(PO.java:751) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:1009) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:978) - at org.idempiere.fitnesse.fixture.CreateRecord.doStaticTable(CreateRecord.java:176) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
- - - Value - @RandomName@

java.lang.IllegalArgumentException: Value is mandatory. - at org.compiere.model.PO.set_Value(PO.java:751) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:1009) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:978) - at org.idempiere.fitnesse.fixture.CreateRecord.doStaticTable(CreateRecord.java:176) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
- - - C_UOM_ID - @Ref=C_UOM[Name='Each'].C_UOM_ID
100 - - - M_Product_Category_ID - @Ref=M_Product_Category[Name='Standard' and AD_Client_ID=@AD_Client_ID@].M_Product_Category_ID - - - C_TaxCategory_ID - @Ref=C_TaxCategory[Name='Standard' and AD_Client_ID=@AD_Client_ID@].C_TaxCategory_ID - - - *Save* - - - -]]>
- CreateProduct - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/CommonTests.LoginGardenAdmin/20121127124138_0_0_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/CommonTests.LoginGardenAdmin/20121127124138_0_0_0_1.xml deleted file mode 100644 index 6376c42d91..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/CommonTests.LoginGardenAdmin/20121127124138_0_0_0_1.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - v20111026 - LoginGardenAdmin - - - 0 - 0 - 0 - 1 - - 4 - - - Login
Could not find fixture: Login. - - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_Client_ID - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID - - - AD_Org_ID - @Ref=AD_Org[Name='HQ'].AD_Org_ID - - - M_Warehouse_ID - @Ref=M_Warehouse[Name='HQ Warehouse'].M_Warehouse_ID - - - *Login* - - - -]]>
- LoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/CommonTests.LoginGardenAdmin/20121127130013_2_0_0_0.xml b/fitnesse/FitNesseRoot/files/testResults/CommonTests.LoginGardenAdmin/20121127130013_2_0_0_0.xml deleted file mode 100644 index 5ba58d5f91..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/CommonTests.LoginGardenAdmin/20121127130013_2_0_0_0.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - v20111026 - LoginGardenAdmin - - - 2 - 0 - 0 - 0 - - 7 - - - Login - - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_Client_ID - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID
11 - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID
102 - - - AD_Org_ID - @Ref=AD_Org[Name='HQ'].AD_Org_ID
11 - - - M_Warehouse_ID - @Ref=M_Warehouse[Name='HQ Warehouse'].M_Warehouse_ID
103 - - - *Login* - - - -]]>
- LoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/CommonTests.ValidateClientSetOnAvgInv/20121127130051_0_0_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/CommonTests.ValidateClientSetOnAvgInv/20121127130051_0_0_0_1.xml deleted file mode 100644 index c12b611336..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/CommonTests.ValidateClientSetOnAvgInv/20121127130051_0_0_0_1.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - v20111026 - ValidateClientSetOnAvgInv - - - 0 - 0 - 0 - 1 - - 3 - - - Assert Variable
java.lang.IllegalArgumentException: No SQL - at org.compiere.util.DB.prepareStatement(DB.java:758) - at org.compiere.util.DB.prepareStatement(DB.java:729) - at org.compiere.util.DB.getSQLValueStringEx(DB.java:1438) - at org.idempiere.fitnesse.fixture.Util.evaluate(Util.java:105) - at org.idempiere.fitnesse.fixture.AssertVariable.doStaticTable(AssertVariable.java:64) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
- - - I - @SQL=select costingmethod from c_acctschema where c_acctschema_id = (select c_acctschema1_id from ad_clientinfo where ad_client_id=@AD_Client_ID@) - - -]]>
- ValidateClientSetOnAvgInv - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127121927_0_0_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127121927_0_0_0_1.xml deleted file mode 100644 index 302c8ac4fe..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127121927_0_0_0_1.xml +++ /dev/null @@ -1,93 +0,0 @@ - - - v20111026 - QuickTest - - - 0 - 0 - 0 - 1 - - 10 - - - - - -  - Included page: TestLoginGardenAdmin (edit) - -

Check the inventory level before the document

- - - - - - - -
Set Variable
@InventoryLevelBefore@@SQL=SELECT SUM(s.qtyonhand) FROM m_storage s, m_locator l, m_warehouse w WHERE s.m_product_id=133 AND s.m_locator_id = l.m_locator_id AND l.m_warehouse_id=w.m_warehouse_id AND w.m_warehouse_id=103not logged in
-
Check the bp balance before the document

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
Read Record
*Table*C_bpartner
c_bpartner_id120
*Read*
actuallifetimevalue
so_creditused
totalopenbalancenot logged in
-]]>
- QuickTest - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127123937_3_0_0_0.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127123937_3_0_0_0.xml deleted file mode 100644 index 3357c392f6..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127123937_3_0_0_0.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - v20111026 - QuickTest - - - 3 - 0 - 0 - 0 - - 264 - - - - - -  - Included page: TestLoginGardenAdmin (edit) - - -

Check the inventory level before the document

- - - - - - - -
Set Variable
@InventoryLevelBefore@@SQL=SELECT SUM(s.qtyonhand) FROM m_storage s, m_locator l, m_warehouse w WHERE s.m_product_id=133 AND s.m_locator_id = l.m_locator_id AND l.m_warehouse_id=w.m_warehouse_id AND w.m_warehouse_id=103
61
-
Check the bp balance before the document

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
Read Record
*Table*C_bpartner
c_bpartner_id120
*Read*MBPartner[ID=120,Value=SeedFarm,Name=Seed Farm Inc.,Open=-2731.5]
actuallifetimevalue0
so_creditused0
totalopenbalance-2731.5
-]]>
- QuickTest - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127143715_3_0_0_0.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127143715_3_0_0_0.xml deleted file mode 100644 index f069b2926f..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127143715_3_0_0_0.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - v20111026 - QuickTest - - - 3 - 0 - 0 - 0 - - 15 - - - - - -  - Included page: TestLoginGardenAdmin (edit) - - -

Check the inventory level before the document

- - - - - - - -
Set Variable
@InventoryLevelBefore@@SQL=SELECT SUM(s.qtyonhand) FROM m_storage s, m_locator l, m_warehouse w WHERE s.m_product_id=133 AND s.m_locator_id = l.m_locator_id AND l.m_warehouse_id=w.m_warehouse_id AND w.m_warehouse_id=103
61
-
Check the bp balance before the document

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
Read Record
*Table*C_bpartner
c_bpartner_id120
*Read*MBPartner[ID=120,Value=SeedFarm,Name=Seed Farm Inc.,Open=-2731.5]
actuallifetimevalue0
so_creditused0
totalopenbalance-2731.5
-]]>
- QuickTest - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127150334_3_0_0_0.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127150334_3_0_0_0.xml deleted file mode 100644 index 8fcac73ccd..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127150334_3_0_0_0.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - v20111026 - QuickTest - - - 3 - 0 - 0 - 0 - - 10 - - - - - -  - Included page: TestLoginGardenAdmin (edit) - - -

Check the inventory level before the document

- - - - - - - -
Set Variable
@InventoryLevelBefore@@SQL=SELECT SUM(s.qtyonhand) FROM m_storage s, m_locator l, m_warehouse w WHERE s.m_product_id=133 AND s.m_locator_id = l.m_locator_id AND l.m_warehouse_id=w.m_warehouse_id AND w.m_warehouse_id=103
61
-
Check the bp balance before the document

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
Read Record
*Table*C_bpartner
c_bpartner_id120
*Read*MBPartner[ID=120,Value=SeedFarm,Name=Seed Farm Inc.,Open=-2731.5]
actuallifetimevalue0
so_creditused0
totalopenbalance-2731.5
-]]>
- QuickTest - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127160556_3_0_0_0.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127160556_3_0_0_0.xml deleted file mode 100644 index 142ab8e3de..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.QuickTest/20121127160556_3_0_0_0.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - v20111026 - QuickTest - - - 3 - 0 - 0 - 0 - - 17 - - - - - -  - Included page: TestLoginGardenAdmin (edit) - - -

Check the inventory level before the document

- - - - - - - -
Set Variable
@InventoryLevelBefore@@SQL=SELECT SUM(s.qtyonhand) FROM m_storage s, m_locator l, m_warehouse w WHERE s.m_product_id=133 AND s.m_locator_id = l.m_locator_id AND l.m_warehouse_id=w.m_warehouse_id AND w.m_warehouse_id=103
61
-
Check the bp balance before the document

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
Read Record
*Table*C_bpartner
c_bpartner_id120
*Read*MBPartner[ID=120,Value=SeedFarm,Name=Seed Farm Inc.,Open=-2731.5]
actuallifetimevalue0
so_creditused0
totalopenbalance-2731.5
-]]>
- QuickTest - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127130353_2_1_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127130353_2_1_0_1.xml deleted file mode 100644 index 02c04e3d01..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127130353_2_1_0_1.xml +++ /dev/null @@ -1,123 +0,0 @@ - - - v20111026 - TestCreateReference - - - 2 - 1 - 0 - 1 - - 4 -
- - - - -  - Included page: TestLoginSystem (edit) -
- - - - - - - - - - - - - - - - - - - - - - - -
Login
UserSuperUser
PasswordSystem
AD_ClIEnT_id0
AD_Role_id0
*Login*
-
-
-

- - - - - - - - - - - - - - - - - - - - - - - -
Create Record
*Table*AD_Reference
NameFitnesse Test
ValidationTypeY
java.lang.IllegalArgumentException: ValidationType Invalid value - Y - Reference_ID=2 - D - L - T - at org.compiere.model.PO.set_Value(PO.java:826) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:1009) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:978) - at org.idempiere.fitnesse.fixture.CreateRecord.doStaticTable(CreateRecord.java:176) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretFollowingTables(Fixture.java:119) - at fit.Fixture.interpretTables(Fixture.java:105) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
invalidcolumnY
*Save*
-]]>
- TestCreateReference - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127130420_2_1_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127130420_2_1_0_1.xml deleted file mode 100644 index 8420722096..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127130420_2_1_0_1.xml +++ /dev/null @@ -1,123 +0,0 @@ - - - v20111026 - TestCreateReference - - - 2 - 1 - 0 - 1 - - 17 -
- - - - -  - Included page: TestLoginSystem (edit) -
- - - - - - - - - - - - - - - - - - - - - - - -
Login
UserSuperUser
PasswordSystem
AD_ClIEnT_id0
AD_Role_id0
*Login*
-
-
-

- - - - - - - - - - - - - - - - - - - - - - - -
Create Record
*Table*AD_Reference
NameFitnesse Test
ValidationTypeY
java.lang.IllegalArgumentException: ValidationType Invalid value - Y - Reference_ID=2 - D - L - T - at org.compiere.model.PO.set_Value(PO.java:826) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:1009) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:978) - at org.idempiere.fitnesse.fixture.CreateRecord.doStaticTable(CreateRecord.java:176) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretFollowingTables(Fixture.java:119) - at fit.Fixture.interpretTables(Fixture.java:105) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
invalidcolumnY
*Save*
-]]>
- TestCreateReference - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127142851_2_1_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127142851_2_1_0_1.xml deleted file mode 100644 index 7bb2d30c7a..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestCreateReference/20121127142851_2_1_0_1.xml +++ /dev/null @@ -1,123 +0,0 @@ - - - v20111026 - TestCreateReference - - - 2 - 1 - 0 - 1 - - 6 -
- - - - -  - Included page: TestLoginSystem (edit) -
- - - - - - - - - - - - - - - - - - - - - - - -
Login
UserSuperUser
PasswordSystem
AD_ClIEnT_id0
AD_Role_id0
*Login*
-
-
-

- - - - - - - - - - - - - - - - - - - - - - - -
Create Record
*Table*AD_Reference
NameFitnesse Test
ValidationTypeY
java.lang.IllegalArgumentException: ValidationType Invalid value - Y - Reference_ID=2 - D - L - T - at org.compiere.model.PO.set_Value(PO.java:826) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:1009) - at org.compiere.model.PO.set_ValueOfColumnReturningBoolean(PO.java:978) - at org.idempiere.fitnesse.fixture.CreateRecord.doStaticTable(CreateRecord.java:176) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretFollowingTables(Fixture.java:119) - at fit.Fixture.interpretTables(Fixture.java:105) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
invalidcolumnY
*Save*
-]]>
- TestCreateReference - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127120507_0_0_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127120507_0_0_0_1.xml deleted file mode 100644 index f625e84555..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127120507_0_0_0_1.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - v20111026 - TestLoginGardenAdmin - - - 0 - 0 - 0 - 1 - - 13 - - - Login
java.lang.UnsupportedOperationException: Missing Context #AD_Client_ID - at org.compiere.util.Login.getOrgs(Login.java:566) - at org.idempiere.fitnesse.fixture.Login.modelLogin(Login.java:172) - at org.idempiere.fitnesse.fixture.Login.doStaticTable(Login.java:109) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
- - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_ClIEnT_id - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID
11 - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID
102 - - - *Login* - - - -]]>
- TestLoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127120752_0_0_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127120752_0_0_0_1.xml deleted file mode 100644 index cd5eef679d..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127120752_0_0_0_1.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - v20111026 - TestLoginGardenAdmin - - - 0 - 0 - 0 - 1 - - 12 - - - Login
java.lang.UnsupportedOperationException: Missing Context #AD_Client_ID - at org.compiere.util.Login.getOrgs(Login.java:566) - at org.idempiere.fitnesse.fixture.Login.modelLogin(Login.java:172) - at org.idempiere.fitnesse.fixture.Login.doStaticTable(Login.java:109) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
- - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_ClIEnT_id - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID
11 - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID
102 - - - *Login* - - - -]]>
- TestLoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127122728_0_1_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127122728_0_1_0_1.xml deleted file mode 100644 index f28382cd15..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127122728_0_1_0_1.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - v20111026 - TestLoginGardenAdmin - - - 0 - 1 - 0 - 1 - - 12 - - - Login - - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_ClIEnT_id - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID
11 - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID
102 - - - *Login* -
java.lang.Exception: Error logging in - no organizations for this role - at org.idempiere.fitnesse.fixture.Login.doStaticTable(Login.java:116) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
- - -]]>
- TestLoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123229_0_1_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123229_0_1_0_1.xml deleted file mode 100644 index 55d6196089..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123229_0_1_0_1.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - v20111026 - TestLoginGardenAdmin - - - 0 - 1 - 0 - 1 - - 11 - - - Login - - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_ClIEnT_id - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID
11 - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID
102 - - - *Login* -
java.lang.Exception: Error logging in - no organizations for this role - at org.idempiere.fitnesse.fixture.Login.doStaticTable(Login.java:116) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
- - -]]>
- TestLoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123249_0_1_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123249_0_1_0_1.xml deleted file mode 100644 index 0a48f29569..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123249_0_1_0_1.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - v20111026 - TestLoginGardenAdmin - - - 0 - 1 - 0 - 1 - - 9 - - - Login - - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_ClIEnT_id - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID
11 - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID
102 - - - *Login* -
java.lang.Exception: Error logging in - no organizations for this role - at org.idempiere.fitnesse.fixture.Login.doStaticTable(Login.java:116) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
- - -]]>
- TestLoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123406_0_1_0_1.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123406_0_1_0_1.xml deleted file mode 100644 index 8ea436b044..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123406_0_1_0_1.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - v20111026 - TestLoginGardenAdmin - - - 0 - 1 - 0 - 1 - - 16 - - - Login - - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_ClIEnT_id - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID
11 - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID
102 - - - *Login* -
java.lang.Exception: Error logging in - no organizations for this role - at org.idempiere.fitnesse.fixture.Login.doStaticTable(Login.java:116) - at fitnesse.fixtures.TableFixture.doRows(TableFixture.java:16) - at fit.Fixture.doTable(Fixture.java:153) - at fit.Fixture.interpretTables(Fixture.java:99) - at fit.Fixture.doTables(Fixture.java:79) - at fit.FitServer.process(FitServer.java:81) - at fit.FitServer.run(FitServer.java:56) - at org.idempiere.fitnesse.server.fit.FitServerRunner.run(FitServerRunner.java:18) - at org.idempiere.fitnesse.server.Runner.execute(Runner.java:18) - at org.idempiere.fitnesse.server.fit.FitServlet.runTests(FitServlet.java:25) - at org.idempiere.fitnesse.server.fit.FitServlet.service(FitServlet.java:21) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) - at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) - at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) - at java.lang.Thread.run(Thread.java:679) -
- - -]]>
- TestLoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123925_2_0_0_0.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123925_2_0_0_0.xml deleted file mode 100644 index 1aec16dd82..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127123925_2_0_0_0.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - v20111026 - TestLoginGardenAdmin - - - 2 - 0 - 0 - 0 - - 8 - - - Login - - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_ClIEnT_id - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID
11 - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID
102 - - - *Login* - - - -]]>
- TestLoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127142951_2_0_0_0.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127142951_2_0_0_0.xml deleted file mode 100644 index 146a865a66..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginGardenAdmin/20121127142951_2_0_0_0.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - v20111026 - TestLoginGardenAdmin - - - 2 - 0 - 0 - 0 - - 4 - - - Login - - - User - GardenAdmin - - - Password - GardenAdmin - - - AD_ClIEnT_id - @Ref=AD_Client[Value='GardenWorld'].AD_Client_ID
11 - - - AD_Role_id - @Ref=AD_Role[Name='GardenWorld Admin'].AD_Role_ID
102 - - - *Login* - - - -]]>
- TestLoginGardenAdmin - - - -
- - - 0 - 0 - 0 - 0 - - 0 - -
- diff --git a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginSystem/20121127142938_2_0_0_0.xml b/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginSystem/20121127142938_2_0_0_0.xml deleted file mode 100644 index 96abeef142..0000000000 --- a/fitnesse/FitNesseRoot/files/testResults/IdempiereSuite.TestLoginSystem/20121127142938_2_0_0_0.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - v20111026 - TestLoginSystem - - - 2 - 0 - 0 - 0 - - 1 - - - Login - - - User - SuperUser - - - Password - System - - - AD_ClIEnT_id - 0 - - - AD_Role_id - 0 - - - *Login* - - - -]]> - TestLoginSystem - - - - - - - 0 - 0 - 0 - 0 - - 0 - - - diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereIdGenerator.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereIdGenerator.java index 7075ed04ae..2cebb6c37d 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereIdGenerator.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereIdGenerator.java @@ -61,14 +61,7 @@ public class AdempiereIdGenerator implements IdGenerator { } prefix = builder.toString(); - Pattern pattern = Pattern.compile("[^a-zA-Z_0-9]"); - Matcher matcher = pattern.matcher(prefix); - StringBuffer sb = new StringBuffer(); - while(matcher.find()) { - matcher.appendReplacement(sb, "_"); - } - matcher.appendTail(sb); - prefix = sb.toString(); + prefix = escapeId(prefix); if (desktop.getComponentByUuidIfAny(prefix) == null) { // look to avoid dups return prefix; @@ -92,6 +85,18 @@ public class AdempiereIdGenerator implements IdGenerator { return prefix + i; } + public static String escapeId(String prefix) { + Pattern pattern = Pattern.compile("[^a-zA-Z_0-9]"); + Matcher matcher = pattern.matcher(prefix); + StringBuffer sb = new StringBuffer(); + while(matcher.find()) { + matcher.appendReplacement(sb, "_"); + } + matcher.appendTail(sb); + prefix = sb.toString(); + return prefix; + } + @Override public String nextDesktopId(Desktop desktop) { if (desktop.getAttribute(DESKTOP_ID_ATTRIBUTE) == null) { diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/DetailPane.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/DetailPane.java index 48fb2107a9..930ae69f84 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/DetailPane.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/DetailPane.java @@ -24,6 +24,7 @@ import org.zkoss.zhtml.Text; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Execution; import org.zkoss.zk.ui.Executions; +import org.zkoss.zk.ui.IdSpace; import org.zkoss.zk.ui.Page; import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.EventListener; @@ -43,7 +44,7 @@ import org.zkoss.zul.Toolbar; * @author hengsin * */ -public class DetailPane extends Panel implements EventListener { +public class DetailPane extends Panel implements EventListener, IdSpace { public static final String ON_POST_SELECT_TAB_EVENT = "onPostSelectTab"; diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Combobox.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Combobox.java index 49dcb762e4..545d5f62b6 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Combobox.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Combobox.java @@ -19,6 +19,7 @@ package org.adempiere.webui.component; import java.util.List; +import org.adempiere.webui.AdempiereIdGenerator; import org.zkoss.zk.ui.IdSpace; import org.zkoss.zul.Comboitem; @@ -43,8 +44,9 @@ public class Combobox extends org.zkoss.zul.Combobox implements IdSpace public Comboitem appendItem(String label) { ComboItem item = new ComboItem(label); - if (getFellowIfAny(label) == null ) - item.setId(label); + String id = AdempiereIdGenerator.escapeId(label); + if (getFellowIfAny(id) == null ) + item.setId(id); item.setParent(this); return item; } @@ -65,8 +67,9 @@ public class Combobox extends org.zkoss.zul.Combobox implements IdSpace public void appendItem(String name, Object value) { ComboItem item = new ComboItem(name, value); - if (getFellowIfAny(name) == null) - item.setId(name); + String id = AdempiereIdGenerator.escapeId(name); + if (getFellowIfAny(id) == null) + item.setId(id); this.appendChild(item); } diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/TabbedDesktop.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/TabbedDesktop.java index 251f2b163b..947885ac42 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/TabbedDesktop.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/TabbedDesktop.java @@ -17,6 +17,7 @@ import java.io.IOException; import java.util.List; import org.adempiere.util.Callback; +import org.adempiere.webui.AdempiereIdGenerator; import org.adempiere.webui.adwindow.ADWindow; import org.adempiere.webui.apps.ProcessDialog; import org.adempiere.webui.apps.wf.WFPanel; @@ -133,7 +134,8 @@ public abstract class TabbedDesktop extends AbstractDesktop { final ADWindow adWindow = new ADWindow(Env.getCtx(), windowId, query); final DesktopTabpanel tabPanel = new DesktopTabpanel(); - tabPanel.setId(adWindow.getTitle()+"_"+adWindow.getADWindowContent().getWindowNo()); + String id = AdempiereIdGenerator.escapeId(adWindow.getTitle()); + tabPanel.setId(id+"_"+adWindow.getADWindowContent().getWindowNo()); final Tab tab = windowContainer.addWindow(tabPanel, adWindow.getTitle(), true); tab.setImage(IN_PROGRESS_IMAGE); tab.setClosable(false); diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/RolePanel.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/RolePanel.java index 22a4b232ab..76e5242acf 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/RolePanel.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/RolePanel.java @@ -26,6 +26,7 @@ package org.adempiere.webui.panel; import java.sql.Timestamp; import java.util.Properties; +import org.adempiere.webui.AdempiereIdGenerator; import org.adempiere.webui.LayoutUtils; import org.adempiere.webui.component.ComboItem; import org.adempiere.webui.component.Combobox; @@ -314,7 +315,9 @@ public class RolePanel extends Window implements EventListener, Deferrabl for(int i = 0; i < m_clientKNPairs.length; i++) { ComboItem ci = new ComboItem(m_clientKNPairs[i].getName(), m_clientKNPairs[i].getID()); - ci.setId(ci.getLabel()); + String id = AdempiereIdGenerator.escapeId(ci.getLabel()); + if (ci.getFellowIfAny(id) == null) + ci.setId(id); lstClient.appendChild(ci); if (m_clientKNPairs[i].getID().equals(initDefault)) lstClient.setSelectedItem(ci); @@ -360,10 +363,9 @@ public class RolePanel extends Window implements EventListener, Deferrabl for (int i = 0; i < roleKNPairs.length; i++) { ComboItem ci = new ComboItem(roleKNPairs[i].getName(), roleKNPairs[i].getID()); - if (lstRole.getFellowIfAny(ci.getLabel()) != null) { - ci.setId(ci.getLabel()+"_"+i); - } else { - ci.setId(ci.getLabel()); + String id = AdempiereIdGenerator.escapeId(ci.getLabel()); + if (lstRole.getFellowIfAny(id) == null) { + ci.setId(id); } lstRole.appendChild(ci); if (roleKNPairs[i].getID().equals(initDefault)) @@ -417,7 +419,9 @@ public class RolePanel extends Window implements EventListener, Deferrabl for(int i = 0; i < orgKNPairs.length; i++) { ComboItem ci = new ComboItem(orgKNPairs[i].getName(), orgKNPairs[i].getID()); - ci.setId(ci.getLabel()); + String id = AdempiereIdGenerator.escapeId(ci.getLabel()); + if (ci.getFellowIfAny(id) == null) + ci.setId(id); lstOrganisation.appendChild(ci); if(orgKNPairs[i].getID().equals(initDefault)) lstOrganisation.setSelectedItem(ci); diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/part/WindowContainer.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/part/WindowContainer.java index dd856cc6bb..226ff2ca27 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/part/WindowContainer.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/part/WindowContainer.java @@ -55,6 +55,7 @@ public class WindowContainer extends AbstractUIPart { tabbox = new Tabbox(); tabbox.setSclass("desktop-tabbox"); + tabbox.setId("desktop_tabbox"); Tabpanels tabpanels = new Tabpanels(); tabpanels.setVflex("1"); diff --git a/org.idempiere.fitnesse.server/.classpath b/org.idempiere.fitnesse.server/.classpath index afe6dbd6af..cbe6467ee2 100644 --- a/org.idempiere.fitnesse.server/.classpath +++ b/org.idempiere.fitnesse.server/.classpath @@ -1,7 +1,7 @@ - + diff --git a/org.idempiere.ui.zk.selenium/src/fitlibrary/zk/ZkFixture.java b/org.idempiere.ui.zk.selenium/src/fitlibrary/zk/ZkFixture.java index 9739d108fd..17f25b78d1 100644 --- a/org.idempiere.ui.zk.selenium/src/fitlibrary/zk/ZkFixture.java +++ b/org.idempiere.ui.zk.selenium/src/fitlibrary/zk/ZkFixture.java @@ -8,7 +8,6 @@ import java.util.List; import org.idempiere.ui.zk.selenium.Widget; import org.idempiere.ui.zk.selenium.Zk; import org.openqa.selenium.By; -import org.openqa.selenium.Keys; import org.openqa.selenium.WebElement; import fitlibrary.annotation.SimpleAction; @@ -53,17 +52,18 @@ public class ZkFixture extends SpiderFixture { return widget.$n(webDriver, "real").getAttribute("Value"); } - @SimpleAction(wiki = "|''comboBox''|xpath, id or other locator|''select item''|label of item|", tooltip = "Changes the selected item in the given comboBox.") + @SimpleAction(wiki = "|''combobox''|xpath, id or other locator|''select item''|label of item|", tooltip = "Changes the selected item in the given comboBox.") public boolean comboboxSelectItem(String locator, String label) { Widget widget = new Widget(locator); + widget.execute(webDriver, "setValue('"+label+"')"); + widget.execute(webDriver, "fireOnChange()"); WebElement element = widget.$n(webDriver, "real"); - element.clear(); - element.sendKeys(label); - element.sendKeys(Keys.ENTER); + element.click(); + waitResponse(); return label.equals(element.getAttribute("value")); } - @SimpleAction(wiki = "|''comboBox''|xpath, id or other locator|''select item at''|index|", tooltip = "Changes the selected item to the nth one, in the given comboBox.") + @SimpleAction(wiki = "|''combobox''|xpath, id or other locator|''select item at''|index|", tooltip = "Changes the selected item to the nth one, in the given comboBox.") public boolean comboboxSelectItemAt(String locator, int index) { Widget widget = new Widget(locator); widget.execute(webDriver, "open()"); @@ -78,6 +78,69 @@ public class ZkFixture extends SpiderFixture { return false; } + // ---- Tabbox ---- + @SimpleAction(wiki = "|''tabbox''|xpath, id or other locator|''select tab at''|index|", tooltip = "Changes the selected tab to the nth one, in the given tabbox.") + public void tabboxSelectTabAt(String locator, int index) { + Widget widget = new Widget(locator); + WebElement element = (WebElement) widget.eval(webDriver, "getTabs().getChildAt("+index+").$n('cnt');"); + element.click(); + } + + @SimpleAction(wiki = "|''tabbox''|xpath, id or other locator|''select tab''|label|", tooltip = "Changes the selected tab in the given tabbox.") + public void tabboxSelectTab(String locator, String label) { + Widget widget = new Widget(locator + " @tab[label=\""+label+"\"]"); + widget.$n(webDriver, "cnt").click(); + } + + @SimpleAction(wiki = "|''selected tab''|xpath, id or other locator|", tooltip = "Get the label of the selected tab in the given tabbox.") + public String selectedTab(String locator) { + Widget widget = new Widget(locator); + return (String) widget.eval(webDriver, "getSelectedTab().getLabel()"); + } + + // -------- Wait Ajax Response ----- + @SimpleAction(wiki = "|''wait response''|", tooltip = "Wait for ajax response with default timeout value.") + public void waitResponse() { + waitResponseWithTimeout(5000); + } + + @SimpleAction(wiki = "|''wait response with timeout''|timeout|", tooltip = "Wait for ajax response with set timeout value.") + public void waitResponseWithTimeout(int timeout) { + long s = System.currentTimeMillis(); + int i = 0; + int ms = 500; + + String script = "!!zAu.processing() || !!jq.timers.length"; + while (i < 2) { // make sure the command is triggered. + while(Boolean.valueOf(getEval(script))) { + if (System.currentTimeMillis() - s > timeout) { + break; + } + i = 0;//reset + sleep(ms); + } + i++; + sleep(ms); + } + } + + protected String getEval(String script) { + return String.valueOf(executeJavaScript("return ("+ script+");")); + } + + /** + * Causes the currently executing thread to sleep for the specified number + * of milliseconds, subject to the precision and accuracy of system timers + * and schedulers. The thread does not lose ownership of any monitors. + * @param millis the length of time to sleep in milliseconds. + */ + protected void sleep(long millis) { + try { + Thread.sleep(millis); + } catch (InterruptedException e) { + } + } + class ZkFinder implements Finder { @Override diff --git a/org.idempiere.ui.zk.selenium/src/test/AbstractTestCase.java b/org.idempiere.ui.zk.selenium/src/test/AbstractTestCase.java index 7c7a4d986e..53c534d46a 100644 --- a/org.idempiere.ui.zk.selenium/src/test/AbstractTestCase.java +++ b/org.idempiere.ui.zk.selenium/src/test/AbstractTestCase.java @@ -5,10 +5,13 @@ import static org.junit.Assert.fail; import java.util.concurrent.TimeUnit; +import org.idempiere.ui.zk.selenium.Widget; import org.idempiere.ui.zk.selenium.Zk; import org.junit.After; import org.junit.Before; import org.openqa.selenium.By; +import org.openqa.selenium.JavascriptExecutor; +import org.openqa.selenium.Keys; import org.openqa.selenium.NoSuchElementException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; @@ -41,11 +44,12 @@ public class AbstractTestCase { } protected void select(WebElement select, String label) { - select.findElement(Zk.jq(".z-combobox-btn")).click(); - try { - Thread.sleep(500); - } catch (InterruptedException e) {} - select.findElement(Zk.jq("$"+escape(label))).click(); + WebElement element = select.findElement(By.tagName("input")); + element.clear(); + element.sendKeys(label); + waitResponse(); + element.click(); + element.sendKeys(Keys.TAB); } protected void clickCheckbox(String locator) { @@ -56,10 +60,74 @@ public class AbstractTestCase { driver.findElement(Zk.jq(locator)).click(); } + protected void selectTab(String locator, int index) { + Widget widget = new Widget(locator); + WebElement element = (WebElement) widget.eval(driver, "getTabs().getChildAt("+index+").$n('cnt');"); + element.click(); + } + + protected void selectTab(String locator, String label) { + Widget widget = new Widget(locator + " @tab[label=\""+label+"\"]"); + widget.$n(driver, "cnt").click(); + } + + protected String selectedTab(String locator) { + Widget widget = new Widget(locator); + return (String) widget.eval(driver, "getSelectedTab().getLabel()"); + } + + /** + * Waits for Ajax response with default timeout value. + */ + protected void waitResponse() { + waitResponse(5000); + } + + /** + * Waits for Ajax response according to the timeout attribute. + * @param timeout + * + */ + protected void waitResponse(int timeout) { + long s = System.currentTimeMillis(); + int i = 0; + int ms = 500; + + String script = "!!zAu.processing() || !!jq.timers.length"; + while (i < 2) { // make sure the command is triggered. + while(Boolean.valueOf(getEval(script))) { + if (System.currentTimeMillis() - s > timeout) { + break; + } + i = 0;//reset + sleep(ms); + } + i++; + sleep(ms); + } + } + + public String getEval(String script) { + return String.valueOf(((JavascriptExecutor) driver).executeScript("return ("+ script+");")); + } + + /** + * Causes the currently executing thread to sleep for the specified number + * of milliseconds, subject to the precision and accuracy of system timers + * and schedulers. The thread does not lose ownership of any monitors. + * @param millis the length of time to sleep in milliseconds. + */ + protected void sleep(long millis) { + try { + Thread.sleep(millis); + } catch (InterruptedException e) { + } + } + protected void login() throws Exception { driver.get(baseUrl); - Thread.sleep(500); + waitResponse(); // enter user name type("$loginPanel $txtUserId", "GardenAdmin"); @@ -94,7 +162,7 @@ public class AbstractTestCase { break; } catch (Exception e) { } - Thread.sleep(1000); + sleep(1000); } return driver.findElement(loginUserQuery); } @@ -129,7 +197,7 @@ public class AbstractTestCase { @After public void tearDown() throws Exception { - driver.quit(); + //driver.quit(); String verificationErrorString = verificationErrors.toString(); if (!"".equals(verificationErrorString)) { fail(verificationErrorString); diff --git a/org.idempiere.ui.zk.selenium/src/test/ChangeRoleTest.java b/org.idempiere.ui.zk.selenium/src/test/ChangeRoleTest.java index b2bc6eba5e..81c41d8942 100644 --- a/org.idempiere.ui.zk.selenium/src/test/ChangeRoleTest.java +++ b/org.idempiere.ui.zk.selenium/src/test/ChangeRoleTest.java @@ -12,11 +12,11 @@ public class ChangeRoleTest extends AbstractTestCase { public void testLogin() throws Exception { login(); - Thread.sleep(2000); + waitResponse(); driver.findElement(Zk.jq("$changeRole")).click(); - Thread.sleep(1000); + waitResponse(); // wait for home page selectRole("GardenWorld", "GardenWorld User", "HQ"); diff --git a/org.idempiere.ui.zk.selenium/src/test/SelectTabTest.java b/org.idempiere.ui.zk.selenium/src/test/SelectTabTest.java new file mode 100644 index 0000000000..8b29ff979a --- /dev/null +++ b/org.idempiere.ui.zk.selenium/src/test/SelectTabTest.java @@ -0,0 +1,27 @@ +package test; + +import static org.junit.Assert.*; + +import org.junit.*; + +/** + * Web Driver + zk jq selector, doesn't required AdempiereIdGenerator + * @author hengsin + * + */ +public class SelectTabTest extends AbstractTestCase { + @Test + public void testSelectTab() throws Exception { + login(); + waitResponse(); + select("$treeSearchCombo", "Product"); + waitResponse(); + clickButton("$findWindow_1 $simpleSearch $btnOk"); + waitResponse(); + selectTab("$Product_1 $detailPane @tabbox", 2); + assertFalse("Business Partner".equals(selectedTab("$Product_1 $detailPane @tabbox"))); + waitResponse(); + selectTab("$Product_1 $detailPane @tabbox", "Business Partner"); + assertEquals("Business Partner", selectedTab("$Product_1 $detailPane @tabbox")); + } +}