package org.springblade.mdm.commons.contants;
|
|
import org.junit.jupiter.api.Assertions;
|
import org.junit.jupiter.api.Test;
|
|
import java.util.regex.Matcher;
|
|
public class RegExpConstantsTest {
|
@Test
|
public void testFilePattern(){
|
Matcher m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("J_YDT290-10-02B-35-A-1-1.txt");
|
Assertions.assertTrue(m.find());
|
|
//零组件带横杠也合理
|
m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("J-YDT290-10-02B-35-A-1-1.txt");
|
Assertions.assertTrue(m.find());
|
|
m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("O0001.TXT");
|
Assertions.assertFalse(m.find());
|
|
//无扩展名也需要匹配
|
m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("J_YDT290-10-02B-35-A-1-1");
|
Assertions.assertTrue(m.find());
|
|
|
//无工序号或版次段
|
m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("J_YDT290-A-1-1.TXT");
|
Assertions.assertFalse(m.find());
|
|
//无工序号和 版次段
|
m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("J_YDT290-1-1.TXT");
|
Assertions.assertFalse(m.find());
|
|
//无段数段号
|
m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("J_YDT290-10-02B-35-A.TXT");
|
Assertions.assertFalse(m.find());
|
|
//段数段号 缺一个
|
m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("J_YDT290-10-02B-35-A-1.TXT");
|
Assertions.assertFalse(m.find());
|
|
//缺数号
|
m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("J_YDT290-10-02B-35-A-1-.TXT");
|
Assertions.assertFalse(m.find());
|
|
//数号非数字
|
m = RegExpConstants.PROGRAM_FILE_PATTERN.matcher("J_YDT290-10-02B-35-A-1-e.TXT");
|
Assertions.assertFalse(m.find());
|
}
|
|
@Test
|
public void testProgramPackagePattern(){
|
Matcher m = RegExpConstants.PROGRAM_PACKAGE_PATTERN.matcher("J_YDT290-10-02B-35-A");
|
Assertions.assertTrue(m.find());
|
|
m = RegExpConstants.PROGRAM_PACKAGE_PATTERN.matcher("J-YDT290-10-02B-35-A1");
|
Assertions.assertTrue(m.find());
|
|
m = RegExpConstants.PROGRAM_PACKAGE_PATTERN.matcher("CP3-1-1-1");
|
Assertions.assertTrue(m.find());
|
|
m = RegExpConstants.PROGRAM_PACKAGE_PATTERN.matcher("CP3-1-A-B");
|
Assertions.assertTrue(m.find());
|
m = RegExpConstants.PROGRAM_PACKAGE_PATTERN.matcher("CP3X296-A-B");
|
Assertions.assertTrue(m.find());
|
|
|
m = RegExpConstants.PROGRAM_PACKAGE_PATTERN.matcher("CP3X296-A-B");
|
|
String drawingNo = null;
|
if(m.find()) {
|
drawingNo = m.group(1);
|
Assertions.assertEquals("CP3X296",drawingNo );
|
}
|
|
String processNo = null;
|
if(m.find()) {
|
processNo = m.group(2);
|
Assertions.assertEquals("A",processNo );
|
}
|
|
String processEdition = null;
|
if(m.find()) {
|
processEdition = m.group(3);
|
Assertions.assertEquals("B",processEdition );
|
}
|
}
|
}
|