Frans 7 年 前
コミット
1636bb5951

+ 1 - 0
build/webpack.demo.dev.conf.js

@@ -28,5 +28,6 @@ module.exports = merge(baseConf, {
         index: 'demo.html',
         compress: true, //gzip压缩
         historyApiFallback: true,
+        disableHostCheck: true
     }
 });

+ 1 - 0
build/webpack.doc.dev.conf.js

@@ -15,5 +15,6 @@ module.exports = merge(baseConf, {
         compress: true,
         index: 'default.html',
         historyApiFallback: true,
+        disableHostCheck: true
     }
 });

+ 23 - 0
src/packages/radio/__test__/radio.spec.js

@@ -0,0 +1,23 @@
+import { shallowMount } from '@vue/test-utils'
+import Radio from '../radio.vue';
+import Vue from 'vue';
+
+
+// describe('Radio.vue', () => {
+//     const wrapper = shallowMount(Radio, {
+//         propsData: {
+//             value:'a',
+            
+//         }
+//     });
+
+
+//     it('选中状态', () => {
+//         wrapper.setProps({ label: 'a' });
+
+//         return Vue.nextTick().then(function () {
+//             expect(wrapper.find('input').attributes('checked')).toBe(true);
+//         })
+//     });
+
+// });

+ 47 - 0
src/packages/slider/__test__/slider.spec.js

@@ -0,0 +1,47 @@
+import { shallowMount } from '@vue/test-utils'
+import Slider from '../slider.vue';
+import Vue from 'vue';
+
+
+describe('Slider.vue', () => {
+    const wrapper = shallowMount(Slider, {
+        propsData: {
+            value: 5,
+            range: [-10, 10]
+        }
+    });
+
+    it('无标签', () => {
+        return Vue.nextTick().then(function () {
+            expect(wrapper.contains('.nut-slider-box')).toBe(true);
+            expect(wrapper.contains('.nut-slider-Handle')).toBe(true);
+            expect(wrapper.contains('.nut-slider-label')).toBe(false);
+        })
+    });
+
+    it('有标签', () => {
+        wrapper.setProps({ showLabel:true });
+
+        return Vue.nextTick().then(function () {
+            expect(wrapper.contains('.nut-slider-box')).toBe(true);
+            expect(wrapper.contains('.nut-slider-Handle')).toBe(true);
+            expect(wrapper.contains('.nut-slider-label')).toBe(true);
+            expect(wrapper.find('.nut-slider-label').text()).toBe('5');
+        })
+    });
+
+    it('两端展示可选范围', () => {
+        wrapper.setProps({ showLabel: true, showRangeTxt:true });
+
+        return Vue.nextTick().then(function () {
+            expect(wrapper.contains('.nut-slider-box')).toBe(true);
+            expect(wrapper.contains('.nut-slider-Handle')).toBe(true);
+            expect(wrapper.contains('.nut-slider-label')).toBe(true);
+            expect(wrapper.contains('.nut-slider-left-text')).toBe(true);
+            expect(wrapper.contains('.nut-slider-right-text')).toBe(true);
+            expect(wrapper.find('.nut-slider-left-text').text()).toBe('-10');
+            expect(wrapper.find('.nut-slider-right-text').text()).toBe('10');
+        })
+    });
+
+});