增加单元测试 -20260616

This commit is contained in:
2026-06-16 11:11:34 +08:00
parent 63c530c3ac
commit 2298daad7f
28 changed files with 778 additions and 24 deletions

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test; package com.gbg.activate.video;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.config; package com.gbg.activate.video.config;
import com.gbg.activate.video.config.DownloadSchedulerConfig; import com.gbg.activate.video.config.DownloadSchedulerConfig;
import com.gbg.activate.video.job.AudioFileCleanupJob; import com.gbg.activate.video.job.AudioFileCleanupJob;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.config; package com.gbg.activate.video.config;
import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.druid.pool.DruidDataSource;
import com.gbg.activate.video.config.DruidConfig; import com.gbg.activate.video.config.DruidConfig;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.config; package com.gbg.activate.video.config;
import com.gbg.activate.video.config.GBGBase64Utils; import com.gbg.activate.video.config.GBGBase64Utils;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.config; package com.gbg.activate.video.config;
import com.gbg.activate.video.config.GBGDruidPasswordCallback; import com.gbg.activate.video.config.GBGDruidPasswordCallback;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.config; package com.gbg.activate.video.config;
import com.gbg.activate.video.config.ImageSdkConfig; import com.gbg.activate.video.config.ImageSdkConfig;
import com.gbg.activate.video.config.ImageSdkParams; import com.gbg.activate.video.config.ImageSdkParams;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.config; package com.gbg.activate.video.config;
import com.gbg.activate.video.config.ImageSdkParams; import com.gbg.activate.video.config.ImageSdkParams;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.constant; package com.gbg.activate.video.constant;
import com.gbg.activate.video.constant.DownloadStatus; import com.gbg.activate.video.constant.DownloadStatus;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.controller; package com.gbg.activate.video.controller;
import com.gbg.activate.video.controller.RecordingViewController; import com.gbg.activate.video.controller.RecordingViewController;
import com.gbg.activate.video.service.IRecordingViewService; import com.gbg.activate.video.service.IRecordingViewService;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.controller; package com.gbg.activate.video.controller;
import com.gbg.activate.video.controller.VideoViewController; import com.gbg.activate.video.controller.VideoViewController;
import com.gbg.activate.video.service.IVideoViewService; import com.gbg.activate.video.service.IVideoViewService;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.entity; package com.gbg.activate.video.entity;
import com.gbg.activate.video.entity.RecordingDownloadDO; import com.gbg.activate.video.entity.RecordingDownloadDO;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.entity; package com.gbg.activate.video.entity;
import com.gbg.activate.video.entity.RecordingPendingDownloadQueueDO; import com.gbg.activate.video.entity.RecordingPendingDownloadQueueDO;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.entity; package com.gbg.activate.video.entity;
import com.gbg.activate.video.entity.VideoSigningDownloadRecordDO; import com.gbg.activate.video.entity.VideoSigningDownloadRecordDO;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.entity; package com.gbg.activate.video.entity;
import com.gbg.activate.video.entity.VideoSigningPendingDownloadQueueDO; import com.gbg.activate.video.entity.VideoSigningPendingDownloadQueueDO;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.job; package com.gbg.activate.video.job;
import com.gbg.activate.video.job.AudioFileCleanupJob; import com.gbg.activate.video.job.AudioFileCleanupJob;
import com.gbg.activate.video.service.IAudioFileCleanupService; import com.gbg.activate.video.service.IAudioFileCleanupService;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.job; package com.gbg.activate.video.job;
import com.gbg.activate.video.job.ClearExpiredFileJob; import com.gbg.activate.video.job.ClearExpiredFileJob;
import com.gbg.activate.video.service.IClearExpiredFileService; import com.gbg.activate.video.service.IClearExpiredFileService;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.job; package com.gbg.activate.video.job;
import com.gbg.activate.video.job.RecordingDownloadJob; import com.gbg.activate.video.job.RecordingDownloadJob;
import com.gbg.activate.video.service.IDownloadRecordingTaskService; import com.gbg.activate.video.service.IDownloadRecordingTaskService;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.job; package com.gbg.activate.video.job;
import com.gbg.activate.video.job.VideoDownloadJob; import com.gbg.activate.video.job.VideoDownloadJob;
import com.gbg.activate.video.service.IDownloadTaskService; import com.gbg.activate.video.service.IDownloadTaskService;

View File

@@ -0,0 +1,181 @@
package com.gbg.activate.video.mapper;
import com.gbg.activate.video.entity.RecordingDownloadDO;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import java.util.Date;
public class RecordingDownloadSqlProviderTest {
private final RecordingDownloadSqlProvider provider = new RecordingDownloadSqlProvider();
@Test
public void testInsertSelectiveWithAllFields() {
RecordingDownloadDO record = new RecordingDownloadDO();
record.setApplicationNumber("APP001");
record.setCallId("CALL001");
record.setImageId("IMG001");
record.setImageName("test.mp4");
record.setImageType("mp4");
record.setImageSize("1024");
record.setCreateTime("2025-01-01");
record.setDownloadTime(new Date());
record.setImageUrl("http://example.com/test.mp4");
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Recording_DownLoad_Record"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Call_Id"));
Assertions.assertTrue(sql.contains("Image_Id"));
Assertions.assertTrue(sql.contains("Image_Name"));
Assertions.assertTrue(sql.contains("Image_Type"));
Assertions.assertTrue(sql.contains("Image_Size"));
Assertions.assertTrue(sql.contains("Create_Time"));
Assertions.assertTrue(sql.contains("Download_Time"));
Assertions.assertTrue(sql.contains("Image_Url"));
}
@Test
public void testInsertSelectiveWithNullFields() {
RecordingDownloadDO record = new RecordingDownloadDO();
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Recording_DownLoad_Record"));
Assertions.assertFalse(sql.contains("Application_Number"));
Assertions.assertFalse(sql.contains("Call_Id"));
Assertions.assertFalse(sql.contains("Image_Id"));
Assertions.assertFalse(sql.contains("Image_Name"));
Assertions.assertFalse(sql.contains("Image_Type"));
Assertions.assertFalse(sql.contains("Image_Size"));
Assertions.assertFalse(sql.contains("Create_Time"));
Assertions.assertFalse(sql.contains("Download_Time"));
Assertions.assertFalse(sql.contains("Image_Url"));
}
@Test
public void testInsertSelectiveWithPartialFields() {
RecordingDownloadDO record = new RecordingDownloadDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
record.setImageName("test.mp4");
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Recording_DownLoad_Record"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Image_Id"));
Assertions.assertTrue(sql.contains("Image_Name"));
Assertions.assertFalse(sql.contains("Call_Id"));
Assertions.assertFalse(sql.contains("Image_Type"));
Assertions.assertFalse(sql.contains("Image_Size"));
Assertions.assertFalse(sql.contains("Create_Time"));
Assertions.assertFalse(sql.contains("Download_Time"));
Assertions.assertFalse(sql.contains("Image_Url"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithAllFields() {
RecordingDownloadDO record = new RecordingDownloadDO();
record.setApplicationNumber("APP001");
record.setCallId("CALL001");
record.setImageId("IMG001");
record.setImageName("test.mp4");
record.setImageType("mp4");
record.setImageSize("1024");
record.setCreateTime("2025-01-01");
record.setDownloadTime(new Date());
record.setImageUrl("http://example.com/test.mp4");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Recording_DownLoad_Record"));
Assertions.assertTrue(sql.contains("SET"));
Assertions.assertTrue(sql.contains("Call_Id"));
Assertions.assertTrue(sql.contains("Image_Name"));
Assertions.assertTrue(sql.contains("Image_Type"));
Assertions.assertTrue(sql.contains("Image_Size"));
Assertions.assertTrue(sql.contains("Create_Time"));
Assertions.assertTrue(sql.contains("Download_Time"));
Assertions.assertTrue(sql.contains("Image_Url"));
Assertions.assertTrue(sql.contains("WHERE"));
Assertions.assertTrue(sql.contains("Application_Number = #{applicationNumber,jdbcType=NVARCHAR}"));
Assertions.assertTrue(sql.contains("Image_Id = #{imageId,jdbcType=NVARCHAR}"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithNullFields() {
RecordingDownloadDO record = new RecordingDownloadDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Recording_DownLoad_Record"));
Assertions.assertTrue(sql.contains("WHERE"));
Assertions.assertTrue(sql.contains("Application_Number = #{applicationNumber,jdbcType=NVARCHAR}"));
Assertions.assertTrue(sql.contains("Image_Id = #{imageId,jdbcType=NVARCHAR}"));
Assertions.assertFalse(sql.contains("Call_Id"));
Assertions.assertFalse(sql.contains("Image_Name"));
Assertions.assertFalse(sql.contains("Image_Type"));
Assertions.assertFalse(sql.contains("Image_Size"));
Assertions.assertFalse(sql.contains("Create_Time"));
Assertions.assertFalse(sql.contains("Download_Time"));
Assertions.assertFalse(sql.contains("Image_Url"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithPartialFields() {
RecordingDownloadDO record = new RecordingDownloadDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
record.setCallId("CALL001");
record.setImageName("test.mp4");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Recording_DownLoad_Record"));
Assertions.assertTrue(sql.contains("Call_Id"));
Assertions.assertTrue(sql.contains("Image_Name"));
Assertions.assertFalse(sql.contains("Image_Type"));
Assertions.assertFalse(sql.contains("Image_Size"));
Assertions.assertFalse(sql.contains("Create_Time"));
Assertions.assertFalse(sql.contains("Download_Time"));
Assertions.assertFalse(sql.contains("Image_Url"));
}
@Test
public void testInsertSelectiveWithOnlyRequiredFields() {
RecordingDownloadDO record = new RecordingDownloadDO();
record.setApplicationNumber("APP001");
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Recording_DownLoad_Record"));
Assertions.assertTrue(sql.contains("Application_Number"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithOnlyRequiredFields() {
RecordingDownloadDO record = new RecordingDownloadDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
record.setCallId("CALL001");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Recording_DownLoad_Record"));
Assertions.assertTrue(sql.contains("Call_Id"));
Assertions.assertTrue(sql.contains("WHERE"));
}
}

View File

@@ -0,0 +1,196 @@
package com.gbg.activate.video.mapper;
import com.gbg.activate.video.entity.RecordingPendingDownloadQueueDO;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import java.util.Date;
public class RecordingPendingDownloadQueueSqlProviderTest {
private final RecordingPendingDownloadQueueSqlProvider provider = new RecordingPendingDownloadQueueSqlProvider();
@Test
public void testInsertSelectiveWithAllFields() {
RecordingPendingDownloadQueueDO record = new RecordingPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setApplicationNumber("APP001");
record.setCallId("CALL001");
record.setImageId("IMG001");
record.setDownloadStatus("PENDING");
record.setEntryTime(new Date());
record.setInvokeTime(new Date());
record.setRetryCount(0);
record.setMaxRetry(3);
record.setInvokePriority(1);
record.setErrorMessage("Error");
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Recording_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Serial_Number"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Call_Id"));
Assertions.assertTrue(sql.contains("Image_Id"));
Assertions.assertTrue(sql.contains("Download_Status"));
Assertions.assertTrue(sql.contains("Entry_Time"));
Assertions.assertTrue(sql.contains("Invoke_Time"));
Assertions.assertTrue(sql.contains("Retry_Count"));
Assertions.assertTrue(sql.contains("Max_Retry"));
Assertions.assertTrue(sql.contains("Invoke_Priority"));
Assertions.assertTrue(sql.contains("Error_Message"));
}
@Test
public void testInsertSelectiveWithNullFields() {
RecordingPendingDownloadQueueDO record = new RecordingPendingDownloadQueueDO();
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Recording_Pending_Download_Queue"));
Assertions.assertFalse(sql.contains("Serial_Number"));
Assertions.assertFalse(sql.contains("Application_Number"));
Assertions.assertFalse(sql.contains("Call_Id"));
Assertions.assertFalse(sql.contains("Image_Id"));
Assertions.assertFalse(sql.contains("Download_Status"));
Assertions.assertFalse(sql.contains("Entry_Time"));
Assertions.assertFalse(sql.contains("Invoke_Time"));
Assertions.assertFalse(sql.contains("Retry_Count"));
Assertions.assertFalse(sql.contains("Max_Retry"));
Assertions.assertFalse(sql.contains("Invoke_Priority"));
Assertions.assertFalse(sql.contains("Error_Message"));
}
@Test
public void testInsertSelectiveWithPartialFields() {
RecordingPendingDownloadQueueDO record = new RecordingPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setApplicationNumber("APP001");
record.setDownloadStatus("PENDING");
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Recording_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Serial_Number"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Download_Status"));
Assertions.assertFalse(sql.contains("Call_Id"));
Assertions.assertFalse(sql.contains("Image_Id"));
Assertions.assertFalse(sql.contains("Entry_Time"));
Assertions.assertFalse(sql.contains("Invoke_Time"));
Assertions.assertFalse(sql.contains("Retry_Count"));
Assertions.assertFalse(sql.contains("Max_Retry"));
Assertions.assertFalse(sql.contains("Invoke_Priority"));
Assertions.assertFalse(sql.contains("Error_Message"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithAllFields() {
RecordingPendingDownloadQueueDO record = new RecordingPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setApplicationNumber("APP001");
record.setCallId("CALL001");
record.setImageId("IMG001");
record.setDownloadStatus("COMPLETED");
record.setEntryTime(new Date());
record.setInvokeTime(new Date());
record.setRetryCount(1);
record.setMaxRetry(3);
record.setInvokePriority(2);
record.setErrorMessage("Timeout");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Recording_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("SET"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Call_Id"));
Assertions.assertTrue(sql.contains("Image_Id"));
Assertions.assertTrue(sql.contains("Download_Status"));
Assertions.assertTrue(sql.contains("Entry_Time"));
Assertions.assertTrue(sql.contains("Invoke_Time"));
Assertions.assertTrue(sql.contains("Retry_Count"));
Assertions.assertTrue(sql.contains("Max_Retry"));
Assertions.assertTrue(sql.contains("Invoke_Priority"));
Assertions.assertTrue(sql.contains("Error_Message"));
Assertions.assertTrue(sql.contains("WHERE"));
Assertions.assertTrue(sql.contains("Serial_Number = #{serialNumber,jdbcType=BIGINT}"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithNullFields() {
RecordingPendingDownloadQueueDO record = new RecordingPendingDownloadQueueDO();
record.setSerialNumber(1L);
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Recording_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("WHERE"));
Assertions.assertTrue(sql.contains("Serial_Number = #{serialNumber,jdbcType=BIGINT}"));
Assertions.assertFalse(sql.contains("Application_Number"));
Assertions.assertFalse(sql.contains("Call_Id"));
Assertions.assertFalse(sql.contains("Image_Id"));
Assertions.assertFalse(sql.contains("Download_Status"));
Assertions.assertFalse(sql.contains("Entry_Time"));
Assertions.assertFalse(sql.contains("Invoke_Time"));
Assertions.assertFalse(sql.contains("Retry_Count"));
Assertions.assertFalse(sql.contains("Max_Retry"));
Assertions.assertFalse(sql.contains("Invoke_Priority"));
Assertions.assertFalse(sql.contains("Error_Message"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithPartialFields() {
RecordingPendingDownloadQueueDO record = new RecordingPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setDownloadStatus("FAILED");
record.setRetryCount(2);
record.setErrorMessage("Network error");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Recording_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Download_Status"));
Assertions.assertTrue(sql.contains("Retry_Count"));
Assertions.assertTrue(sql.contains("Error_Message"));
Assertions.assertFalse(sql.contains("Application_Number"));
Assertions.assertFalse(sql.contains("Call_Id"));
Assertions.assertFalse(sql.contains("Image_Id"));
Assertions.assertFalse(sql.contains("Entry_Time"));
Assertions.assertFalse(sql.contains("Invoke_Time"));
Assertions.assertFalse(sql.contains("Max_Retry"));
Assertions.assertFalse(sql.contains("Invoke_Priority"));
}
@Test
public void testInsertSelectiveWithOnlyRequiredFields() {
RecordingPendingDownloadQueueDO record = new RecordingPendingDownloadQueueDO();
record.setSerialNumber(1L);
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Recording_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Serial_Number"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithOnlyRequiredFields() {
RecordingPendingDownloadQueueDO record = new RecordingPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setApplicationNumber("APP001");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Recording_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("WHERE"));
}
}

View File

@@ -0,0 +1,181 @@
package com.gbg.activate.video.mapper;
import com.gbg.activate.video.entity.VideoSigningDownloadRecordDO;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import java.util.Date;
public class VideoSigningDownloadRecordSqlProviderTest {
private final VideoSigningDownloadRecordSqlProvider provider = new VideoSigningDownloadRecordSqlProvider();
@Test
public void testInsertSelectiveWithAllFields() {
VideoSigningDownloadRecordDO record = new VideoSigningDownloadRecordDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
record.setImageName("test.mp4");
record.setImageType("mp4");
record.setImageSize("1024");
record.setImageUrl("http://example.com/test.mp4");
record.setVideoDuration("60");
record.setCreateTime("2025-01-01");
record.setDownloadTime(new Date());
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Video_Signing_Download_Record"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Image_Id"));
Assertions.assertTrue(sql.contains("Image_Name"));
Assertions.assertTrue(sql.contains("Image_Type"));
Assertions.assertTrue(sql.contains("Image_Size"));
Assertions.assertTrue(sql.contains("Image_Url"));
Assertions.assertTrue(sql.contains("Video_Duration"));
Assertions.assertTrue(sql.contains("Create_Time"));
Assertions.assertTrue(sql.contains("Download_Time"));
}
@Test
public void testInsertSelectiveWithNullFields() {
VideoSigningDownloadRecordDO record = new VideoSigningDownloadRecordDO();
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Video_Signing_Download_Record"));
Assertions.assertFalse(sql.contains("Application_Number"));
Assertions.assertFalse(sql.contains("Image_Id"));
Assertions.assertFalse(sql.contains("Image_Name"));
Assertions.assertFalse(sql.contains("Image_Type"));
Assertions.assertFalse(sql.contains("Image_Size"));
Assertions.assertFalse(sql.contains("Image_Url"));
Assertions.assertFalse(sql.contains("Video_Duration"));
Assertions.assertFalse(sql.contains("Create_Time"));
Assertions.assertFalse(sql.contains("Download_Time"));
}
@Test
public void testInsertSelectiveWithPartialFields() {
VideoSigningDownloadRecordDO record = new VideoSigningDownloadRecordDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
record.setImageName("test.mp4");
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Video_Signing_Download_Record"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Image_Id"));
Assertions.assertTrue(sql.contains("Image_Name"));
Assertions.assertFalse(sql.contains("Image_Type"));
Assertions.assertFalse(sql.contains("Image_Size"));
Assertions.assertFalse(sql.contains("Image_Url"));
Assertions.assertFalse(sql.contains("Video_Duration"));
Assertions.assertFalse(sql.contains("Create_Time"));
Assertions.assertFalse(sql.contains("Download_Time"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithAllFields() {
VideoSigningDownloadRecordDO record = new VideoSigningDownloadRecordDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
record.setImageName("test.mp4");
record.setImageType("mp4");
record.setImageSize("2048");
record.setImageUrl("http://example.com/test.mp4");
record.setVideoDuration("120");
record.setCreateTime("2025-01-01");
record.setDownloadTime(new Date());
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Video_Signing_Download_Record"));
Assertions.assertTrue(sql.contains("SET"));
Assertions.assertTrue(sql.contains("Image_Name"));
Assertions.assertTrue(sql.contains("Image_Type"));
Assertions.assertTrue(sql.contains("Image_Size"));
Assertions.assertTrue(sql.contains("Image_Url"));
Assertions.assertTrue(sql.contains("Video_Duration"));
Assertions.assertTrue(sql.contains("Create_Time"));
Assertions.assertTrue(sql.contains("Download_Time"));
Assertions.assertTrue(sql.contains("WHERE"));
Assertions.assertTrue(sql.contains("Application_Number = #{applicationNumber,jdbcType=NVARCHAR}"));
Assertions.assertTrue(sql.contains("Image_Id = #{imageId,jdbcType=NVARCHAR}"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithNullFields() {
VideoSigningDownloadRecordDO record = new VideoSigningDownloadRecordDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Video_Signing_Download_Record"));
Assertions.assertTrue(sql.contains("WHERE"));
Assertions.assertTrue(sql.contains("Application_Number = #{applicationNumber,jdbcType=NVARCHAR}"));
Assertions.assertTrue(sql.contains("Image_Id = #{imageId,jdbcType=NVARCHAR}"));
Assertions.assertFalse(sql.contains("Image_Name"));
Assertions.assertFalse(sql.contains("Image_Type"));
Assertions.assertFalse(sql.contains("Image_Size"));
Assertions.assertFalse(sql.contains("Image_Url"));
Assertions.assertFalse(sql.contains("Video_Duration"));
Assertions.assertFalse(sql.contains("Create_Time"));
Assertions.assertFalse(sql.contains("Download_Time"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithPartialFields() {
VideoSigningDownloadRecordDO record = new VideoSigningDownloadRecordDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
record.setImageName("updated.mp4");
record.setImageSize("4096");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Video_Signing_Download_Record"));
Assertions.assertTrue(sql.contains("Image_Name"));
Assertions.assertTrue(sql.contains("Image_Size"));
Assertions.assertFalse(sql.contains("Image_Type"));
Assertions.assertFalse(sql.contains("Image_Url"));
Assertions.assertFalse(sql.contains("Video_Duration"));
Assertions.assertFalse(sql.contains("Create_Time"));
Assertions.assertFalse(sql.contains("Download_Time"));
}
@Test
public void testInsertSelectiveWithOnlyRequiredFields() {
VideoSigningDownloadRecordDO record = new VideoSigningDownloadRecordDO();
record.setApplicationNumber("APP001");
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Video_Signing_Download_Record"));
Assertions.assertTrue(sql.contains("Application_Number"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithOnlyRequiredFields() {
VideoSigningDownloadRecordDO record = new VideoSigningDownloadRecordDO();
record.setApplicationNumber("APP001");
record.setImageId("IMG001");
record.setImageName("test.mp4");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Video_Signing_Download_Record"));
Assertions.assertTrue(sql.contains("Image_Name"));
Assertions.assertTrue(sql.contains("WHERE"));
}
}

View File

@@ -0,0 +1,196 @@
package com.gbg.activate.video.mapper;
import com.gbg.activate.video.entity.VideoSigningPendingDownloadQueueDO;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import java.util.Date;
public class VideoSigningPendingDownloadQueueSqlProviderTest {
private final VideoSigningPendingDownloadQueueSqlProvider provider = new VideoSigningPendingDownloadQueueSqlProvider();
@Test
public void testInsertSelectiveWithAllFields() {
VideoSigningPendingDownloadQueueDO record = new VideoSigningPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setApplicationNumber("APP001");
record.setTradeNumber("TRADE001");
record.setCustomerNumber("CUST001");
record.setDownloadStatus("PENDING");
record.setEntryTime(new Date());
record.setInvokeTime(new Date());
record.setRetryCount(0);
record.setMaxRetry(3);
record.setInvokePriority(1);
record.setErrorMessage("Error");
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Video_Signing_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Serial_Number"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Trade_Number"));
Assertions.assertTrue(sql.contains("Customer_Number"));
Assertions.assertTrue(sql.contains("Download_Status"));
Assertions.assertTrue(sql.contains("Entry_Time"));
Assertions.assertTrue(sql.contains("Invoke_Time"));
Assertions.assertTrue(sql.contains("Retry_Count"));
Assertions.assertTrue(sql.contains("Max_Retry"));
Assertions.assertTrue(sql.contains("Invoke_Priority"));
Assertions.assertTrue(sql.contains("Error_Message"));
}
@Test
public void testInsertSelectiveWithNullFields() {
VideoSigningPendingDownloadQueueDO record = new VideoSigningPendingDownloadQueueDO();
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Video_Signing_Pending_Download_Queue"));
Assertions.assertFalse(sql.contains("Serial_Number"));
Assertions.assertFalse(sql.contains("Application_Number"));
Assertions.assertFalse(sql.contains("Trade_Number"));
Assertions.assertFalse(sql.contains("Customer_Number"));
Assertions.assertFalse(sql.contains("Download_Status"));
Assertions.assertFalse(sql.contains("Entry_Time"));
Assertions.assertFalse(sql.contains("Invoke_Time"));
Assertions.assertFalse(sql.contains("Retry_Count"));
Assertions.assertFalse(sql.contains("Max_Retry"));
Assertions.assertFalse(sql.contains("Invoke_Priority"));
Assertions.assertFalse(sql.contains("Error_Message"));
}
@Test
public void testInsertSelectiveWithPartialFields() {
VideoSigningPendingDownloadQueueDO record = new VideoSigningPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setApplicationNumber("APP001");
record.setDownloadStatus("PENDING");
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Video_Signing_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Serial_Number"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Download_Status"));
Assertions.assertFalse(sql.contains("Trade_Number"));
Assertions.assertFalse(sql.contains("Customer_Number"));
Assertions.assertFalse(sql.contains("Entry_Time"));
Assertions.assertFalse(sql.contains("Invoke_Time"));
Assertions.assertFalse(sql.contains("Retry_Count"));
Assertions.assertFalse(sql.contains("Max_Retry"));
Assertions.assertFalse(sql.contains("Invoke_Priority"));
Assertions.assertFalse(sql.contains("Error_Message"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithAllFields() {
VideoSigningPendingDownloadQueueDO record = new VideoSigningPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setApplicationNumber("APP001");
record.setTradeNumber("TRADE001");
record.setCustomerNumber("CUST001");
record.setDownloadStatus("COMPLETED");
record.setEntryTime(new Date());
record.setInvokeTime(new Date());
record.setRetryCount(1);
record.setMaxRetry(3);
record.setInvokePriority(2);
record.setErrorMessage("Timeout");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Video_Signing_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("SET"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("Trade_Number"));
Assertions.assertTrue(sql.contains("Customer_Number"));
Assertions.assertTrue(sql.contains("Download_Status"));
Assertions.assertTrue(sql.contains("Entry_Time"));
Assertions.assertTrue(sql.contains("Invoke_Time"));
Assertions.assertTrue(sql.contains("Retry_Count"));
Assertions.assertTrue(sql.contains("Max_Retry"));
Assertions.assertTrue(sql.contains("Invoke_Priority"));
Assertions.assertTrue(sql.contains("Error_Message"));
Assertions.assertTrue(sql.contains("WHERE"));
Assertions.assertTrue(sql.contains("Serial_Number = #{serialNumber,jdbcType=BIGINT}"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithNullFields() {
VideoSigningPendingDownloadQueueDO record = new VideoSigningPendingDownloadQueueDO();
record.setSerialNumber(1L);
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Video_Signing_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("WHERE"));
Assertions.assertTrue(sql.contains("Serial_Number = #{serialNumber,jdbcType=BIGINT}"));
Assertions.assertFalse(sql.contains("Application_Number"));
Assertions.assertFalse(sql.contains("Trade_Number"));
Assertions.assertFalse(sql.contains("Customer_Number"));
Assertions.assertFalse(sql.contains("Download_Status"));
Assertions.assertFalse(sql.contains("Entry_Time"));
Assertions.assertFalse(sql.contains("Invoke_Time"));
Assertions.assertFalse(sql.contains("Retry_Count"));
Assertions.assertFalse(sql.contains("Max_Retry"));
Assertions.assertFalse(sql.contains("Invoke_Priority"));
Assertions.assertFalse(sql.contains("Error_Message"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithPartialFields() {
VideoSigningPendingDownloadQueueDO record = new VideoSigningPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setDownloadStatus("FAILED");
record.setRetryCount(2);
record.setErrorMessage("Network error");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Video_Signing_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Download_Status"));
Assertions.assertTrue(sql.contains("Retry_Count"));
Assertions.assertTrue(sql.contains("Error_Message"));
Assertions.assertFalse(sql.contains("Application_Number"));
Assertions.assertFalse(sql.contains("Trade_Number"));
Assertions.assertFalse(sql.contains("Customer_Number"));
Assertions.assertFalse(sql.contains("Entry_Time"));
Assertions.assertFalse(sql.contains("Invoke_Time"));
Assertions.assertFalse(sql.contains("Max_Retry"));
Assertions.assertFalse(sql.contains("Invoke_Priority"));
}
@Test
public void testInsertSelectiveWithOnlyRequiredFields() {
VideoSigningPendingDownloadQueueDO record = new VideoSigningPendingDownloadQueueDO();
record.setSerialNumber(1L);
String sql = provider.insertSelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("INSERT INTO Video_Signing_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Serial_Number"));
}
@Test
public void testUpdateByPrimaryKeySelectiveWithOnlyRequiredFields() {
VideoSigningPendingDownloadQueueDO record = new VideoSigningPendingDownloadQueueDO();
record.setSerialNumber(1L);
record.setApplicationNumber("APP001");
String sql = provider.updateByPrimaryKeySelective(record);
Assertions.assertNotNull(sql);
Assertions.assertTrue(sql.contains("UPDATE Video_Signing_Pending_Download_Queue"));
Assertions.assertTrue(sql.contains("Application_Number"));
Assertions.assertTrue(sql.contains("WHERE"));
}
}

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.service; package com.gbg.activate.video.service;
import com.gbg.activate.video.service.AudioFileCleanupServiceImpl; import com.gbg.activate.video.service.AudioFileCleanupServiceImpl;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.service; package com.gbg.activate.video.service;
import com.gbg.activate.video.config.ImageSdkParams; import com.gbg.activate.video.config.ImageSdkParams;
import com.gbg.activate.video.entity.VideoSigningDownloadRecordDO; import com.gbg.activate.video.entity.VideoSigningDownloadRecordDO;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.service; package com.gbg.activate.video.service;
import com.gbg.activate.video.config.ImageSdkParams; import com.gbg.activate.video.config.ImageSdkParams;
import com.gbg.activate.video.constant.DownloadStatus; import com.gbg.activate.video.constant.DownloadStatus;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.service; package com.gbg.activate.video.service;
import com.gbg.activate.video.config.ImageSdkParams; import com.gbg.activate.video.config.ImageSdkParams;
import com.gbg.activate.video.constant.DownloadStatus; import com.gbg.activate.video.constant.DownloadStatus;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.service; package com.gbg.activate.video.service;
import com.gbg.activate.video.config.ImageSdkParams; import com.gbg.activate.video.config.ImageSdkParams;
import com.gbg.activate.video.service.RecordingViewServiceImpl; import com.gbg.activate.video.service.RecordingViewServiceImpl;

View File

@@ -1,4 +1,4 @@
package com.gbg.activate.video.test.service; package com.gbg.activate.video.service;
import com.gbg.activate.video.config.ImageSdkParams; import com.gbg.activate.video.config.ImageSdkParams;
import com.gbg.activate.video.service.VideoViewServiceImpl; import com.gbg.activate.video.service.VideoViewServiceImpl;