File tree Expand file tree Collapse file tree 5 files changed +53
-2
lines changed
test/unit/specs/mount/Wrapper Expand file tree Collapse file tree 5 files changed +53
-2
lines changed Original file line number Diff line number Diff line change @@ -31,3 +31,16 @@ expect(wrapper.emitted().foo.length).toBe(2)
3131// assert event payload
3232expect (wrapper .emitted ().foo [1 ]).toEqual ([123 ])
3333```
34+
35+ You can also write the above as follows:
36+
37+ ``` js
38+ // assert event has been emitted
39+ expect (wrapper .emitted (' foo' )).toBeTruthy ()
40+
41+ // assert event count
42+ expect (wrapper .emitted (' foo' ).length ).toBe (2 )
43+
44+ // assert event payload
45+ expect (wrapper .emitted (' foo' )[1 ]).toEqual ([123 ])
46+ ```
Original file line number Diff line number Diff line change @@ -31,3 +31,16 @@ expect(wrapper.emitted().foo.length).toBe(2)
3131// イベントのペイロードを検証します
3232expect (wrapper .emitted ().foo [1 ]).toEqual ([123 ])
3333```
34+
35+ 別の構文があります。
36+
37+ ``` js
38+ // イベントが発行されたか検証します
39+ expect (wrapper .emitted (' foo' )).toBeTruthy ()
40+
41+ // イベントの数を検証します
42+ expect (wrapper .emitted (' foo' ).length ).toBe (2 )
43+
44+ // イベントのペイロードを検証します
45+ expect (wrapper .emitted (' foo' )[1 ]).toEqual ([123 ])
46+ ```
Original file line number Diff line number Diff line change @@ -62,10 +62,13 @@ export default class Wrapper implements BaseWrapper {
6262 /**
6363 * Returns an object containing custom events emitted by the Wrapper vm
6464 */
65- emitted ( ) {
65+ emitted ( event : ? string ) {
6666 if ( ! this . _emitted && ! this . vm ) {
6767 throwError ( 'wrapper.emitted() can only be called on a Vue instance' )
6868 }
69+ if ( event ) {
70+ return this . _emitted [ event ]
71+ }
6972 return this . _emitted
7073 }
7174
Original file line number Diff line number Diff line change 11import mount from '~src/mount'
22
33describe ( 'emitted' , ( ) => {
4+ it ( 'captures emitted events with a different api' , ( ) => {
5+ const wrapper = mount ( {
6+ render : h => h ( 'div' )
7+ } )
8+
9+ wrapper . vm . $emit ( 'foo' )
10+ expect ( wrapper . emitted ( 'foo' ) ) . to . exist
11+ expect ( wrapper . emitted ( 'foo' ) . length ) . to . equal ( 1 )
12+ expect ( wrapper . emitted ( 'foo' ) [ 0 ] ) . to . eql ( [ ] )
13+
14+ expect ( wrapper . emitted ( 'bar' ) ) . not . to . exist
15+ wrapper . vm . $emit ( 'bar' , 1 , 2 , 3 )
16+ expect ( wrapper . emitted ( 'bar' ) ) . to . exist
17+ expect ( wrapper . emitted ( 'bar' ) . length ) . to . equal ( 1 )
18+ expect ( wrapper . emitted ( 'bar' ) [ 0 ] ) . to . eql ( [ 1 , 2 , 3 ] )
19+
20+ wrapper . vm . $emit ( 'foo' , 2 , 3 , 4 )
21+ expect ( wrapper . emitted ( 'foo' ) ) . to . exist
22+ expect ( wrapper . emitted ( 'foo' ) . length ) . to . equal ( 2 )
23+ expect ( wrapper . emitted ( 'foo' ) [ 1 ] ) . to . eql ( [ 2 , 3 , 4 ] )
24+ } )
25+
426 it ( 'captures emitted events' , ( ) => {
527 const wrapper = mount ( {
628 render : h => h ( 'div' )
Original file line number Diff line number Diff line change @@ -79,7 +79,7 @@ interface Wrapper<V extends Vue> extends BaseWrapper {
7979 text ( ) : string
8080 name ( ) : string
8181
82- emitted ( ) : { [ name : string ] : Array < Array < any > > }
82+ emitted ( string ? event ) : { [ name : string ] : Array < Array < any > > }
8383 emittedByOrder ( ) : Array < { name : string , args : Array < any > } >
8484}
8585
You can’t perform that action at this time.
0 commit comments