Skip to content

Commit 6676ada

Browse files
committed
[Tests] Adjusted tests
1 parent 7edbf12 commit 6676ada

File tree

3 files changed

+22
-66
lines changed

3 files changed

+22
-66
lines changed

tests/lib/Gateway/JoinedRelationshipTypeStrategyTest.php

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88

99
namespace Ibexa\Tests\CorePersistence\Gateway;
1010

11-
use Doctrine\Common\Collections\Expr\Comparison;
1211
use Doctrine\DBAL\Query\QueryBuilder;
1312
use Ibexa\Contracts\CorePersistence\Gateway\DoctrineRelationship;
1413
use Ibexa\CorePersistence\Gateway\JoinedRelationshipTypeStrategy;
@@ -59,29 +58,16 @@ public function testHandleRelationshipType(): void
5958

6059
public function testHandleRelationshipTypeQuery(): void
6160
{
61+
$queryBuilder = new QueryBuilder($this->connection);
6262
$relationshipQuery = $this->strategy->handleRelationshipTypeQuery(
63-
$this->createDoctrineSchemaMetadata(),
64-
$this->createDoctrineRelationship(DoctrineRelationship::JOIN_TYPE_JOINED),
65-
'related_class_id_column',
66-
new Comparison(
67-
'related_class_id_column',
68-
Comparison::EQ,
69-
'value'
70-
),
71-
new QueryBuilder($this->connection),
72-
[]
63+
$queryBuilder,
64+
'to_table.related_class_id_column_0',
65+
':related_class_id_column_0'
7366
);
7467

75-
$parameter = $relationshipQuery->getParameter();
76-
self::assertSame('related_class_id_column_0', $parameter->getName());
77-
self::assertSame(1, $parameter->getType());
78-
self::assertSame('value', $parameter->getValue());
79-
80-
$queryBuilder = $relationshipQuery->getQueryBuilder();
81-
82-
self::assertEmpty($queryBuilder->getQueryPart('select'));
83-
self::assertEmpty($queryBuilder->getQueryPart('from'));
84-
self::assertEmpty($queryBuilder->getQueryPart('where'));
85-
self::assertEmpty($queryBuilder->getQueryPart('join'));
68+
self::assertEmpty($relationshipQuery->getQueryPart('select'));
69+
self::assertEmpty($relationshipQuery->getQueryPart('from'));
70+
self::assertEmpty($relationshipQuery->getQueryPart('where'));
71+
self::assertEmpty($relationshipQuery->getQueryPart('join'));
8672
}
8773
}

tests/lib/Gateway/RelationshipTypeStrategyRegistryTest.php

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,9 @@
88

99
namespace Ibexa\Tests\CorePersistence\Gateway;
1010

11-
use Doctrine\Common\Collections\Expr\Comparison;
1211
use Doctrine\DBAL\Connection;
1312
use Doctrine\DBAL\Query\QueryBuilder;
1413
use Ibexa\Contracts\CorePersistence\Exception\RuntimeMappingException;
15-
use Ibexa\Contracts\CorePersistence\Gateway\DoctrineSchemaMetadataInterface;
1614
use Ibexa\CorePersistence\Gateway\RelationshipTypeStrategyRegistry;
1715
use Ibexa\Tests\CorePersistence\Stub\InvalidDoctrineRelationship;
1816
use PHPUnit\Framework\TestCase;
@@ -49,16 +47,10 @@ public function testHandleRelationshipTypeQueryThrowsRuntimeMappingException():
4947
$this->expectExceptionMessage('Unhandled relationship metadata. Expected one of "Ibexa\Contracts\CorePersistence\Gateway\DoctrineRelationship", "Ibexa\Contracts\CorePersistence\Gateway\DoctrineOneToManyRelationship". Received "Ibexa\Tests\CorePersistence\Stub\InvalidDoctrineRelationship"');
5048

5149
$this->registry->handleRelationshipTypeQuery(
52-
$this->createMock(DoctrineSchemaMetadataInterface::class),
5350
new InvalidDoctrineRelationship(),
54-
'field',
55-
new Comparison(
56-
'related_class_id_column',
57-
Comparison::EQ,
58-
'value'
59-
),
60-
new QueryBuilder($this->createMock(Connection::class)),
61-
[]
51+
$this->createMock(QueryBuilder::class),
52+
'related_class_id_column',
53+
'related_class_id_column_0'
6254
);
6355
}
6456
}

tests/lib/Gateway/SubSelectRelationshipTypeStrategyTest.php

Lines changed: 11 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,11 @@
88

99
namespace Ibexa\Tests\CorePersistence\Gateway;
1010

11-
use Doctrine\Common\Collections\Expr\Comparison;
1211
use Doctrine\DBAL\Query\Expression\CompositeExpression;
1312
use Doctrine\DBAL\Query\QueryBuilder;
14-
use Ibexa\Contracts\CorePersistence\Exception\RuntimeMappingException;
1513
use Ibexa\Contracts\CorePersistence\Gateway\DoctrineRelationship;
1614
use Ibexa\CorePersistence\Gateway\SubSelectRelationshipTypeStrategy;
15+
use LogicException;
1716

1817
/**
1918
* @covers \Ibexa\CorePersistence\Gateway\SubSelectRelationshipTypeStrategy
@@ -72,20 +71,13 @@ public function testHandleRelationshipType(): void
7271

7372
public function testHandleRelationshipTypeQueryThrowsRuntimeMappingException(): void
7473
{
75-
$this->expectException(RuntimeMappingException::class);
74+
$this->expectException(LogicException::class);
7675
$this->expectExceptionMessage('Query is not initialized.');
7776

7877
$this->strategy->handleRelationshipTypeQuery(
79-
$this->createDoctrineSchemaMetadata(),
80-
$this->createDoctrineRelationship(DoctrineRelationship::JOIN_TYPE_SUB_SELECT),
81-
'related_class_id_column',
82-
new Comparison(
83-
'related_class_id_column',
84-
Comparison::EQ,
85-
'value'
86-
),
87-
new QueryBuilder($this->connection),
88-
[]
78+
$this->createMock(QueryBuilder::class),
79+
'alias.related_class_id_column',
80+
':alias.related_class_id_column_0'
8981
);
9082
}
9183

@@ -97,28 +89,14 @@ public function testHandleRelationshipTypeQuery(): void
9789
->from('test_table', 'test_alias');
9890

9991
$relationshipQuery = $this->strategy->handleRelationshipTypeQuery(
100-
$this->createDoctrineSchemaMetadata(),
101-
$this->createDoctrineRelationship(DoctrineRelationship::JOIN_TYPE_SUB_SELECT),
102-
'related_class_id_column',
103-
new Comparison(
104-
'related_class_id_column',
105-
Comparison::EQ,
106-
'value'
107-
),
10892
$queryBuilder,
109-
[]
93+
'test_alias.related_class_id_column',
94+
':related_class_id_column_0'
11095
);
11196

112-
$parameter = $relationshipQuery->getParameter();
113-
self::assertSame('related_class_id_column_0', $parameter->getName());
114-
self::assertSame(1, $parameter->getType());
115-
self::assertSame('value', $parameter->getValue());
116-
117-
$queryBuilder = $relationshipQuery->getQueryBuilder();
118-
11997
self::assertSame(
12098
['test_alias.related_class_id_column'],
121-
$queryBuilder->getQueryPart('select')
99+
$relationshipQuery->getQueryPart('select')
122100
);
123101
self::assertSame(
124102
[
@@ -127,7 +105,7 @@ public function testHandleRelationshipTypeQuery(): void
127105
'alias' => 'test_alias',
128106
],
129107
],
130-
$queryBuilder->getQueryPart('from')
108+
$relationshipQuery->getQueryPart('from')
131109
);
132110
self::assertEquals(
133111
new CompositeExpression(
@@ -136,9 +114,9 @@ public function testHandleRelationshipTypeQuery(): void
136114
'test_alias.related_class_id_column IN (:related_class_id_column_0)',
137115
]
138116
),
139-
$queryBuilder->getQueryPart('where')
117+
$relationshipQuery->getQueryPart('where')
140118
);
141119

142-
self::assertEmpty($queryBuilder->getQueryPart('join'));
120+
self::assertEmpty($relationshipQuery->getQueryPart('join'));
143121
}
144122
}

0 commit comments

Comments
 (0)