From bb43e6e8b714cc4df1dd014f364d8e2f307c145b Mon Sep 17 00:00:00 2001 From: David Craven Date: Tue, 23 Jan 2018 16:03:53 +0100 Subject: [PATCH] antlr: Add some missing unit specifiers. --- python3/tests/test_parser.py | 5 ++++- src/Units.g4 | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python3/tests/test_parser.py b/python3/tests/test_parser.py index a8db9fe..ccbf0f4 100644 --- a/python3/tests/test_parser.py +++ b/python3/tests/test_parser.py @@ -37,6 +37,7 @@ def test_parse_current(self): parse = parser('current') assert parse('1A') == 1 assert parse('1mA') == mili + assert parse('1uA') == micro assert parse('1nA') == nano assert parse('1pA') == pico @@ -64,6 +65,7 @@ def test_parse_inductance(self): parse = parser('inductance') assert parse('1H') == 1 assert parse('1mH') == mili + assert parse('1uH') == micro assert parse('1nH') == nano def test_parse_frequency(self): @@ -78,13 +80,14 @@ def test_parse_time(self): parse = parser('time') assert parse('1s') == 1 assert parse('1ms') == mili + assert parse('1us') == micro assert parse('1ns') == nano assert parse('1ps') == pico def test_parse_temperature(self): parse = parser('temperature') assert parse('1C') == 1 - assert parse('1°C') + assert parse('1°C') == 1 def test_parse_tolerance(self): parse = parser('tolerance') diff --git a/src/Units.g4 b/src/Units.g4 index 8ebeb93..e0a1b9d 100644 --- a/src/Units.g4 +++ b/src/Units.g4 @@ -61,6 +61,6 @@ frequency: NUMBER fprefix? HERZ tolerance?; fprefix: GIGA | MEGA | KILO; time: NUMBER tprefix? SECOND tolerance?; -tprefix: MILI | NANO | PICO; +tprefix: MILI | MICRO | NANO | PICO; temperature: NUMBER 'u{00b0}'? CELSIUS tolerance?; \ No newline at end of file