1
0
Fork 1
mirror of https://github.com/pixelfed/pixelfed.git synced 2024-12-23 00:05:29 +00:00
pixelfed/tests/Unit/BearcapTest.php

78 lines
2.3 KiB
PHP
Raw Normal View History

2021-09-01 07:21:47 +00:00
<?php
namespace Tests\Unit;
use PHPUnit\Framework\TestCase;
use App\Util\Lexer\Bearcap;
class BearcapTest extends TestCase
{
/** @test */
public function validTest()
{
$str = 'bear:?t=LpVypnEUdHhwwgXE9tTqEwrtPvmLjqYaPexqyXnVo1flSfJy5AYMCdRPiFRmqld2&u=https://pixelfed.test/stories/admin/337892163734081536';
$expected = [
"token" => "LpVypnEUdHhwwgXE9tTqEwrtPvmLjqYaPexqyXnVo1flSfJy5AYMCdRPiFRmqld2",
"url" => "https://pixelfed.test/stories/admin/337892163734081536",
];
$actual = Bearcap::decode($str);
$this->assertEquals($expected, $actual);
}
/** @test */
public function invalidTokenParameterName()
{
$str = 'bear:?token=LpVypnEUdHhwwgXE9tTqEwrtPvmLjqYaPexqyXnVo1flSfJy5AYMCdRPiFRmqld2&u=https://pixelfed.test/stories/admin/337892163734081536';
$actual = Bearcap::decode($str);
$this->assertFalse($actual);
}
/** @test */
public function invalidUrlParameterName()
{
$str = 'bear:?t=LpVypnEUdHhwwgXE9tTqEwrtPvmLjqYaPexqyXnVo1flSfJy5AYMCdRPiFRmqld2&url=https://pixelfed.test/stories/admin/337892163734081536';
$actual = Bearcap::decode($str);
$this->assertFalse($actual);
}
/** @test */
public function invalidScheme()
{
$str = 'bearcap:?t=LpVypnEUdHhwwgXE9tTqEwrtPvmLjqYaPexqyXnVo1flSfJy5AYMCdRPiFRmqld2&url=https://pixelfed.test/stories/admin/337892163734081536';
$actual = Bearcap::decode($str);
$this->assertFalse($actual);
}
/** @test */
public function missingToken()
{
$str = 'bear:?u=https://pixelfed.test/stories/admin/337892163734081536';
$actual = Bearcap::decode($str);
$this->assertFalse($actual);
}
/** @test */
public function missingUrl()
{
$str = 'bear:?t=LpVypnEUdHhwwgXE9tTqEwrtPvmLjqYaPexqyXnVo1flSfJy5AYMCdRPiFRmqld2';
$actual = Bearcap::decode($str);
$this->assertFalse($actual);
}
/** @test */
public function invalidHttpUrl()
{
$str = 'bear:?t=LpVypnEUdHhwwgXE9tTqEwrtPvmLjqYaPexqyXnVo1flSfJy5AYMCdRPiFRmqld2&u=http://pixelfed.test/stories/admin/337892163734081536';
$actual = Bearcap::decode($str);
$this->assertFalse($actual);
}
/** @test */
public function invalidUrlSchema()
{
$str = 'bear:?t=LpVypnEUdHhwwgXE9tTqEwrtPvmLjqYaPexqyXnVo1flSfJy5AYMCdRPiFRmqld2&u=phar://pixelfed.test/stories/admin/337892163734081536';
$actual = Bearcap::decode($str);
$this->assertFalse($actual);
}
}