#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));
|
|
}
|