You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							46 lines
						
					
					
						
							1.1 KiB
						
					
					
				
			
		
		
	
	
							46 lines
						
					
					
						
							1.1 KiB
						
					
					
				| /// <reference types="cypress" />
 | |
| 
 | |
| /**
 | |
|  * @method abGetProperty
 | |
|  * @description
 | |
|  * ### Usage
 | |
|  *
 | |
|  * ```javascript
 | |
|  * // your property in AdminJS
 | |
|  * resourceOptions: {
 | |
|  *   properties: {
 | |
|  *     isAdmin: {...}
 | |
|  *   }
 | |
|  * }
 | |
|  * ```
 | |
|  *
 | |
|  * ```javascript
 | |
|  * // accessing it in test.
 | |
|  * cy.abGetProperty('isAdmin', 'input[type="checkbox"]')
 | |
|  * ```
 | |
|  *
 | |
|  * `abGetProperty` returns the wrapper Section for a given property. You can pass inner element
 | |
|  * which allows you to select `input`, `label`, `options`, etc. inside it.
 | |
|  *
 | |
|  * @memberof module:cy
 | |
|  * @param {string} path           path of the property
 | |
|  * @param {string} [selector=null]
 | |
|  * @example
 | |
|  * it('shows disabled checkBox', () => {
 | |
|  *   cy.abGetProperty('isAdmin', 'input[type="checkbox"]')
 | |
|  *     .should('be.disabled')
 | |
|  *     .should('not.be.checked')
 | |
|  *
 | |
|  *   cy.abGetProperty('isAdmin', 'label')
 | |
|  *     .click()
 | |
|  *     .should('not.be.checked')
 | |
|  * })
 | |
|  */
 | |
| Cypress.Commands.add('abGetProperty', (path, selector = null) => {
 | |
|   let propertySelector = `[data-testid$="-${path}"]`
 | |
|   if (selector) {
 | |
|     propertySelector = [propertySelector, selector].join(' ')
 | |
|   }
 | |
|   return cy.get(propertySelector)
 | |
| })
 |