import { beVisible, beHidden, haveAttribute, haveClasses, notHaveClasses, haveText, html, notBeVisible, notHaveAttribute, notExist, haveFocus, test} from '../../../utils' test.only('it works with x-model', [html`
`], ({ get }) => { get('ul').should(notBeVisible()) get('button') .should(haveText('Select Person')) .click() get('ul').should(beVisible()) get('button').click() get('ul').should(notBeVisible()) get('button').click() get('[option="2"]').click() get('ul').should(notBeVisible()) get('button').should(haveText('Arlene Mccoy')) }, ) // test('it works with internal state', // [html` //
// // // //
// `], // ({ get }) => { // get('ul').should(notBeVisible()) // get('button') // .should(haveText('Select Person')) // .click() // get('ul').should(beVisible()) // get('button').click() // get('ul').should(notBeVisible()) // get('button').click() // get('[option="2"]').click() // get('ul').should(notBeVisible()) // get('button').should(haveText('Arlene Mccoy')) // }, // ) // test('$combobox/$comboboxOption', // [html` //
// // //
// //
// `], // ({ get }) => { // get('article').should(haveText('')) // get('[option="5"]').should(haveClasses(['disabled'])) // get('button') // .should(haveText('Select Person')) // .click() // get('article').should(haveText('Wade Cooper')) // get('[option="1"]').should(haveClasses(['active'])) // get('ul').type('{downarrow}') // get('article').should(haveText('Arlene Mccoy')) // get('[option="2"]').should(haveClasses(['active'])) // get('button').should(haveText('Select Person')) // get('[option="2"]').click() // get('button').should(haveText('Arlene Mccoy')) // get('[option="2"]').should(haveClasses(['selected'])) // }, // ) // test('"name" prop', // [html` //
// // // //
// `], // ({ get }) => { // get('input').should(haveAttribute('value', 'null')) // get('button').click() // get('input').should(haveAttribute('value', 'null')) // get('[option="2"]').click() // get('input').should(beHidden()) // .should(haveAttribute('name', 'person')) // .should(haveAttribute('value', '2')) // .should(haveAttribute('type', 'hidden')) // get('button').click() // get('[option="4"]').click() // get('input').should(beHidden()) // .should(haveAttribute('name', 'person')) // .should(haveAttribute('value', '4')) // .should(haveAttribute('type', 'hidden')) // }, // ); // test('"name" prop with object value', // [html` //
// // // //
// `], // ({ get }) => { // get('input[name="person"]').should(haveAttribute('value', 'null')) // get('button').click() // get('[name="person[id]"]').should(notExist()) // get('[option="2"]').click() // get('input[name="person"]').should(notExist()) // get('[name="person[id]"]').should(beHidden()) // .should(haveAttribute('value', '2')) // .should(haveAttribute('type', 'hidden')) // get('[name="person[name]"]').should(beHidden()) // .should(haveAttribute('value', 'Arlene Mccoy')) // .should(haveAttribute('type', 'hidden')) // get('button').click() // get('[option="4"]').click() // get('[name="person[id]"]').should(beHidden()) // .should(haveAttribute('value', '4')) // .should(haveAttribute('type', 'hidden')) // get('[name="person[name]"]').should(beHidden()) // .should(haveAttribute('value', 'Tom Cook')) // .should(haveAttribute('type', 'hidden')) // }, // ); // test('"default-value" prop', // [html` //
// // // //
// `], // ({ get }) => { // get('input').should(beHidden()) // .should(haveAttribute('name', 'person')) // .should(haveAttribute('value', '2')) // .should(haveAttribute('type', 'hidden')) // }, // ); // test('"multiple" prop', // [html` //
// // // //
// `], // ({ get }) => { // get('button').click() // get('[option="2"]').click() // get('ul').should(beVisible()) // get('button').should(haveText('2')) // get('[option="4"]').click() // get('button').should(haveText('2,4')) // get('ul').should(beVisible()) // get('[option="4"]').click() // get('button').should(haveText('2')) // get('ul').should(beVisible()) // }, // ); // test('"multiple" and "name" props together', // [html` //
// // // //
// `], // ({ get }) => { // get('input[name="people"]').should(haveAttribute('value', 'null')) // get('button').click() // get('[name="people[0][id]"]').should(notExist()) // get('[option="2"]').click() // get('ul').should(beVisible()) // get('button').should(haveText('2')) // get('input[name="people"]').should(notExist()) // get('[name="people[0][id]"]').should(beHidden()) // .should(haveAttribute('value', '2')) // .should(haveAttribute('type', 'hidden')) // get('[name="people[0][name]"]').should(beHidden()) // .should(haveAttribute('value', 'Arlene Mccoy')) // .should(haveAttribute('type', 'hidden')) // get('[option="4"]').click() // get('[name="people[0][id]"]').should(beHidden()) // .should(haveAttribute('value', '2')) // .should(haveAttribute('type', 'hidden')) // get('[name="people[0][name]"]').should(beHidden()) // .should(haveAttribute('value', 'Arlene Mccoy')) // .should(haveAttribute('type', 'hidden')) // get('[name="people[1][id]"]').should(beHidden()) // .should(haveAttribute('value', '4')) // .should(haveAttribute('type', 'hidden')) // get('[name="people[1][name]"]').should(beHidden()) // .should(haveAttribute('value', 'Tom Cook')) // .should(haveAttribute('type', 'hidden')) // get('button').should(haveText('2,4')) // get('ul').should(beVisible()) // get('[option="4"]').click() // get('[name="people[0][id]"]').should(beHidden()) // .should(haveAttribute('value', '2')) // .should(haveAttribute('type', 'hidden')) // get('[name="people[0][name]"]').should(beHidden()) // .should(haveAttribute('value', 'Arlene Mccoy')) // .should(haveAttribute('type', 'hidden')) // get('[name="people[1][id]"]').should(notExist()) // get('[name="people[1][name]"]').should(notExist()) // get('button').should(haveText('2')) // get('ul').should(beVisible()) // }, // ); // test('keyboard controls', // [html` //
// // // //
// `], // ({ get }) => { // get('.active').should(notExist()) // get('button').focus().type(' ') // get('[options]') // .should(beVisible()) // .should(haveFocus()) // get('[option="1"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{downarrow}') // get('[option="2"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{downarrow}') // get('[option="4"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{uparrow}') // get('[option="2"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{home}') // get('[option="1"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{end}') // get('[option="10"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{pageUp}') // get('[option="1"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{pageDown}') // get('[option="10"]') // .should(haveClasses(['active'])) // get('[options]') // .tab() // .should(haveFocus()) // .should(beVisible()) // .tab({ shift: true }) // .should(haveFocus()) // .should(beVisible()) // .type('{esc}') // .should(notBeVisible()) // }, // ) // test('"horizontal" keyboard controls', // [html` //
// // // //
// `], // ({ get }) => { // get('.active').should(notExist()) // get('button').focus().type(' ') // get('[options]') // .should(haveAttribute('aria-orientation', 'horizontal')) // .should(beVisible()) // .should(haveFocus()) // get('[option="1"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{rightarrow}') // get('[option="2"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{rightarrow}') // get('[option="4"]') // .should(haveClasses(['active'])) // get('[options]') // .type('{leftarrow}') // get('[option="2"]') // .should(haveClasses(['active'])) // }, // ) // test('search', // [html` //
// // // //
// `], // ({ get, wait }) => { // get('.active').should(notExist()) // get('button').click() // get('[options]') // .type('ar') // get('[option="2"]') // .should(haveClasses(['active'])) // wait(500) // get('[options]') // .type('ma') // get('[option="8"]') // .should(haveClasses(['active'])) // }, // ) // test('changing value manually changes internal state', // [html` //
// // // // //
// `], // ({ get }) => { // get('[select-tim]').click() // get('[option="4"]').should(haveClasses(['selected'])) // get('[option="1"]').should(notHaveClasses(['selected'])) // get('[toggle]').should(haveText('4')) // }, // ) // test('has accessibility attributes', // [html` //
// // // //
// `], // ({ get }) => { // get('button') // .should(haveAttribute('aria-haspopup', 'true')) // .should(haveAttribute('aria-labelledby', 'alpine-combobox-label-1')) // .should(haveAttribute('aria-expanded', 'false')) // .should(notHaveAttribute('aria-controls')) // .should(haveAttribute('id', 'alpine-combobox-button-1')) // .click() // .should(haveAttribute('aria-expanded', 'true')) // .should(haveAttribute('aria-controls', 'alpine-combobox-options-1')) // get('[options]') // .should(haveAttribute('aria-orientation', 'vertical')) // .should(haveAttribute('role', 'combobox')) // .should(haveAttribute('id', 'alpine-combobox-options-1')) // .should(haveAttribute('aria-labelledby', 'alpine-combobox-button-1')) // .should(notHaveAttribute('aria-activedescendant')) // .should(haveAttribute('tabindex', '0')) // .should(haveAttribute('aria-activedescendant', 'alpine-combobox-option-1')) // get('[option="1"]') // .should(haveAttribute('role', 'option')) // .should(haveAttribute('id', 'alpine-combobox-option-1')) // .should(haveAttribute('tabindex', '-1')) // .should(haveAttribute('aria-selected', 'false')) // get('[option="2"]') // .should(haveAttribute('role', 'option')) // .should(haveAttribute('id', 'alpine-combobox-option-2')) // .should(haveAttribute('tabindex', '-1')) // .should(haveAttribute('aria-selected', 'false')) // get('[options]') // .type('{downarrow}') // .should(haveAttribute('aria-activedescendant', 'alpine-combobox-option-2')) // get('[option="2"]') // .click() // .should(haveAttribute('aria-selected', 'true')) // }, // ) // test('"static" prop', // [html` //
// // // // //
// `], // ({ get }) => { // get('ul').should(notBeVisible()) // get('[normal-toggle]') // .should(haveText('Select Person')) // .click() // get('ul').should(notBeVisible()) // get('[real-toggle]').click() // get('ul').should(beVisible()) // get('[option="2"]').click() // get('ul').should(beVisible()) // get('[normal-toggle]').should(haveText('Arlene Mccoy')) // }, // )