You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
1.2 KiB

<?php
use Darksparrow\DeegraphInteractions\Exceptions\QueryBuilderConflictingFieldAlreadyExistsException;
use Darksparrow\DeegraphInteractions\QueryBuilder\QueryBuilder;
use PHPUnit\Framework\TestCase;
final class QueryBuilderPutTest extends TestCase
{
public function testPutURIAtSafeWithValidData()
{
$query = QueryBuilder::Put()
->URI("https://schemas.auxiliumsoftware.co.uk/v1/collection.json")
->At(relativePath: "{970334ed-1f4f-465a-94d7-923a99698786}/todos")
->Safe();
self::assertEquals(
expected: 'PUT URI "https://schemas.auxiliumsoftware.co.uk/v1/collection.json" AT {970334ed-1f4f-465a-94d7-923a99698786}/todos SAFE',
actual: $query->Build()->AsString(),
);
}
public function testPutWithBothThings()
{
$this->expectException(QueryBuilderConflictingFieldAlreadyExistsException::class);
$query = QueryBuilder::Put()
->URI("https://schemas.auxiliumsoftware.co.uk/v1/collection.json")
->At(relativePath: "{970334ed-1f4f-465a-94d7-923a99698786}/todos")
->Into(relativePath: "Relative Path", propertyName: "OwO")
->Safe();
}
}