From cbe701ac4ac574f91b6217f8d1a5692beb5d73e2 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Wed, 18 Nov 2015 07:27:00 -0500
Subject: [PATCH] Fix rcube_utils::words_match() to work with mixed/invalid/binary content (T844)
---
tests/Framework/Utils.php | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+), 0 deletions(-)
diff --git a/tests/Framework/Utils.php b/tests/Framework/Utils.php
index b0bfeef..08e6414 100644
--- a/tests/Framework/Utils.php
+++ b/tests/Framework/Utils.php
@@ -400,6 +400,29 @@
}
/**
+ * rcube:utils::words_match()
+ */
+ function test_words_match()
+ {
+ $test = array(
+ array('', 'test', false),
+ array('test', 'test', true),
+ array('test', 'none', false),
+ array('test', 'test xyz', false),
+ array('test xyz', 'test xyz', true),
+ array('this is test', 'test', true),
+ // try some binary content
+ array('this is test ' . base64_decode('R0lGODlhDwAPAIAAAMDAwAAAACH5BAEAAAAALAAAAAAPAA8AQAINhI+py+0Po5y02otnAQA7'), 'test', true),
+ array('this is test ' . base64_decode('R0lGODlhDwAPAIAAAMDAwAAAACH5BAEAAAAALAAAAAAPAA8AQAINhI+py+0Po5y02otnAQA7'), 'none', false),
+ );
+
+ foreach ($test as $idx => $params) {
+ $result = rcube_utils::words_match($params[0], $params[1]);
+ $this->assertSame($params[2], $result, "words_match() at index $idx");
+ }
+ }
+
+ /**
* rcube:utils::is_absolute_path()
*/
function test_is_absolute_path()
--
Gitblit v1.9.1