Преглед изворни кода

test: add datepicker monthRange e2e test

林艳 пре 11 месеци
родитељ
комит
ea57b6c529

+ 17 - 0
cypress/e2e/datePicker.spec.js

@@ -910,4 +910,21 @@ describe('DatePicker', () => {
         cy.get('.semi-popover .semi-datepicker-day-selected-start').contains('15');
         cy.get('.semi-popover .semi-datepicker-day-selected-end').contains('20');
     });
+
+    it('auto Correction month under month range', () => {
+        cy.visit('http://localhost:6006/iframe.html?args=&id=datepicker--fix-2567&viewMode=story');
+        cy.get('.semi-input').eq(0).click();
+        cy.get('.semi-scrolllist').eq(1).contains('2024').click();
+        cy.get('.semi-input').eq(0).should("have.value", "2024-11 ~ 2024-11");
+        cy.root().click('right');
+
+        cy.get('.semi-input').eq(1).click();
+        cy.get('.semi-scrolllist').eq(1).contains('2024').click();
+        cy.get('.semi-input').eq(1).should("have.value", "2024-11 ~ 2024-11");
+        cy.root().click('right');
+
+        cy.get('.semi-input').eq(2).click();
+        cy.get('.semi-scrolllist').eq(0).contains('2025').click();
+        cy.get('.semi-input').eq(2).should("have.value", "2025-01 ~ 2025-01");
+    })
 });

+ 25 - 0
packages/semi-ui/datePicker/_story/datePicker.stories.jsx

@@ -1198,3 +1198,28 @@ CashedSelectedValue.storyName = "cashedSelectedValue";
 export const Fix1982 = () => {
   return <DatePicker type="monthRange" style={{ width: 200 }} />
 }
+
+
+export const Fix2567 = () => {
+  const disabledDate = (date) => {
+    const deadDate = new Date('2025/3/1 00:00:00');
+    const startDate = new Date('2024/11/1 00:00:00');
+    return date.getTime() < startDate.getTime() || date.getTime() > deadDate.getTime(); 
+  }
+  return (
+    <div>
+      <div>datePicker monthRange 对于三种需要矫正日期的处理</div>
+      <br />
+      <div>点击右侧面板 2024</div>
+      <DatePicker defaultValue={['2024-11', '2025-01']}type="monthRange"  disabledDate={disabledDate} />
+      <br />
+      <br />
+      <div>点击右侧面板 2024</div>
+      <DatePicker defaultValue={['2024-12', '2025-01']}type="monthRange"  disabledDate={disabledDate} />
+      <br />
+      <br />
+      <div>点击左侧面板 2025</div>
+      <DatePicker defaultValue={['2024-11', '2025-01']}type="monthRange"  disabledDate={disabledDate} />
+    </div>
+  )
+}