File tree Expand file tree Collapse file tree
core/shared/src/main/scala/data
tests/shared/src/test/scala/data Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -39,7 +39,7 @@ object LTree {
3939
4040 labels.foreach(l => l match {
4141 case ValidLabelRegex () => ()
42- case _ => fail(s " invalid ltree label ' $l'. Only alphanumeric characters and '_ ' are allowed. " )
42+ case _ => fail(s " invalid ltree label ' $l'. Only alphanumeric characters, '_' and '- ' are allowed. " )
4343 })
4444
4545 if (failure != null )
@@ -49,11 +49,11 @@ object LTree {
4949 }
5050 }
5151
52- final val MaxLabelLength = 255
52+ final val MaxLabelLength = 1000
5353 final val MaxTreeLength = 65535
5454
5555 private final val Separator = '.'
56- private final val ValidLabelRegex = s """ ^[ \\ p{L}0-9_]{1, $MaxLabelLength} $$ """ .r
56+ private final val ValidLabelRegex = s """ ^[ \\ p{L}0-9_- ]{1, $MaxLabelLength} $$ """ .r
5757
5858 implicit val ltreeEq : Eq [LTree ] = Eq .fromUniversalEquals[LTree ]
5959}
Original file line number Diff line number Diff line change @@ -20,6 +20,8 @@ class LTreeTest extends ffstest.FTest {
2020 assert(LTree .fromString(" abc1.d_f2" ).isRight, " regex failed" )
2121 assert(LTree .fromString(" foo.βar.baΣΩ" ).isRight, " regex failed" )
2222 assert(LTree .fromString(" foo.βar.❤" ).isLeft, " regex failed" )
23+ assert(LTree .fromString(" abc.d-f" ).isRight, " hyphen in label failed" )
24+ assert(LTree .fromString(" a-b.c-d.e-f" ).isRight, " hyphens in multiple labels failed" )
2325
2426 assert(LTree .fromString(List .fill(LTree .MaxTreeLength )(" a" ).mkString(" ." )).isRight, " max tree len failed" )
2527 assert(LTree .fromString(List .fill(LTree .MaxTreeLength + 1 )(" a" ).mkString(" ." )).isLeft, " max tree len failed" )
You can’t perform that action at this time.
0 commit comments