# HG changeset patch
# User Ranjith S R <ranjith@qualiantech.com>
# Date 1551966058 -19800
#      Thu Mar 07 19:10:58 2019 +0530
# Node ID 577322dd0464cbe21bf027e9f6b2b5fc3459cb63
# Parent  926eb33b65b78957683821c74dbe0d7856c56ed9
Verifies issue 40291 : Added Automated Test 'I40291_VerifyPayOpenTicketButtonStatus'

diff -r 926eb33b65b7 -r 577322dd0464 src-test/org/openbravo/test/mobile/retail/extmodules/selenium/tests/discounts_bypaymentmethod/I33512_VerifyPayOpenTickets.java
--- a/src-test/org/openbravo/test/mobile/retail/extmodules/selenium/tests/discounts_bypaymentmethod/I33512_VerifyPayOpenTickets.java	Thu Mar 07 08:40:53 2019 +0100
+++ b/src-test/org/openbravo/test/mobile/retail/extmodules/selenium/tests/discounts_bypaymentmethod/I33512_VerifyPayOpenTickets.java	Thu Mar 07 19:10:58 2019 +0530
@@ -55,7 +55,6 @@
     tap(TestIdExtModules.BUTTON_POPUP_OPENTICKETS_DONE);
     verify(TestIdExtModules.LABEL_TOTALTOPAY, "221.00");
 
-    tap(TestIdExtModules.BUTTON_PAY);
     tap(TestIdExtModules.BUTTON_PAY_EXACT);
     tap(TestIdExtModules.BUTTON_PAY_DONE);
     verify(TestIdExtModules.LABEL_TOTALTOPAY, "0.00");
diff -r 926eb33b65b7 -r 577322dd0464 src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/multichange/PayOpenTicketsMultiCurrency.java
--- a/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/multichange/PayOpenTicketsMultiCurrency.java	Thu Mar 07 08:40:53 2019 +0100
+++ b/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/multichange/PayOpenTicketsMultiCurrency.java	Thu Mar 07 19:10:58 2019 +0530
@@ -77,7 +77,6 @@
     verify(TestIdPack.LABEL_RECEIPT_MULTIORDER_TOTALGROSS, "301.00");
     verify(TestIdPack.LABEL_TOTALTOPAY, "301.00");
 
-    tap(TestIdPack.BUTTON_PAY);
     tap(TestIdPack.BUTTON_CASH);
     verify(TestIdPack.LABEL_RECEIPT_PAY_REMAINING, "301.00€");
 
diff -r 926eb33b65b7 -r 577322dd0464 src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/sales/CreateMultiorder.java
--- a/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/sales/CreateMultiorder.java	Thu Mar 07 08:40:53 2019 +0100
+++ b/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/sales/CreateMultiorder.java	Thu Mar 07 19:10:58 2019 +0530
@@ -88,7 +88,6 @@
     verify(TestIdPack.LABEL_RECEIPT_MULTIORDER_TOTALQTY, "2");
     verify(TestIdPack.LABEL_RECEIPT_MULTIORDER_TOTALGROSS, totalGross);
     verify(TestIdPack.LABEL_TOTALTOPAY, totalGross);
-    tap(TestIdPack.BUTTON_PAY);
     tap(TestIdPack.BUTTON_PAY_EXACT);
     tap(TestIdPack.BUTTON_PAY_DONE);
     verify(TestIdPack.LABEL_TOTALTOPAY, "0.00");
diff -r 926eb33b65b7 -r 577322dd0464 src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/sales/I27214_MultiorderFailsWhenEmptyReceiptsPresent.java
--- a/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/sales/I27214_MultiorderFailsWhenEmptyReceiptsPresent.java	Thu Mar 07 08:40:53 2019 +0100
+++ b/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/sales/I27214_MultiorderFailsWhenEmptyReceiptsPresent.java	Thu Mar 07 19:10:58 2019 +0530
@@ -116,7 +116,6 @@
     verify(TestIdPack.LABEL_RECEIPT_MULTIORDER_TOTALQTY, "2");
     verify(TestIdPack.LABEL_RECEIPT_MULTIORDER_TOTALGROSS, totalGross);
     verify(TestIdPack.LABEL_TOTALTOPAY, totalGross);
-    tap(TestIdPack.BUTTON_PAY);
     tap(TestIdPack.BUTTON_PAY_EXACT);
     tap(TestIdPack.BUTTON_PAY_DONE);
     verify(TestIdPack.LABEL_TOTALTOPAY, "0.00");
diff -r 926eb33b65b7 -r 577322dd0464 src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/selectingPrinter/SelectAlwaysPrinterMultiOrders.java
--- a/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/selectingPrinter/SelectAlwaysPrinterMultiOrders.java	Thu Mar 07 08:40:53 2019 +0100
+++ b/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/selectingPrinter/SelectAlwaysPrinterMultiOrders.java	Thu Mar 07 19:10:58 2019 +0530
@@ -80,7 +80,6 @@
     tap(TestIdExtModules.BUTTON_POPUP_OPENTICKETS_ROW3);
     tap(TestIdExtModules.BUTTON_POPUP_OPENTICKETS_DONE);
     verify(TestIdExtModules.LABEL_TOTALTOPAY, "236.50");
-    tap(TestIdPack.BUTTON_PAY);
     tap(TestIdPack.BUTTON_PAY_EXACT);
     tap(TestIdPack.BUTTON_PAY_DONE);
     verify(TestIdPack.LABEL_MAIN_PRINTER, "Main Terminal Printer");
@@ -90,4 +89,4 @@
     tap(TestIdPack.BUTTON_SELECT_PRINTER_POPUP_APPLY);
   }
 
-}
\ No newline at end of file
+}
diff -r 926eb33b65b7 -r 577322dd0464 src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/system/I33834_VerifyLayawayInPayOpen.java
--- a/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/system/I33834_VerifyLayawayInPayOpen.java	Thu Mar 07 08:40:53 2019 +0100
+++ b/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/system/I33834_VerifyLayawayInPayOpen.java	Thu Mar 07 19:10:58 2019 +0530
@@ -55,7 +55,6 @@
     tap(TestIdPack.BUTTON_POPUP_OPENTICKETS_DONE);
     verify(TestIdPack.LABEL_TOTALTOPAY, "301.00");
 
-    tap(TestIdPack.BUTTON_PAY);
     tap(TestIdPack.BUTTON_PAY_EXACT);
     tap(TestIdPack.BUTTON_PAY_DONE);
     verify(TestIdPack.LABEL_TOTALTOPAY, "0.00");
diff -r 926eb33b65b7 -r 577322dd0464 src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/system/I40291_VerifyPayOpenTicketButtonStatus.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src-test/org/openbravo/test/mobile/retail/pack/selenium/tests/system/I40291_VerifyPayOpenTicketButtonStatus.java	Thu Mar 07 19:10:58 2019 +0530
@@ -0,0 +1,89 @@
+/*
+ *************************************************************************
+ * The contents of this file are subject to the Openbravo Public License
+ * Version 1.0 (the "License"), being the Mozilla Public License
+ * Version 1.1 with a permitted attribution clause; you may not use this
+ * file except in compliance with the License. You may obtain a copy of
+ * the License at http://www.openbravo.com/legal/license.html
+ * Software distributed under the License is distributed on an "AS IS"
+ * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
+ * License for the specific language governing rights and limitations
+ * under the License.
+ * The Original Code is Openbravo ERP.
+ * The Initial Developer of the Original Code is Openbravo S.L.U.
+ * All portions are Copyright (C) 209 Openbravo S.L.U.
+ * All Rights Reserved.
+ * Contributor(s):
+ ************************************************************************
+ *
+ * @author RAN
+ *
+ */
+package org.openbravo.test.mobile.retail.pack.selenium.tests.system;
+
+import org.junit.Test;
+import org.openbravo.test.mobile.retail.mobilecore.javascript.BackboneHelper;
+import org.openbravo.test.mobile.retail.pack.selenium.TestIdPack;
+import org.openbravo.test.mobile.retail.pack.selenium.terminals.WebPOSTerminalHelper;
+
+public class I40291_VerifyPayOpenTicketButtonStatus extends WebPOSTerminalHelper {
+
+  @Test
+  public void test() {
+    // Verify for Receipt
+    final String receiptNo = addProduct();
+    verifyPayOpenTicketButtons(receiptNo);
+
+    // Verify for Layaway
+    final String layawayNo = createLayaway();
+    verifyPayOpenTicketButtons(layawayNo);
+
+    // Verify for loaded Layaway
+    final String layawayNo2 = createLayaway();
+    tap(TestIdPack.BUTTON_MENU);
+    tap(TestIdPack.BUTTON_MENU_OPENRECEIPT);
+    write(TestIdPack.FIELD_OPEN_RECEIPT_FILTER_TXT, layawayNo2);
+    tap(TestIdPack.BUTTON_OPEN_RECEIPT_SEARCH);
+    tap(TestIdPack.TABLE_OPEN_RECEIPT, layawayNo2);
+    verify(TestIdPack.LABEL_TOTALTOPAY, "150.50");
+    verifyPayOpenTicketButtons(layawayNo2);
+  }
+
+  private String addProduct() {
+    tap(TestIdPack.BUTTON_BROWSE);
+    tap(TestIdPack.BUTTON_CATEGORY_MOUNTAINEERING);
+    tap(TestIdPack.BUTTON_PRODUCT_MOUNTAINEERING_AVALANCHETRANSCEIVER);
+    verify(TestIdPack.LABEL_TOTALTOPAY, "150.50");
+    return BackboneHelper.getDocumentNo();
+  }
+
+  private String createLayaway() {
+    tap(TestIdPack.BUTTON_MENU);
+    tap(TestIdPack.BUTTON_MENU_LAYAWAYTHISRECEIPT);
+    final String documentNo = addProduct();
+    tap(TestIdPack.BUTTON_PAY);
+    tap(TestIdPack.BUTTON_LAYAWAY);
+    verify(TestIdPack.LABEL_TOTALTOPAY, "0.00");
+    return documentNo;
+  }
+
+  private void verifyPayOpenTicketButtons(final String documentNo) {
+    tap(TestIdPack.BUTTON_MENU);
+    tap(TestIdPack.BUTTON_MENU_PAYOPENTICKETS);
+    write(TestIdPack.FIELD_SEARCH_MULTIORDERS_TEXT, documentNo);
+    tap(TestIdPack.BUTTON_POPUP_OPENTICKETS_SEARCH);
+    tap(TestIdPack.BUTTON_POPUP_OPENTICKETS_ROW1);
+    tap(TestIdPack.BUTTON_POPUP_OPENTICKETS_DONE);
+    TestIdPack.TABLE_MULTIORDER_RECEIPT.enyoNode().waitUntilIsReady();
+    verify(TestIdPack.LABEL_TOTALTOPAY, "150.50");
+    isDisabled(TestIdPack.BUTTON_PAY, true);
+    isDisabled(TestIdPack.BUTTON_EDIT, true);
+    reload();
+    verify(TestIdPack.LABEL_TOTALTOPAY, "150.50");
+    isDisabled(TestIdPack.BUTTON_PAY, true);
+    isDisabled(TestIdPack.BUTTON_EDIT, true);
+    tap(TestIdPack.BUTTON_PAY_EXACT);
+    tap(TestIdPack.BUTTON_PAY_DONE);
+    verify(TestIdPack.LABEL_TOTALTOPAY, "0.00");
+  }
+}
