diff --git a/packages/components/config-provider/__tests__/config-provider.test.tsx b/packages/components/config-provider/__tests__/config-provider.test.tsx index fd83b824a4..cdef17f44d 100644 --- a/packages/components/config-provider/__tests__/config-provider.test.tsx +++ b/packages/components/config-provider/__tests__/config-provider.test.tsx @@ -4,7 +4,7 @@ import { afterEach, beforeEach, describe, expect, it } from 'vitest' import { useLocale } from '@element-plus/hooks' import Chinese from '@element-plus/locale/lang/zh-cn' import English from '@element-plus/locale/lang/en' -import { ElButton, ElMessage } from '@element-plus/components' +import { ElButton, ElMessage, ElPagination } from '@element-plus/components' import { rAF } from '@element-plus/test-utils/tick' import { useGlobalComponentSettings, @@ -281,5 +281,25 @@ describe('config-provider', () => { expect(vm.size).toBe('small') }) + + // #18004 + it('dynamically modify global size configuration', async () => { + const size = ref('small') + const wrapper = mount(() => ( + + + + + )) + const button = wrapper.findComponent(ElButton) + const pagination = wrapper.findComponent(ElPagination) + expect(button.vm.$el.className.includes('small')).toBe(true) + expect(pagination.vm.$el.className.includes('small')).toBe(true) + + size.value = 'large' + await nextTick() + expect(button.vm.$el.className.includes('large')).toBe(true) + expect(pagination.vm.$el.className.includes('large')).toBe(true) + }) }) }) diff --git a/packages/components/input/__tests__/input.test.tsx b/packages/components/input/__tests__/input.test.tsx index aaeb68a467..7e7235ed58 100644 --- a/packages/components/input/__tests__/input.test.tsx +++ b/packages/components/input/__tests__/input.test.tsx @@ -48,10 +48,15 @@ describe('Input.vue', () => { expect(inputElm.element.value).toBe('') }) - test('disabled', () => { + test('disabled', async () => { const wrapper = mount(() => ) const inputElm = wrapper.find('input') expect(inputElm.element.disabled).not.toBeNull() + + // trigger click should not focus #18012 + inputElm.trigger('click') + await nextTick() + expect(inputElm.element.className.includes('is-focus')).toBe(false) }) describe('test emoji', () => {