summaryrefslogtreecommitdiff
path: root/parser/parser.fnl
diff options
context:
space:
mode:
Diffstat (limited to 'parser/parser.fnl')
-rw-r--r--parser/parser.fnl10
1 files changed, 8 insertions, 2 deletions
diff --git a/parser/parser.fnl b/parser/parser.fnl
index afb1ae2..5cb64c3 100644
--- a/parser/parser.fnl
+++ b/parser/parser.fnl
@@ -158,7 +158,7 @@
(let [peg (peg.Ct
(anywhere
(* (peg.C pegs.number)
- (maybe " ")
+ (maybe (+ (peg.P " ") " "))
(* (peg.C
(if extra-metrics
(+ (peg.P "гр") "кг" (table.unpack extra-metrics))
@@ -184,7 +184,7 @@
(let [peg (peg.Ct
(anywhere
(* (peg.C pegs.number)
- (maybe " ")
+ (maybe (+ (peg.P " ") " "))
(* (peg.C (+ (peg.P "мл") "л"))
(+ (pnot pegs.letter) -1)))))]
(let [result (peg:match text)]
@@ -194,6 +194,12 @@
nil)))
nil))
+(fn test-guess-volume []
+ (assert (= nil (guess-volume "Сервиз Хуа Хэ Няо")))
+ (assert (= 255 (guess-volume "Бутылка для чая «Походная» 255 мл")))
+ (assert (= 255 (guess-volume "Бутылка для чая «Походная» 255 мл"))))
+(test-guess-volume)
+
{: match-many
: tag
: anywhere