From 68782c2db14e9d0cf36fc4d0a32181d1dc190a80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B4=D1=80=D0=B5=D0=B8=CC=86?= Date: Thu, 28 Jan 2016 22:17:37 +0200 Subject: [PATCH] Added Macintosh line break. Closes #7 --- lib/src/verbal_expression.dart | 4 ++-- test/line_break_tests.dart | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/src/verbal_expression.dart b/lib/src/verbal_expression.dart index dfdf246..65a386d 100644 --- a/lib/src/verbal_expression.dart +++ b/lib/src/verbal_expression.dart @@ -149,9 +149,9 @@ class VerbalExpression { add('([^${sanitize(value)}]+)'); } - /// Adds universal (Unix + Windows CRLF) line break expression + /// Adds universal (Unix + Windows CRLF + Macintosh) line break expression void lineBreak() { - add('(\\r\\n|\\r|\\n)'); + add('(\\r\\n|\\r|\\n|\\r\\r)'); } /// Shortcut for [this.lineBreak()] diff --git a/test/line_break_tests.dart b/test/line_break_tests.dart index 8730d15..6591683 100644 --- a/test/line_break_tests.dart +++ b/test/line_break_tests.dart @@ -18,8 +18,8 @@ class LineBreakTests { ..lineBreak() ..endOfLine(); - expect(verbalExpression.toString(), '^(\\r\\n|\\r|\\n)\$', - reason: 'Regex should be "^(\\r\\n|\\r|\\n)\$"'); + expect(verbalExpression.toString(), '^(\\r\\n|\\r|\\n|\\r\\r)\$', + reason: 'Regex should be "^(\\r\\n|\\r|\\n|\\r\\r)\$"'); }); test('Should match', () { @@ -35,6 +35,8 @@ class LineBreakTests { reason: 'abc then line break then def'); expect(matcher.hasMatch('abc\ndef'), isTrue, reason: 'abc then line break then def'); + expect(matcher.hasMatch('abc\r\rdef'), isTrue, + reason: 'abc then line break then def'); expect(matcher.hasMatch('abc\r\n def'), isFalse, reason: 'abc then line break then space then def'); });