@@ -199,6 +199,65 @@ test.describe('E2E test', () => {
199199
200200 await page . locator ( 'button:has-text("Previous")' ) . click ( ) ;
201201
202+ /** MultiSelect mode type test */
203+ selectedSubCategory = page . locator ( 'div[data-test-id="9463d5f18a8924b3200b56efaad63bda"]' ) ;
204+ await selectedSubCategory . click ( ) ;
205+ await page . locator ( 'li:has-text("Mode")' ) . click ( ) ;
206+
207+ selectedTestName = page . locator ( 'div[data-test-id="6f64b45d01d11d8efd1693dfcb63b735"]' ) ;
208+ await selectedTestName . click ( ) ;
209+ await page . locator ( 'li:has-text("MultiSelect")' ) . click ( ) ;
210+
211+ /** Combo-Box mode type test */
212+ let displayAs = page . locator ( 'div[data-test-id="4aa668349e0970901aa6b11528f95223"]' ) ;
213+ await displayAs . click ( ) ;
214+ await page . locator ( 'li:has-text("Combo-Box")' ) . click ( ) ;
215+
216+ const selectProducts = page . locator ( 'div[role="combobox"]' ) ;
217+ await selectProducts . click ( ) ;
218+ await page . locator ( 'li:has-text("Mobile")' ) . click ( ) ;
219+ await page . locator ( 'li:has-text("Telivision")' ) . click ( ) ;
220+ await expect ( selectProducts ) . toBeVisible ( ) ;
221+
222+ await page . locator ( 'button:has-text("Next")' ) . click ( ) ;
223+
224+ assignment = page . locator ( 'div[id="Assignment"]' ) ;
225+
226+ await expect ( assignment . locator ( 'td >> text="Mobile"' ) ) . toBeVisible ( ) ;
227+ await expect ( assignment . locator ( 'td >> text="Telivision"' ) ) . toBeVisible ( ) ;
228+
229+ await page . locator ( 'button:has-text("Previous")' ) . click ( ) ;
230+
231+ await expect ( selectProducts . locator ( 'div[role="button"]:has-text("Mobile")' ) ) . toBeVisible ( ) ;
232+ await expect ( selectProducts . locator ( 'div[role="button"]:has-text("Telivision")' ) ) . toBeVisible ( ) ;
233+
234+ let deleteProduct = await selectProducts . locator ( 'div[role="button"]:has-text("Mobile")' ) ;
235+ await deleteProduct . locator ( 'svg[focusable="false"]' ) . click ( ) ;
236+
237+ await page . locator ( 'button:has-text("Next")' ) . click ( ) ;
238+
239+ await expect ( selectProducts . locator ( 'div[role="button"]:has-text("Mobile")' ) ) . not . toBeVisible ( ) ;
240+
241+ await page . locator ( 'button:has-text("Previous")' ) . click ( ) ;
242+
243+ deleteProduct = await selectProducts . locator ( 'div[role="button"]:has-text("Telivision")' ) ;
244+ await deleteProduct . locator ( 'svg[focusable="false"]' ) . click ( ) ;
245+
246+ /** Checkbox group mode type test */
247+ displayAs = page . locator ( 'div[data-test-id="4aa668349e0970901aa6b11528f95223"]' ) ;
248+ await displayAs . click ( ) ;
249+ await page . locator ( 'li:has-text("Checkbox group")' ) . click ( ) ;
250+
251+ await page . locator ( 'label:has-text("Washing Machine")' ) . click ( ) ;
252+ await page . locator ( 'label:has-text("Mobile")' ) . click ( ) ;
253+
254+ await page . locator ( 'button:has-text("Next")' ) . click ( ) ;
255+
256+ await expect ( assignment . locator ( 'td >> text="Washing Machine"' ) ) . toBeVisible ( ) ;
257+ await expect ( assignment . locator ( 'td >> text="Mobile"' ) ) . toBeVisible ( ) ;
258+
259+ await page . locator ( 'button:has-text("Previous")' ) . click ( ) ;
260+
202261 /** Readonly mode type test */
203262 selectedSubCategory = page . locator ( 'div[data-test-id="9463d5f18a8924b3200b56efaad63bda"]' ) ;
204263 await selectedSubCategory . click ( ) ;
@@ -220,6 +279,37 @@ test.describe('E2E test', () => {
220279 // await expect(assignment.locator('input[value="75"]')).toBeVisible();
221280 await expect ( assignment . locator ( 'input[value="9f2584c2-5cb4-4abe-a261-d68050ee0f66"]' ) ) . toBeVisible ( ) ;
222281
282+ await page . locator ( 'button:has-text("Previous")' ) . click ( ) ;
283+
284+ /** Testing Sorting(both ascending and descending) */
285+ selectedSubCategory = page . locator ( 'div[data-test-id="9463d5f18a8924b3200b56efaad63bda"]' ) ;
286+ await selectedSubCategory . click ( ) ;
287+ await page . locator ( 'li:has-text("Options")' ) . click ( ) ;
288+
289+ selectedTestName = page . locator ( 'div[data-test-id="6f64b45d01d11d8efd1693dfcb63b735"]' ) ;
290+ await selectedTestName . click ( ) ;
291+ await page . locator ( 'li:has-text("ListOfRecords")' ) . click ( ) ;
292+
293+ await page . locator ( 'span:has-text("Product Name")' ) . click ( ) ;
294+
295+ const table = page . locator ( 'div[id="list-view"]' ) ;
296+ let tableCell = table . locator ( 'tbody >> tr >> td >> nth=1' ) ;
297+ // "---" should come at the top in the ascending order, since it's a Falsy value
298+ await expect ( await tableCell . textContent ( ) ) . toBe ( '---' ) ;
299+
300+ await page . locator ( 'span:has-text("Product Name")' ) . click ( ) ;
301+
302+ tableCell = table . locator ( 'tbody >> tr >> td >> nth=1' ) ;
303+ // "Luxury Product" should be at the top in the descending order
304+ await expect ( await tableCell . textContent ( ) ) . toBe ( 'Luxury Product' ) ;
305+
306+ const lastRow = table . locator ( 'tbody >> tr >> nth=3' ) ;
307+ tableCell = lastRow . locator ( 'td >> nth=1' ) ;
308+ // "---" should be at the bottom in the descending order
309+ await expect ( await tableCell . textContent ( ) ) . toBe ( '---' ) ;
310+
311+ await page . locator ( 'button:has-text("Next")' ) . click ( ) ;
312+
223313 /** Submitting the case */
224314 await page . locator ( 'button:has-text("submit")' ) . click ( ) ;
225315 } , 10000 ) ;
0 commit comments