feat: 调整枚举表SQL为PostgreSQL格式

This commit is contained in:
2026-05-18 20:51:53 +08:00
parent 939590855b
commit 4419ede05f
4 changed files with 167 additions and 0 deletions

View File

@@ -0,0 +1,54 @@
package com.bruce.common.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.v3.oas.annotations.media.Schema;
import org.junit.jupiter.api.Test;
import java.lang.reflect.Field;
import java.util.Arrays;
import java.util.Set;
import java.util.stream.Collectors;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
class EntityStructureTests {
@Test
void baseEntityShouldUseMybatisPlusAssignedIdAndSysEnumShouldContainBusinessFields() throws NoSuchFieldException {
Field idField = BaseEntity.class.getDeclaredField("id");
TableId tableId = idField.getAnnotation(TableId.class);
assertNotNull(tableId);
assertEquals(IdType.ASSIGN_ID, tableId.type());
Set<String> fieldNames = Arrays.stream(SysEnum.class.getDeclaredFields())
.map(Field::getName)
.collect(Collectors.toSet());
assertTrue(fieldNames.contains("catalog"));
assertTrue(fieldNames.contains("type"));
assertTrue(fieldNames.contains("name"));
assertTrue(fieldNames.contains("value"));
assertTrue(fieldNames.contains("strvalue"));
assertTrue(fieldNames.contains("sort"));
assertTrue(fieldNames.contains("version"));
assertTrue(fieldNames.contains("remark"));
assertTrue(BaseEntity.class.isAssignableFrom(SysEnum.class));
}
@Test
void entitiesShouldExposeOpenApiSchemaAnnotations() throws NoSuchFieldException {
Schema baseSchema = BaseEntity.class.getAnnotation(Schema.class);
Schema sysEnumSchema = SysEnum.class.getAnnotation(Schema.class);
Schema createTimeSchema = BaseEntity.class.getDeclaredField("createTime").getAnnotation(Schema.class);
Schema catalogSchema = SysEnum.class.getDeclaredField("catalog").getAnnotation(Schema.class);
assertNotNull(baseSchema);
assertNotNull(sysEnumSchema);
assertNotNull(createTimeSchema);
assertNotNull(catalogSchema);
}
}