mirror of
https://github.com/itflow-org/itflow
synced 2026-02-28 02:44:53 +00:00
Migrated away from PHP Mail Parser to the new WebKlex PHP IMAP Mail Parser this will open the way to support OAUTH2 for Mail servers such as Microsoft 365 and Google Workspaces
This commit is contained in:
69
plugins/php-imap/tests/issues/Issue383Test.php
Normal file
69
plugins/php-imap/tests/issues/Issue383Test.php
Normal file
@@ -0,0 +1,69 @@
|
||||
<?php
|
||||
/*
|
||||
* File: Issue355Test.php
|
||||
* Category: -
|
||||
* Author: M.Goldenbaum
|
||||
* Created: 10.01.23 10:48
|
||||
* Updated: -
|
||||
*
|
||||
* Description:
|
||||
* -
|
||||
*/
|
||||
|
||||
namespace Tests\issues;
|
||||
|
||||
use Tests\live\LiveMailboxTestCase;
|
||||
use Webklex\PHPIMAP\Exceptions\AuthFailedException;
|
||||
use Webklex\PHPIMAP\Exceptions\ConnectionFailedException;
|
||||
use Webklex\PHPIMAP\Exceptions\EventNotFoundException;
|
||||
use Webklex\PHPIMAP\Exceptions\FolderFetchingException;
|
||||
use Webklex\PHPIMAP\Exceptions\ImapBadRequestException;
|
||||
use Webklex\PHPIMAP\Exceptions\ImapServerErrorException;
|
||||
use Webklex\PHPIMAP\Exceptions\MaskNotFoundException;
|
||||
use Webklex\PHPIMAP\Exceptions\ResponseException;
|
||||
use Webklex\PHPIMAP\Exceptions\RuntimeException;
|
||||
use Webklex\PHPIMAP\Folder;
|
||||
|
||||
class Issue383Test extends LiveMailboxTestCase {
|
||||
|
||||
/**
|
||||
* Test issue #383 - Does not work when a folder name contains umlauts: Entwürfe
|
||||
* @return void
|
||||
* @throws AuthFailedException
|
||||
* @throws ConnectionFailedException
|
||||
* @throws EventNotFoundException
|
||||
* @throws FolderFetchingException
|
||||
* @throws ImapBadRequestException
|
||||
* @throws ImapServerErrorException
|
||||
* @throws ResponseException
|
||||
* @throws RuntimeException
|
||||
* @throws MaskNotFoundException
|
||||
*/
|
||||
public function testIssue(): void {
|
||||
$client = $this->getClient();
|
||||
$client->connect();
|
||||
|
||||
$delimiter = $this->getManager()->getConfig()->get("options.delimiter");
|
||||
$folder_path = implode($delimiter, ['INBOX', 'Entwürfe+']);
|
||||
|
||||
$folder = $client->getFolder($folder_path);
|
||||
$this->deleteFolder($folder);
|
||||
|
||||
$folder = $client->createFolder($folder_path, false);
|
||||
self::assertInstanceOf(Folder::class, $folder);
|
||||
|
||||
$folder = $this->getFolder($folder_path);
|
||||
self::assertInstanceOf(Folder::class, $folder);
|
||||
|
||||
$this->assertEquals('Entwürfe+', $folder->name);
|
||||
$this->assertEquals($folder_path, $folder->full_name);
|
||||
|
||||
$folder_path = implode($delimiter, ['INBOX', 'Entw&APw-rfe+']);
|
||||
$this->assertEquals($folder_path, $folder->path);
|
||||
|
||||
// Clean up
|
||||
if ($this->deleteFolder($folder) === false) {
|
||||
$this->fail("Could not delete folder: " . $folder->path);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user