派生自 development/c++

pansen
2019-03-07 d3b7bbe7102cd089680a828f5d8f6402c8cf6342
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#include "doctest/doctest.h"
#include "basic/pipe_element/ffmpeg/basic_struct_for_video_image.h"
#include "basic/util/app/AppUtil.h"
#include <iostream>
TEST_CASE("BaseTest1") {
    ImageName_s_t st;
    st.m_timeStamp="1245656";
    st.m_camId="2222";
    st.m_frameId =1;
    std::string imageName = st.toString();
    CHECK(!imageName.empty());
    ImageName_s_t s2 = ImageName_s_t::fromString(imageName);
    CHECK(s2.Valid());
    std::string str2 = s2.toString();
    CHECK_EQ(imageName,str2);
}
 
TEST_CASE("BaseTest2"){
    //ImageName_s_t s2 = ImageName_s_t::fromString("1548399702_DS-2CD5026EFWD20180202AACH181129936_244");
 
    //CHECK(s2.Valid());
}
 
TEST_CASE("BaseTest3"){
    //ImageName_s_t s2 = ImageName_s_t::fromString("2019-01-25-16-49-19_DS-2CD2T46WDA2-I20180622AACHC30488278_253");
    //CHECK(s2.Valid());
}
 
 
TEST_CASE("VideoName") {
    VideoName_s_t st;
    st.m_timeStamp="22222";
    st.m_camId="abdfdf_234234_";
    st.m_startFrameId = 3333;
    st.m_endFrameId =4444;
    std::string videoName=st.ToVideoName();
    CHECK_FALSE(videoName.empty());
    VideoName_s_t fromString = VideoName_s_t::fromString(videoName);
 
    std::cout<<fromString.m_camId<<std::endl;
    std::cout<<fromString.m_timeStamp<<std::endl;
    std::cout<<fromString.m_startFrameId<<std::endl;
    std::cout<<fromString.m_endFrameId<<std::endl;
    std::cout<<fromString.ToVideoName()<<std::endl;
            CHECK(fromString.Valid());
 
}
 
 
TEST_CASE("BetweenTest"){
    std::string strImageKey ="_20160718AACH626459906$2019-01-31-10-34-20_1170200";
    std::string strVideoName = "_20160718AACH626459906$2019-01-31-10-34-30_1170065_1170464.mp4";
 
    ImageName_s_t imgSt = ImageName_s_t::fromString(strImageKey);
    VideoName_s_t videoSt = VideoName_s_t::fromString(strVideoName);
    CHECK(imgSt.Valid());
    CHECK(videoSt.Valid());
    CHECK((imgSt.m_frameId < videoSt.m_endFrameId));
    CHECK(imgSt.m_frameId > videoSt.m_startFrameId);
    auto firstTime = AppUtil::ParseFromHypenTimeStr(imgSt.m_timeStamp);
    auto secondTime = AppUtil::ParseFromHypenTimeStr(videoSt.m_timeStamp);
    CHECK(AppUtil::IsRightAfterLeft(firstTime,secondTime));
    CHECK_FALSE(AppUtil::IsRightAfterLeft(secondTime,firstTime));
 
}
 
 
TEST_CASE("BetweenTest"){
    std::string strImageKey ="DS-2CD5026EFWD20180202AACH181129936$2019-02-01-09-49-24_1588152";
    std::string strVideoName = "DS-2CD5026EFWD20180202AACH181129936$2019-02-01-09-49-35_1587925_1588424.mp4";
 
    ImageName_s_t imgSt = ImageName_s_t::fromString(strImageKey);
    VideoName_s_t videoSt = VideoName_s_t::fromString(strVideoName);
    CHECK(imgSt.Valid());
    CHECK(videoSt.Valid());
    CHECK((imgSt.m_frameId < videoSt.m_endFrameId));
    CHECK(imgSt.m_frameId > videoSt.m_startFrameId);
    auto firstTime = AppUtil::ParseFromHypenTimeStr(imgSt.m_timeStamp);
    auto secondTime = AppUtil::ParseFromHypenTimeStr(videoSt.m_timeStamp);
    CHECK(AppUtil::IsRightAfterLeft(firstTime,secondTime));
    CHECK_FALSE(AppUtil::IsRightAfterLeft(secondTime,firstTime));
 
}
 
TEST_CASE("BetweenLimit"){
    std::string strImageKey ="DS-2CD5026EFWD20180202AACH181129936$2019-02-01-09-49-35_1588152";
    std::string strVideoName = "DS-2CD5026EFWD20180202AACH181129936$2019-02-01-09-49-35_1587925_1588424.mp4";
 
    ImageName_s_t imgSt = ImageName_s_t::fromString(strImageKey);
    VideoName_s_t videoSt = VideoName_s_t::fromString(strVideoName);
    CHECK(imgSt.Valid());
    CHECK(videoSt.Valid());
    CHECK((imgSt.m_frameId < videoSt.m_endFrameId));
    CHECK(imgSt.m_frameId > videoSt.m_startFrameId);
    auto firstTime = AppUtil::ParseFromHypenTimeStr(imgSt.m_timeStamp);
    auto secondTime = AppUtil::ParseFromHypenTimeStr(videoSt.m_timeStamp);
    CHECK(AppUtil::IsRightAfterLeft(firstTime,secondTime));
    //CHECK_FALSE(AppUtil::IsRightAfterLeft(secondTime,firstTime));
 
}