now support hex values!
This commit is contained in:
parent
5e7f6bd93c
commit
0f045f3b41
Binary file not shown.
|
@ -24,6 +24,9 @@ public class EnumToStringTest {
|
||||||
assertTrue(isKeyValueLine("MIN"));
|
assertTrue(isKeyValueLine("MIN"));
|
||||||
assertTrue(isKeyValueLine("MIN = 2,"));
|
assertTrue(isKeyValueLine("MIN = 2,"));
|
||||||
assertTrue(isKeyValueLine("MIN = -3,"));
|
assertTrue(isKeyValueLine("MIN = -3,"));
|
||||||
|
assertTrue(isKeyValueLine("MIN = 0x02,"));
|
||||||
|
assertTrue(isKeyValueLine("MIN = 0xa2,"));
|
||||||
|
assertTrue(isKeyValueLine("MIN = 0xB2,"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -33,15 +36,23 @@ public class EnumToStringTest {
|
||||||
"typedef enum {\n" +
|
"typedef enum {\n" +
|
||||||
"\tGPIO_UNASSIGNED = 0,\n" +
|
"\tGPIO_UNASSIGNED = 0,\n" +
|
||||||
"\tGPIO_INVALID = 1,\n" +
|
"\tGPIO_INVALID = 1,\n" +
|
||||||
|
"\tGPIO_HEX = 0xA1,\n" +
|
||||||
"}brain_pin_e;"));
|
"}brain_pin_e;"));
|
||||||
|
|
||||||
List<Value> values = new ArrayList<>(EnumsReader.enums.get("brain_pin_e").values());
|
List<Value> values = new ArrayList<>(EnumsReader.enums.get("brain_pin_e").values());
|
||||||
assertEquals(2, values.size());
|
assertEquals(3, values.size());
|
||||||
assertEquals("GPIO_INVALID", values.get(0).getName());
|
Value first = values.get(0);
|
||||||
assertEquals("1", values.get(0).getValue());
|
assertEquals("GPIO_HEX", first.getName());
|
||||||
|
assertEquals("0xA1", first.getValue());
|
||||||
|
|
||||||
|
Value second = values.get(1);
|
||||||
|
assertEquals("GPIO_INVALID", second.getName());
|
||||||
|
assertEquals("1", second.getValue());
|
||||||
|
|
||||||
assertEquals("const char *getBrain_pin_e(brain_pin_e value){\n" +
|
assertEquals("const char *getBrain_pin_e(brain_pin_e value){\n" +
|
||||||
"switch(value) {\n" +
|
"switch(value) {\n" +
|
||||||
|
"case GPIO_HEX:\n" +
|
||||||
|
" return \"GPIO_HEX\";\n" +
|
||||||
"case GPIO_INVALID:\n" +
|
"case GPIO_INVALID:\n" +
|
||||||
" return \"GPIO_INVALID\";\n" +
|
" return \"GPIO_INVALID\";\n" +
|
||||||
"case GPIO_UNASSIGNED:\n" +
|
"case GPIO_UNASSIGNED:\n" +
|
||||||
|
|
|
@ -43,6 +43,8 @@ public class EnumsReader {
|
||||||
}
|
}
|
||||||
SystemOut.println(" EnumsReader: Line " + line);
|
SystemOut.println(" EnumsReader: Line " + line);
|
||||||
currentValues.put(line, new Value(line, value));
|
currentValues.put(line, new Value(line, value));
|
||||||
|
} else {
|
||||||
|
SystemOut.println(" EnumsReader: Skipping Line " + line);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -54,6 +56,6 @@ public class EnumsReader {
|
||||||
}
|
}
|
||||||
|
|
||||||
static boolean isKeyValueLine(String line) {
|
static boolean isKeyValueLine(String line) {
|
||||||
return removeSpaces(line).matches("[a-zA-Z_$][a-zA-Z\\d_$]*[=-a-zA-Z\\d_*]*,?");
|
return removeSpaces(line).matches("[a-zA-Z_$][a-zA-Z\\d_$]*(=(0x[0-9a-fA-F]+|(-)?[0-9]+))*,?");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue