test(runtime-core): inject from closest ancestor (#2329)
This commit is contained in:
		
							parent
							
								
									6df3675548
								
							
						
					
					
						commit
						962af85220
					
				| @ -888,6 +888,56 @@ describe('api: options', () => { | ||||
|     expect(watchSpy.mock.calls[0].slice(0, 2)).toEqual(['hello', 'mixin3']) | ||||
|   }) | ||||
| 
 | ||||
|   test('injection from closest ancestor', () => { | ||||
|     const Root = defineComponent({ | ||||
|       provide: { | ||||
|         a: 'root' | ||||
|       }, | ||||
|       render() { | ||||
|         return [h(Mid), ' ', h(MidWithProvide), ' ', h(MidWithMixinProvide)] | ||||
|       } | ||||
|     }) | ||||
| 
 | ||||
|     const Mid = { | ||||
|       render() { | ||||
|         return h(Child) | ||||
|       } | ||||
|     } as any | ||||
| 
 | ||||
|     const MidWithProvide = { | ||||
|       provide: { | ||||
|         a: 'midWithProvide' | ||||
|       }, | ||||
|       render() { | ||||
|         return h(Child) | ||||
|       } | ||||
|     } as any | ||||
| 
 | ||||
|     const mixin = { | ||||
|       provide: { | ||||
|         a: 'midWithMixinProvide' | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     const MidWithMixinProvide = { | ||||
|       mixins: [mixin], | ||||
|       render() { | ||||
|         return h(Child) | ||||
|       } | ||||
|     } as any | ||||
| 
 | ||||
|     const Child = { | ||||
|       inject: ['a'], | ||||
|       render() { | ||||
|         return this.a | ||||
|       } | ||||
|     } as any | ||||
| 
 | ||||
|     expect(renderToString(h(Root))).toBe( | ||||
|       'root midWithProvide midWithMixinProvide' | ||||
|     ) | ||||
|   }) | ||||
| 
 | ||||
|   describe('warnings', () => { | ||||
|     test('Expected a function as watch handler', () => { | ||||
|       const Comp = { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user