@@ -4,7 +4,8 @@ import { findDOMNode } from 'react-dom';
44
55var React = require ( 'react/addons' ) ;
66var Select = require ( '../src/Multiselect.jsx' )
7- , TagList = require ( '../src/MultiselectTagList.jsx' ) ;
7+ , TagList = require ( '../src/MultiselectTagList.jsx' )
8+ , $t = require ( 'teaspoon' ) ;
89
910var TestUtils = React . addons . TestUtils
1011 , render = TestUtils . renderIntoDocument
@@ -252,27 +253,46 @@ describe('Multiselect', function(){
252253 expect ( input . value ) . to . be ( 'jim' )
253254 } )
254255
256+ it ( 'should not trigger form submission' , function ( ) {
257+ let spy ;
258+ let select = $t (
259+ < form action = '/' onSubmit = { ( ) => { throw new Error ( 'should not submit!' ) } } >
260+ < Select searchTerm = "jim" data = { dataList } onSearch = { ( ) => { } } onKeyDown = { spy = sinon . spy ( ) } />
261+ </ form >
262+ ) . render ( ) ;
255263
256- it ( 'should show create tag correctly' , function ( ) {
257- var select = render ( < Select searchTerm = "custom tag" onCreate = { ( ) => { } } data = { dataList } onSearch = { ( ) => { } } /> ) ;
258-
259- expect ( function err ( ) {
260- findClass ( select , 'rw-multiselect-create-tag' ) } ) . to . not . throwException ( )
261-
262- select = render ( < Select onCreate = { ( ) => { } } data = { dataList } onSearch = { ( ) => { } } /> )
263-
264- expect ( function err ( ) {
265- findClass ( select , 'rw-multiselect-create-tag' ) } ) . to . throwException ( )
264+ select . find ( 'input' )
265+ . trigger ( 'keyDown' , { key : 'Enter' } )
266266
267- select = render ( < Select searchTerm = "custom tag" data = { dataList } onSearch = { ( ) => { } } /> )
268-
269- expect ( function err ( ) {
270- findClass ( select , 'rw-multiselect-create-tag' ) } ) . to . throwException ( )
271-
272- select = render ( < Select searchTerm = "asfasfas tag" data = { dataList } onSearch = { ( ) => { } } /> )
267+ expect ( spy . calledOnce ) . to . equal ( true ) ;
268+ } )
273269
274- expect ( function err ( ) {
275- findClass ( select , 'rw-multiselect-create-tag' ) } ) . to . throwException ( )
270+ it ( 'should show create tag correctly' , function ( ) {
271+ var select = $t (
272+ < Select
273+ searchTerm = "custom tag"
274+ onCreate = { ( ) => { } }
275+ data = { dataList }
276+ onSearch = { ( ) => { } }
277+ />
278+ ) ;
279+
280+ // select
281+ // .render()
282+ // .tap(s => s
283+ // .single('.rw-multiselect-create-tag')
284+ // )
285+ // .props('searchTerm', undefined)
286+ // .tap(s => {
287+ // s
288+ // .find('.rw-multiselect-create-tag').length
289+ // .should.equal(0)
290+ // })
291+ // .props({searchTerm: 'custom', onCreate: undefined })
292+ // .tap(s => s
293+ // .find('.rw-multiselect-create-tag').length
294+ // .should.equal(0)
295+ // )
276296 } )
277297
278298 it ( 'should call onCreate' , function ( ) {
0 commit comments