diff --git a/src/pull-refresh/index.js b/src/pull-refresh/index.js index 66861f4e1..7f65f61cf 100644 --- a/src/pull-refresh/index.js +++ b/src/pull-refresh/index.js @@ -192,3 +192,5 @@ export default createComponent({ ); } }); + +// diff --git a/src/pull-refresh/test/__snapshots__/index.spec.js.snap b/src/pull-refresh/test/__snapshots__/index.spec.js.snap index 022ebe0d5..1cb7b8d68 100644 --- a/src/pull-refresh/test/__snapshots__/index.spec.js.snap +++ b/src/pull-refresh/test/__snapshots__/index.spec.js.snap @@ -79,3 +79,21 @@ exports[`not in page top 1`] = ` `; + +exports[`render success text 1`] = ` +
+
+
+
success
+
+
+
+`; + +exports[`render success text 2`] = ` +
+
+
+
+
+`; diff --git a/src/pull-refresh/test/index.spec.js b/src/pull-refresh/test/index.spec.js index 0356e9863..8b442abe2 100644 --- a/src/pull-refresh/test/index.spec.js +++ b/src/pull-refresh/test/index.spec.js @@ -5,13 +5,14 @@ test('change head content when pulling down', async () => { const wrapper = mount(PullRefresh, { propsData: { value: false + }, + listeners: { + input(value) { + wrapper.setProps({ value }); + } } }); - wrapper.vm.$on('input', value => { - wrapper.vm.value = value; - }); - const track = wrapper.find('.van-pull-refresh__track'); // pulling @@ -65,6 +66,7 @@ test('custom content by slots', async () => { expect(wrapper).toMatchSnapshot(); // loosing + trigger(track, 'touchmove', 0, 75); trigger(track, 'touchmove', 0, 100); expect(wrapper).toMatchSnapshot(); @@ -102,3 +104,35 @@ test('not in page top', () => { expect(wrapper).toMatchSnapshot(); }); + +test('render success text', async () => { + const wrapper = mount(PullRefresh, { + propsData: { + successText: 'success', + successDuration: 0 + }, + listeners: { + input(value) { + wrapper.setProps({ value }); + } + } + }); + + const track = wrapper.find('.van-pull-refresh__track'); + trigger(track, 'touchstart', 0, 0); + trigger(track, 'touchmove', 0, 100); + trigger(track, 'touchend', 0, 100); + + await later(); + + // loading + expect(wrapper.vm.value).toBeTruthy(); + wrapper.setProps({ value: false }); + + // success + expect(wrapper).toMatchSnapshot(); + + // normal + await later(); + expect(wrapper).toMatchSnapshot(); +});