@@ -13,29 +13,39 @@ describe('SLDSLookup: ', function(){
1313 { label :'Acme Construction' }
1414 ] ;
1515
16- let generateLookup = function ( lookupInstance ) {
16+ const generateLookup = function ( lookupInstance ) {
1717 let reactCmp = TestUtils . renderIntoDocument ( lookupInstance ) ;
1818 return React . findDOMNode ( reactCmp ) ;
1919 } ;
2020
21+ const getLookup = function ( withHeader ) {
22+ return < SLDSLookup
23+ items = { items }
24+ label = "Leads"
25+ type = "lead"
26+ headerRenderer = { withHeader ?SLDSLookup . DefaultHeader :null }
27+ footerRenderer = { SLDSLookup . DefaultFooter }
28+ /> ;
29+ } ;
30+
2131 describe ( 'component renders' , function ( ) {
2232 it ( 'lookup renders' , function ( ) {
23- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
33+ let lookup = generateLookup ( getLookup ( ) ) ;
2434 expect ( lookup ) . to . not . equal ( undefined ) ;
2535 } ) ;
2636 } ) ;
2737
2838 describe ( 'component basic props render' , function ( ) {
2939 it ( 'renders label' , function ( ) {
30- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
40+ let lookup = generateLookup ( getLookup ( ) ) ;
3141 let label = lookup . getElementsByTagName ( "label" ) [ 0 ] ;
3242 expect ( label . innerText ) . to . equal ( 'Leads' ) ;
3343 } ) ;
3444 } ) ;
3545
3646 describe ( 'accessibility markup passes' , function ( ) {
3747 it ( 'label for matches input id' , function ( ) {
38- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
48+ let lookup = generateLookup ( getLookup ( ) ) ;
3949 let labelFor = lookup . getElementsByTagName ( "label" ) [ 0 ] . getAttribute ( "for" ) ;
4050 let inputId = lookup . getElementsByTagName ( "input" ) [ 0 ] . getAttribute ( "id" ) ;
4151 expect ( labelFor ) . to . equal ( inputId ) ;
@@ -45,18 +55,18 @@ describe('SLDSLookup: ', function(){
4555
4656 describe ( 'accessibility aria attributes pass' , function ( ) {
4757 it ( 'aria-haspopup is true' , function ( ) {
48- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
58+ let lookup = generateLookup ( getLookup ( ) ) ;
4959 let ariaHaspopup = lookup . getElementsByTagName ( "input" ) [ 0 ] . getAttribute ( "aria-haspopup" ) ;
5060 expect ( ariaHaspopup ) . to . equal ( 'true' ) ;
5161 } ) ;
5262 it ( 'aria-expanded is false initally' , function ( ) {
53- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
63+ let lookup = generateLookup ( getLookup ( ) ) ;
5464 let ariaExpanded = lookup . getElementsByTagName ( "input" ) [ 0 ] . getAttribute ( "aria-expanded" ) ;
5565 expect ( ariaExpanded ) . to . equal ( 'false' ) ;
5666 } ) ;
5767
5868 it ( 'aria-expanded is true when clicking on input field' , function ( ) {
59- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
69+ let lookup = generateLookup ( getLookup ( ) ) ;
6070 let input = lookup . getElementsByTagName ( "input" ) [ 0 ] ;
6171 TestUtils . Simulate . click ( input ) ;
6272 let ariaExpanded = lookup . getElementsByTagName ( "input" ) [ 0 ] . getAttribute ( "aria-expanded" ) ;
@@ -68,7 +78,7 @@ describe('SLDSLookup: ', function(){
6878 describe ( 'selecting item works' , function ( ) {
6979
7080 it ( 'no fixed header: focuses correct item' , function ( ) {
71- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
81+ let lookup = generateLookup ( getLookup ( ) ) ;
7282 let input = lookup . getElementsByTagName ( "input" ) [ 0 ] ;
7383 TestUtils . Simulate . click ( input ) ;
7484 TestUtils . Simulate . keyDown ( input , { key : "Down" , keyCode : 40 , which : 40 } ) ;
@@ -78,7 +88,7 @@ describe('SLDSLookup: ', function(){
7888 } ) ;
7989
8090 it ( 'with fixed header: focuses correct item' , function ( ) {
81- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" header = { < div > header </ div > } /> ) ;
91+ let lookup = generateLookup ( getLookup ( true ) ) ;
8292 let input = lookup . getElementsByTagName ( "input" ) [ 0 ] ;
8393 TestUtils . Simulate . click ( input ) ;
8494 TestUtils . Simulate . keyDown ( input , { key : "Down" , keyCode : 40 , which : 40 } ) ;
@@ -88,7 +98,7 @@ describe('SLDSLookup: ', function(){
8898 } ) ;
8999
90100 it ( 'selects correct item' , function ( ) {
91- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
101+ let lookup = generateLookup ( getLookup ( ) ) ;
92102 let input = lookup . getElementsByTagName ( "input" ) [ 0 ] ;
93103 TestUtils . Simulate . click ( input ) ;
94104 TestUtils . Simulate . keyDown ( input , { key : "Down" , keyCode : 40 , which : 40 } ) ;
@@ -100,7 +110,7 @@ describe('SLDSLookup: ', function(){
100110 } ) ;
101111
102112 it ( 'closes lookup menu on esc' , function ( ) {
103- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
113+ let lookup = generateLookup ( getLookup ( ) ) ;
104114 let input = lookup . getElementsByTagName ( "input" ) [ 0 ] ;
105115 TestUtils . Simulate . click ( input ) ;
106116 TestUtils . Simulate . keyDown ( input , { key : "Down" , keyCode : 40 , which : 40 } ) ;
@@ -110,7 +120,7 @@ describe('SLDSLookup: ', function(){
110120 } ) ;
111121
112122 it ( 'aria-expanded is false after selecting item' , function ( ) {
113- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
123+ let lookup = generateLookup ( getLookup ( ) ) ;
114124 let input = lookup . getElementsByTagName ( "input" ) [ 0 ] ;
115125 TestUtils . Simulate . click ( input ) ;
116126 TestUtils . Simulate . keyDown ( input , { key : "Down" , keyCode : 40 , which : 40 } ) ;
@@ -119,13 +129,14 @@ describe('SLDSLookup: ', function(){
119129 } ) ;
120130
121131 it ( 'aria-expanded is false after selecting item' , function ( ) {
122- let lookup = generateLookup ( < SLDSLookup items = { items } label = "Leads" type = "lead" /> ) ;
132+ let lookup = generateLookup ( getLookup ( ) ) ;
123133 let input = lookup . getElementsByTagName ( "input" ) [ 0 ] ;
124134 TestUtils . Simulate . click ( input ) ;
125135 TestUtils . Simulate . keyDown ( input , { key : "Down" , keyCode : 40 , which : 40 } ) ;
126136 let focusedItem = lookup . getElementsByTagName ( "ul" ) [ 0 ] . getElementsByTagName ( 'li' ) [ 0 ] ;
127137 expect ( focusedItem . className ) . to . have . string ( 'slds-theme--shade' ) ;
128138 } ) ;
139+
129140 } ) ;
130141
131142} ) ;
0 commit comments