From cf03538f94e19e02ce584457ba63be85a75b5903 Mon Sep 17 00:00:00 2001 From: windy <1374721899@qq.com> Date: Mon, 2 Sep 2019 16:51:22 +0800 Subject: [PATCH] =?UTF-8?q?test:=20=E6=97=A5=E6=9C=9F=E9=9D=A2=E6=9D=BF?= =?UTF-8?q?=E6=8E=A7=E4=BB=B6=E8=A6=86=E7=9B=96=E7=8E=87100%?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gruntfile.js | 4 +- karma.conf.js | 1 + src/widget/datepane/__test__/datepane.test.js | 143 ++++++++++++++++++ 3 files changed, 146 insertions(+), 2 deletions(-) create mode 100644 src/widget/datepane/__test__/datepane.test.js diff --git a/Gruntfile.js b/Gruntfile.js index d1ea19148..1d2e978d7 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -74,10 +74,10 @@ module.exports = function (grunt) { dest: "dist/case.js" }, widgetJs: { - src: [ + src: filterPath([ "src/widget/**/*.js", "src/component/**/*.js" - ], + ]), dest: "dist/widget.js" }, routerJs: { diff --git a/karma.conf.js b/karma.conf.js index ae5a5a85f..398ac8fa9 100644 --- a/karma.conf.js +++ b/karma.conf.js @@ -21,6 +21,7 @@ module.exports = function (config) { "src/core/foundation.js", "src/core/lodash.js", "src/core/base.js", + "i18n/i18n.cn.js", "src/core/ob.js", "src/core/widget.js", "src/core/shortcut.js", diff --git a/src/widget/datepane/__test__/datepane.test.js b/src/widget/datepane/__test__/datepane.test.js new file mode 100644 index 000000000..0c56324a4 --- /dev/null +++ b/src/widget/datepane/__test__/datepane.test.js @@ -0,0 +1,143 @@ +/** + * @author windy + * @version 2.0 + * Created by windy on 2019/9/2 + */ + +describe("DatePane", function () { + + /** + * test_author_windy + */ + it("defaultValue", function () { + var datePane = BI.Test.createWidget({ + type: "bi.dynamic_date_pane", + value: { + type: 1, + value: { + year: 2017, + month: 12, + day: 11 + } + }, + }); + expect(datePane.element.find(".bi-year-combo .bi-label").text()).to.equal("2017"); + expect(datePane.element.find(".bi-month-combo .bi-label").text()).to.equal("12"); + expect(datePane.element.find(".bi-calendar .bi-list-item-select.active .bi-text").text()).to.equal("11"); + datePane.destroy(); + }); + + /** + * test_author_windy + */ + it("setStaticValue", function () { + var datePane = BI.Test.createWidget({ + type: "bi.dynamic_date_pane", + }); + datePane.setValue({ + type: 1, + value: { + year: 2017, + month: 12, + day: 11 + } + }); + expect(datePane.element.find(".bi-year-combo .bi-label").text()).to.equal("2017"); + expect(datePane.element.find(".bi-month-combo .bi-label").text()).to.equal("12"); + expect(datePane.element.find(".bi-calendar .bi-list-item-select.active .bi-text").text()).to.equal("11"); + datePane.destroy(); + }); + + /** + * test_author_windy + */ + it("setDynamicValue", function () { + var datePane = BI.Test.createWidget({ + type: "bi.dynamic_date_pane", + }); + datePane.setValue({ + type: 2, + value: { + year: -1, + month: 1, + quarter: -1, + week: 1, + day: 1 + } + }); + expect(datePane.element.find(".bi-line-segment-button.active").text()).to.equal("动态时间"); + + datePane.setValue({ + type: 2, + value: { + workDay: 1 + } + }); + expect(datePane.element.find(".bi-line-segment-button.active").text()).to.equal("动态时间"); + datePane.destroy(); + }); + + /** + * test_author_windy + */ + it("getStaticValue", function (done) { + var datePane = BI.Test.createWidget({ + type: "bi.dynamic_date_pane", + value: { + type: 1, + value: { + year: 2019, + month: 3, + day: 30 + } + } + }); + BI.nextTick(function () { + datePane.element.find(".bi-month-combo .bi-date-triangle-trigger").click(); + datePane.element.find(".bi-month-combo .bi-list-item-select").get(2).click(); + BI.nextTick(function () { + datePane.element.find(".bi-calendar:visible .bi-list-item-select :contains(27)").parent().click(); + expect(datePane.getValue()).to.deep.equal({ + type: 1, + value: { + year: 2019, + month: 2, + day: 27 + } + }); + datePane.destroy(); + done(); + }) + }); + }); + + /** + * test_author_windy + */ + it("getDynamicValue", function (done) { + var datePane = BI.Test.createWidget({ + type: "bi.dynamic_date_pane", + value: { + type: 2, + value: {} + } + }); + BI.nextTick(function () { + // 先点到静态时间再到动态时间 + datePane.element.find(".bi-linear-segment .bi-line-segment-button").get(0).click(); + datePane.element.find(".bi-linear-segment .bi-line-segment-button").get(1).click(); + BI.nextTick(function () { + datePane.element.find(".bi-multi-select-item.active").click(); + datePane.element.find(".bi-multi-select-item").click(); + expect(datePane.getValue()).to.deep.equal({ + type: 2, + value: { + workDay: -0 + } + }); + datePane.destroy(); + done(); + }) + }); + }); +});