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']) |     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', () => { |   describe('warnings', () => { | ||||||
|     test('Expected a function as watch handler', () => { |     test('Expected a function as watch handler', () => { | ||||||
|       const Comp = { |       const Comp = { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user