yangys
2024-11-15 d66fe6d46cdbaeb88e68ad96da6deb0b35cd131b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
package com.qianwen.smartman.modules.smis.service.impl;
 
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
 
import org.junit.jupiter.api.Test;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
 
import org.apache.commons.lang3.StringUtils;
import org.junit.jupiter.api.Assertions;
import com.qianwen.smartman.modules.smis.dto.CalendarDateDTO;
 
public class CalendarServiceImplTest {
 
    @Test
    public void testDupulicateDate() {
        CalendarServiceImpl s = new CalendarServiceImpl();
        
        List<CalendarDateDTO> dateDTOList = new ArrayList<>();
        Assertions.assertNotNull(s.dupulicateDate(null));
        
        Assertions.assertNotNull(s.dupulicateDate(dateDTOList));
        
        LocalDate d1 = LocalDate.now();
        CalendarDateDTO dto1 = new CalendarDateDTO();
        dto1.setCalendarDate(d1);
        
        
        Assertions.assertTrue(s.dupulicateDate(Arrays.asList(dto1)).isEmpty());
        
        CalendarDateDTO dto2 = new CalendarDateDTO();
        dto2.setCalendarDate(d1);
        
        List<LocalDate> dupList = s.dupulicateDate(Arrays.asList(dto1,dto2));
        Assertions.assertTrue(dupList.size()==1);
        
        //昨天,加入列表
        LocalDate d3 = d1.minusDays(1);
        CalendarDateDTO dto3 = new CalendarDateDTO();
        dto3.setCalendarDate(d3);
        dupList = s.dupulicateDate(Arrays.asList(dto1,dto2,dto3));
        Assertions.assertTrue(dupList.size()==1);
        
        //和dto3数据相同,应该是2条重复了
        LocalDate d4 = d1.minusDays(1);
        CalendarDateDTO dto4 = new CalendarDateDTO();
        dto4.setCalendarDate(d4);
        dupList = s.dupulicateDate(Arrays.asList(dto1,dto2,dto3,dto4));
        Assertions.assertTrue(dupList.size()==2);
    }
    
    @Test
    public void testFormatDate() {
        
        LocalDate d1 = LocalDate.of(2024, 11, 5);
        LocalDate d3 = LocalDate.of(2024, 11, 6);
        List<LocalDate> dupList = Arrays.asList(d1,d3);
        
        String str = StringUtils.join(dupList.stream().map(dt -> dt.format(DateTimeFormatter.ISO_DATE)).collect(Collectors.toList()), ",");
        
        System.out.print("r="+str);
    }
    
    @Test
    public void testDef() {
        
        LocalDate d1 = LocalDate.of(1970, 1, 1);
        Assertions.assertEquals(0, d1.toEpochDay());
        
        d1 = LocalDate.of(1970, 1, 30);
        Assertions.assertEquals(29, d1.toEpochDay());
    }
}