11package anhtester .com .projects .cms .admin .pages .products ;
22
3+ import anhtester .com .driver .DriverManager ;
34import anhtester .com .helpers .Helpers ;
45import anhtester .com .keywords .WebUI ;
56import anhtester .com .projects .cms .CommonPageCMS ;
@@ -28,6 +29,7 @@ public class AddProductPage extends CommonPageCMS {
2829 private By selectChooseThumbnailImgs = By .xpath ("//label[contains(text(),'Thumbnail Image')]/following-sibling::div//div[contains(text(),'Choose File')]" );
2930 private By uploadNewImageTab = By .xpath ("//a[normalize-space()='Upload New']" );
3031 private By buttonBrowseImages = By .xpath ("//button[normalize-space()='Browse']" );
32+ private By inputGalleryImages = By .xpath ("//input[@class = 'uppy-Dashboard-input']" );
3133 private By buttonAddFileImgs = By .xpath ("//button[normalize-space()='Add Files']" );
3234 private By selectFileTab = By .xpath ("//a[normalize-space()='Select File']" );
3335 private By selectGalleryImages = By .xpath ("(//img[@class='img-fit'])[1]" );
@@ -51,6 +53,7 @@ public class AddProductPage extends CommonPageCMS {
5153 private By allCategoriesTabUI = By .xpath ("//a[normalize-space()='All categories']" );
5254 private By unitUI = By .xpath ("//span[@class='opacity-70']" );
5355 private By descriptionUI = By .xpath ("//div[@class = 'mw-100 overflow-auto text-left aiz-editor-data']//p" );
56+
5457 int randomNumber = new Random ().nextInt (1000000 );
5558 private By menuAllProducts = By .xpath ("//span[normalize-space()='All products']" );
5659 private By newProduct = By .xpath ("(//span[@class='text-muted text-truncate-2'])[1]" );
@@ -76,20 +79,22 @@ public void addProduct(String productName, String category, String unit, String
7679 WebUI .clickElement (selectChooseGalleryImgs );
7780 WebUI .clickElement (uploadNewImageTab );
7881 //Upload images Gallery with Form
79- WebUI .uploadFileWithLocalForm (buttonBrowseImages , Helpers .getCurrentDir () + "src\\ test\\ resources\\ testdataCMS\\ " + imgName );
82+ //WebUI.uploadFileWithLocalForm(buttonBrowseImages, Helpers.getCurrentDir() + "src\\test\\resources\\testdataCMS\\" + imgName);
83+ //Upload images Gallery with sendKeys
84+ DriverManager .getDriver ().findElement (inputGalleryImages ).sendKeys (Helpers .getCurrentDir () + "src\\ test\\ resources\\ testdataCMS\\ " + imgName );
8085 WebUI .clickElement (selectFileTab );
8186 LogUtils .info (imgName );
8287 LogUtils .info (Helpers .splitString (imgName , "[.]" ));
83- String nameImage = Helpers .splitString (imgName , "[.]" ).get (0 );
88+ String imageName = Helpers .splitString (imgName , "[.]" ).get (0 );
8489 //Search and select images
85- WebUI .setText (inputSearchImg , nameImage , Keys .ENTER );
90+ WebUI .setText (inputSearchImg , imageName , Keys .ENTER );
8691 WebUI .waitForJQueryLoad ();
8792 WebUI .sleep (2 );
8893 WebUI .clickElementWithJs (selectGalleryImages );
8994 WebUI .clickElement (buttonAddFileImgs );
9095 WebUI .waitForPageLoaded ();
9196 WebUI .clickElement (selectChooseThumbnailImgs );
92- WebUI .setText (inputSearchImg , nameImage , Keys .ENTER );
97+ WebUI .setText (inputSearchImg , imageName , Keys .ENTER );
9398 WebUI .waitForJQueryLoad ();
9499 WebUI .sleep (2 );
95100 WebUI .clickElementWithJs (selectThumbnailImages );
@@ -108,7 +113,7 @@ public void addProduct(String productName, String category, String unit, String
108113 WebUI .setText (inputMetaTitle , productName );
109114 WebUI .setText (inputDescription , description );
110115 WebUI .clickElement (selectChooseMetaImage );
111- WebUI .setText (inputSearchImg , nameImage , Keys .ENTER );
116+ WebUI .setText (inputSearchImg , imageName , Keys .ENTER );
112117 WebUI .waitForJQueryLoad ();
113118 WebUI .sleep (2 );
114119 WebUI .clickElementWithJs (selectThumbnailImages );
@@ -133,16 +138,18 @@ public void verifyNewProduct(String category, String unit, Double unitPrice, Str
133138 WebUI .switchToWindowOrTabByTitle (nameProductVerify );
134139 getLoginPageCMS ().clickCloseAdvertisementPopup ();
135140 WebUI .waitForPageLoaded ();
141+ WebUI .sleep (2 );
136142 WebUI .verifyEquals (WebUI .getTextElement (By .xpath ("//h1[normalize-space()='" + nameProductVerify + "']" )).trim (), nameProductVerify , "Product name displayed wrong" );
137143 WebUI .verifyEquals (WebUI .getTextElement (unitUI ).trim (), "/" + unit , "Unit displayed wrong" );
138- WebUI .scrollToElementToTop (descriptionUI );
144+ WebUI .scrollToElementToBottom (descriptionUI );
139145 WebUI .verifyEquals (WebUI .getTextElement (descriptionUI ).trim (), description , "Description displayed wrong" );
146+ WebUI .sleep (2 );
140147 //Check Product in Category
141148 WebUI .clickElement (allCategoriesTabUI );
142149 WebUI .waitForPageLoaded ();
143150 WebUI .clickElement (By .xpath ("//a[contains(text(),'" + category + "')]" ));
151+ WebUI .waitForPageLoaded ();
152+ WebUI .sleep (2 );
144153 WebUI .verifyElementVisible (By .xpath ("(//a[normalize-space()='" + nameProductVerify + "'])" ), "Product is NOT displayed in Category" );
145- WebUI .closeCurrentWindow ();
146- WebUI .switchToMainWindow ();
147154 }
148155}
0 commit comments