mirror of
https://bitbucket.org/jsuto/piler.git
synced 2025-06-13 00:07:03 +02:00
Moved php unit tests to unit_tests/php dir
Signed-off-by: Janos SUTO <sj@acts.hu>
This commit is contained in:
34
unit_tests/php/EmailTest.php
Normal file
34
unit_tests/php/EmailTest.php
Normal file
@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
define('DIR_BASE', $_ENV['DIR_BASE']);
|
||||
|
||||
include_once(DIR_BASE . "system/model.php");
|
||||
include_once(DIR_BASE . "model/search/search.php");
|
||||
|
||||
|
||||
final class SearchSearchTest extends TestCase {
|
||||
|
||||
public function providerTestFixEmailAddressForSphinx() {
|
||||
return [
|
||||
['aaa@aaa.fu', 'aaaXaaaXfu'],
|
||||
['list-507327664@mail.aaa.fu', 'listX507327664XmailXaaaXfu'],
|
||||
['aaa+bbb@aaa.fu', 'aaaXbbbXaaaXfu'],
|
||||
['ahahah_aiai@aaa.fu', 'ahahahXaiaiXaaaXfu'],
|
||||
['aaa|@bbb@ccc.fu', 'aaa|bbbXcccXfu']
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @dataProvider providerTestFixEmailAddressForSphinx
|
||||
*/
|
||||
|
||||
public function test_get_boundary($input, $expected_result) {
|
||||
$result = ModelSearchSearch::fix_email_address_for_sphinx($input);
|
||||
$this->assertEquals($result, $expected_result);
|
||||
}
|
||||
|
||||
|
||||
}
|
28
unit_tests/php/FormatTest.php
Normal file
28
unit_tests/php/FormatTest.php
Normal file
@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
include_once("webui/system/model.php");
|
||||
include_once("webui/model/health/health.php");
|
||||
|
||||
final class FormatTest extends TestCase
|
||||
{
|
||||
|
||||
public function providerTestTimeFormatValues(){
|
||||
return [
|
||||
['0', '0.00 ms'],
|
||||
['15', '15.00 sec'],
|
||||
['0.87', '870.00 ms']
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider providerTestTimeFormatValues
|
||||
*/
|
||||
|
||||
public function test_format_time_1($timeval, $expected_result) {
|
||||
$result = ModelHealthHealth::format_time($timeval);
|
||||
$this->assertEquals($result, $expected_result);
|
||||
}
|
||||
|
||||
}
|
42
unit_tests/php/ParseMessageTest.php
Normal file
42
unit_tests/php/ParseMessageTest.php
Normal file
@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
define('DIR_BASE', $_ENV['DIR_BASE']);
|
||||
define('TEST_FILES_DIR', $_ENV['TEST_FILES_DIR']);
|
||||
|
||||
require_once DIR_BASE . 'system/helper/mime.php';
|
||||
|
||||
|
||||
final class MailParserTest extends TestCase {
|
||||
|
||||
public function providerTestParseMessage() {
|
||||
return [
|
||||
["1.eml", 1, ["Liebe Gueste,\n\ndie Einarbeitung der Rechen- und Summenfunktionen ins RK-Formular"]],
|
||||
["2.eml", 1, ["Hallo!\nDie seltsamen Zeilenumbr=C3=BCche treten tats=C3=A4chlich auf."]],
|
||||
["3.eml", 1, ["\n\nCan we discuss? Send Reply For more information, THANKS."]],
|
||||
["4.eml", 2, ["=0D=0A=0D=0A=0D=0A=0D=0A", "<HTML><HEAD>=0D=0A<META http-equiv=3D\"Content-Type\" content=3D\"te="]],
|
||||
["5.eml", 2, ["\nHi ,\n\nIf so, stop by and test out our FREE phishing simulator! Find out how", "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1=2E0 Transitional//EN\" \"http://ww=\nw=2Ew3=2Eorg/TR/xhtml1/DTD/xhtml1-transitional=2Edtd\"><html xmlns=3D\"http:/="]],
|
||||
["6.eml", 2, ["RGVhciBTaXJzLA0KDQpHbGFkIHRvIGhlYXIgdGhhdCB5b3UncmUgb24gdGhlIGZpbHRyYXRpb24g", "<html><head><meta http-equiv=3D\"content-type\" content=3D\"text/html; charse="]],
|
||||
["7.eml", 2, ["Mai ajánlat: \n \n Exkluzív!", "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"]],
|
||||
["8.eml", 2, ["Hello,\n\nYou have received a newsletter from Chemol Travel.", "<html xmlns=3D\"http://www.w3.org/1999/xhtml\" xmlns:v=3D\"urn:schemas-micro=\nsoft-com:vml\" xmlns:o=3D\"urn:schemas-microsoft-com:office:office\">"]],
|
||||
];
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @dataProvider providerTestParseMessage
|
||||
*/
|
||||
public function test_parse_message($input, $expected_part_count, $expected_body) {
|
||||
$message = file_get_contents(TEST_FILES_DIR . $input);
|
||||
Piler_Mime_Decode::ParseMessage($message, $parts);
|
||||
|
||||
$this->assertEquals(count($parts), $expected_part_count);
|
||||
|
||||
for($i=0; $i<count($parts); $i++) {
|
||||
$this->assertEquals($expected_body[$i], substr($parts[$i]['body'], 0, strlen($expected_body[$i])));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
83
unit_tests/php/SplitMessageTest.php
Normal file
83
unit_tests/php/SplitMessageTest.php
Normal file
@ -0,0 +1,83 @@
|
||||
<?php
|
||||
|
||||
define(CONTENT_TYPE, 'content-type');
|
||||
define(TEXT_PLAIN, 'text/plain');
|
||||
define(SUBJECT, 'subject');
|
||||
define(THIS_IS_A_TEST, 'This is a test');
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
define('DIR_BASE', $_ENV['DIR_BASE']);
|
||||
|
||||
require_once DIR_BASE . 'system/helper/mime.php';
|
||||
|
||||
|
||||
final class SplitMessageTest extends TestCase {
|
||||
|
||||
public function providerTestSplitMessage() {
|
||||
return [
|
||||
["From: aaa\r\nTo:bbb\r\nSubject: test\r\n\r\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', CONTENT_TYPE => array('type' => TEXT_PLAIN)),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
["From: aaa\r\nTo:bbb\r\nCC ccc\r\nSubject: test\r\n\r\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', CONTENT_TYPE => array('type' => TEXT_PLAIN)),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
["From: aaa\nTo:bbb\nSubject: test\n\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', CONTENT_TYPE => array('type' => TEXT_PLAIN)),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
["From: aaa\r\nTo:bbb\r\nSubject: test\r\n\r\n\r\n\r\n" . THIS_IS_A_TEST . "\nAaa\n",
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', CONTENT_TYPE => array('type' => TEXT_PLAIN)),
|
||||
"\n\n" . THIS_IS_A_TEST . "\nAaa\n"],
|
||||
|
||||
["From: aaa\r\nTo:bbb\r\nSubject: test\r\nContent-type: text/html\r\n\r\n\r\n" . THIS_IS_A_TEST . "\nAaa\n",
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', CONTENT_TYPE => array('type' => 'text/html')),
|
||||
"\n" . THIS_IS_A_TEST . "\nAaa\n"],
|
||||
|
||||
["From: aaa\nTo:bbb\nSubject: test\nContent-Type: text/plain\n\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', CONTENT_TYPE => array('type' => TEXT_PLAIN)),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
["From: aaa\nTo:bbb\nSubject: test\nDate: Sun, 17 Apr 2016 22:40:03 +0800\nDKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=chemoltravel.hu; s=ml;\n\tt=1471888357; bh=A/l/HLQe3HM4Xc4jFxAmhaWVCMU=;\n\th=Date:To:From:Subject:Sender:From:To:Subject:Date;\n\tb=JlEqXiAKBOoT/YyXKTMsXnEphh2J6sXxgNmbKbGybjo3cU1rgQEL0m1h26gl5AaBP\nContent-Type: " . TEXT_PLAIN . "\n\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', SUBJECT => 'test', 'date' => 'Sun, 17 Apr 2016 22:40:03 +0800', 'dkim-signature' => 'v=1; a=rsa-sha1; c=relaxed/relaxed; d=chemoltravel.hu; s=ml; t=1471888357; bh=A/l/HLQe3HM4Xc4jFxAmhaWVCMU=; h=Date:To:From:Subject:Sender:From:To:Subject:Date; b=JlEqXiAKBOoT/YyXKTMsXnEphh2J6sXxgNmbKbGybjo3cU1rgQEL0m1h26gl5AaBP', CONTENT_TYPE => array('type' => TEXT_PLAIN)),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
["From: aaa\nTo:bbb\nSubject: test\nContent-Type: text/PLAIN\n\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', CONTENT_TYPE => array('type' => TEXT_PLAIN)),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
["From: aaa\nTo:bbb\nSubject: test\nContent-Type: text/plain; charset=\"ISO-8859-1\"\n\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', CONTENT_TYPE => array('type' => TEXT_PLAIN, 'charset' => 'ISO-8859-1')),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
["From: aaa\nTo:bbb\nSubject: test\nMIME-Version: 1.0\nContent-Type: multipart/alternative; boundary=\"_=_SWIFT_v4_1460476188_145aa333fc0127705a7e904aab6d1957_=_\"\n\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', 'mime-version' => '1.0', CONTENT_TYPE => array('type' => 'multipart/alternative', 'boundary' => '_=_SWIFT_v4_1460476188_145aa333fc0127705a7e904aab6d1957_=_')),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
["From: aaa\nTo:bbb\nSubject: test\nMIME-Version: 1.0\nContent-Type: multipart/alternative;\n boundary=\"_=_SWIFT_v4_1460476188_145aa333fc0127705a7e904aab6d1957_=_\"\n\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', 'mime-version' => '1.0', CONTENT_TYPE => array('type' => 'multipart/alternative', 'boundary' => '_=_SWIFT_v4_1460476188_145aa333fc0127705a7e904aab6d1957_=_')),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
["From: aaa\nTo:bbb\nSubject: test\nMIME-Version: 1.0\nContent-Type: multipart/related;\n\ttype=\"multipart/alternative\";\n\tboundary=\"----=_NextPart_000_0006_01D195BC.69E26510\"\n\n" . THIS_IS_A_TEST,
|
||||
array('from' => 'aaa', 'to' => 'bbb', 'cc' => '', 'date' => '', SUBJECT => 'test', 'mime-version' => '1.0', CONTENT_TYPE => array('type' => 'multipart/alternative', 'boundary' => '----=_NextPart_000_0006_01D195BC.69E26510')),
|
||||
THIS_IS_A_TEST],
|
||||
|
||||
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @dataProvider providerTestSplitMessage
|
||||
*/
|
||||
public function test_split_message($input, $expected_headers, $expected_body) {
|
||||
Piler_Mime_Decode::splitMessage($input, $headers, $body);
|
||||
|
||||
$this->assertEquals($headers, $expected_headers);
|
||||
$this->assertEquals($body, $expected_body);
|
||||
}
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user