/
mikopbx
/
ModuleBeelinePbx
Обзор
Документация
Войти
/
mikopbx
/
ModuleBeelinePbx
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
master
tests/BeelineApiTest.php
64 строки
2 KB
boffart
Инициализация модуля ModuleBeelinePbx
08 июл 2026, 17:11
08 июл 2026, 17:11
1cc4e1a
Код
Авторство
О чём код?
<?php /* * MikoPBX - free phone system for small business * Copyright © 2017-2024 Alexey Portnov and Nikolay Beketov * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. */ namespace Modules\ModuleBeelinePbx\Tests; use DateTime; use DateTimeZone; use Modules\ModuleBeelinePbx\Lib\BeelineApi; use PHPUnit\Framework\TestCase; /** * Тесты чистых статических помощников клиента Beeline API. */ class BeelineApiTest extends TestCase { /** * E.164 (+7…) → 11-значный без плюса. */ public function testNormalizePhoneStripsPlus(): void { $this->assertSame('79775801935', BeelineApi::normalizePhone('+79775801935')); } /** * 10-значный местный номер дополняется префиксом 7. */ public function testNormalizePhonePads10Digit(): void { $this->assertSame('79779348843', BeelineApi::normalizePhone('9779348843')); } /** * Пустая строка остаётся пустой. */ public function testNormalizePhoneEmpty(): void { $this->assertSame('', BeelineApi::normalizePhone('')); } /** * Нечисловые идентификаторы (SIP/userId) не искажаются. */ public function testNormalizePhoneKeepsNonNumeric(): void { $this->assertSame('SIP00KKBU00BP9', BeelineApi::normalizePhone('SIP00KKBU00BP9')); } /** * Формат dateFrom/dateTo — ISO 8601 с миллисекундами и смещением. */ public function testFormatDateProducesIso8601WithMillisAndOffset(): void { $dt = new DateTime('2026-06-16 03:00:00', new DateTimeZone('+03:00')); $this->assertSame('2026-06-16T03:00:00.000+03:00', BeelineApi::formatDate($dt)); } }