File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1212 type =" text"
1313 placeholder =' Search'
1414 class =' w-24 text-xs p-2 pl-6 rounded focus:bg-grey-lighter outline-none'
15- data-search-box-input>
15+ data-search-box-input
16+ data-test-search-box-input>
1617</div >
Original file line number Diff line number Diff line change @@ -81,5 +81,7 @@ export default Component.extend({
8181
8282 _highlight ( text , start , length ) {
8383 return `${ text . slice ( 0 , start ) } <em class='docs-viewer-search__result-item__text--emphasis'>${ text . slice ( start , start + length ) } </em>${ text . slice ( start + length ) } ` ;
84- }
84+ } ,
85+
86+ 'data-test-search-result' : true ,
8587} ) ;
Original file line number Diff line number Diff line change 66 onClose = (action ' clearSearch' )
77 targetAttachment =' bottom left'
88 constraints = (array (hash to =' window' attachment =' together' pin =true ))}}
9- <ul class =" docs-viewer-search__result-list" >
9+ <ul class =" docs-viewer-search__result-list" data-test-search-result-list >
1010 {{ #each (take 5 searchResults ) as |result index |}}
1111 <li >
1212 {{ docs-header/search-result
Original file line number Diff line number Diff line change @@ -45,4 +45,12 @@ module('Acceptance | API | components', function(hooks) {
4545 assert . equal ( indexItems . length , 13 , 'correct number of items rendered' ) ;
4646 assert . ok ( indexItems . includes ( '_privateField' ) , 'private field rendered' ) ;
4747 } ) ;
48+
49+ test ( 'search box works' , async function ( assert ) {
50+ await visit ( '/sandbox' ) ;
51+
52+ assert . equal ( modulePage . searchResults . items . length , 0 , 'no search results shown' ) ;
53+ await modulePage . fillInSearchQuery ( 'sub-subsection' ) ;
54+ assert . equal ( modulePage . searchResults . items . length , 1 , 'one search result shown' ) ;
55+ } ) ;
4856} ) ;
Original file line number Diff line number Diff line change 1- import PageObject , { collection , text } from 'ember-classy-page-object' ;
1+ import BaseAddonPage from '../base' ;
2+ import { collection , text } from 'ember-classy-page-object' ;
23
3- const ClassPage = PageObject . extend ( {
4+ const ClassPage = BaseAddonPage . extend ( {
45 navItems : collection ( { scope : '[data-test-id="nav-item"]' } ) ,
56
67 title : text ( '[data-test-class-name]' ) ,
Original file line number Diff line number Diff line change 1- import PageObject , { collection , text } from 'ember-classy-page-object' ;
1+ import BaseAddonPage from '../base' ;
2+ import { collection , text } from 'ember-classy-page-object' ;
23
3- const ModulePage = PageObject . extend ( {
4+ const ModulePage = BaseAddonPage . extend ( {
45 navItems : collection ( { scope : '[data-test-id="nav-item"]' } ) ,
56
67 toggles : collection ( {
Original file line number Diff line number Diff line change 1+ import PageObject , { collection , fillable } from 'ember-classy-page-object' ;
2+
3+ const DefaultPage = PageObject . extend ( {
4+ // eslint-disable-next-line ember/avoid-leaking-state-in-ember-objects
5+ fillInSearchQuery : fillable ( '[data-test-search-box-input]' ) ,
6+ // eslint-disable-next-line ember/avoid-leaking-state-in-ember-objects
7+ searchResults : {
8+ scope : '[data-test-search-result-list]' ,
9+ items : collection ( {
10+ scope : '[data-test-search-result]'
11+ } )
12+ }
13+ } ) ;
14+
15+ export default DefaultPage ;
Original file line number Diff line number Diff line change 1- import PageObject , { collection } from 'ember-classy-page-object' ;
1+ import BaseAddonPage from './base' ;
2+ import { collection } from 'ember-classy-page-object' ;
23
3- const GuidePage = PageObject . extend ( {
4+ const GuidePage = BaseAddonPage . extend ( {
45 navItems : collection ( { scope : '[data-test-id="nav-item"]' } ) ,
56
67 // eslint-disable-next-line ember/avoid-leaking-state-in-ember-objects
You can’t perform that action at this time.
0 commit comments