Skip to content

Commit 4bee331

Browse files
wip
1 parent 2cb5948 commit 4bee331

File tree

2 files changed

+54
-70
lines changed

2 files changed

+54
-70
lines changed

src/Analyzer/ClassDescription.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,11 +74,11 @@ public function __construct(
7474
$this->enum = $enum;
7575
}
7676

77-
public static function getBuilder(string $FQCN, string $relativeFilePath): ClassDescriptionBuilder
77+
public static function getBuilder(string $FQCN, string $filePath): ClassDescriptionBuilder
7878
{
7979
$cb = new ClassDescriptionBuilder();
8080
$cb->setClassName($FQCN);
81-
$cb->setFilePath($relativeFilePath);
81+
$cb->setFilePath($filePath);
8282

8383
return $cb;
8484
}

tests/Unit/Analyzer/ClassDescriptionBuilderTest.php

Lines changed: 52 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,13 @@ class ClassDescriptionBuilderTest extends TestCase
1515
public function test_it_should_create_builder_with_dependency_and_interface(): void
1616
{
1717
$FQCN = 'HappyIsland';
18-
$classDescriptionBuilder = new ClassDescriptionBuilder();
19-
$classDescriptionBuilder
18+
19+
$classDescription = (new ClassDescriptionBuilder())
2020
->setFilePath('src/Foo.php')
2121
->setClassName($FQCN)
2222
->addDependency(new ClassDependency('DepClass', 10))
23-
->addInterface('InterfaceClass', 10);
24-
25-
$classDescription = $classDescriptionBuilder->build();
23+
->addInterface('InterfaceClass', 10)
24+
->build();
2625

2726
$this->assertInstanceOf(ClassDescription::class, $classDescription);
2827

@@ -33,13 +32,12 @@ public function test_it_should_create_builder_with_dependency_and_interface(): v
3332
public function test_it_should_create_final_class(): void
3433
{
3534
$FQCN = 'HappyIsland';
36-
$classDescriptionBuilder = new ClassDescriptionBuilder();
37-
$classDescriptionBuilder
35+
36+
$classDescription = (new ClassDescriptionBuilder())
3837
->setFilePath('src/Foo.php')
3938
->setClassName($FQCN)
40-
->setFinal(true);
41-
42-
$classDescription = $classDescriptionBuilder->build();
39+
->setFinal(true)
40+
->build();
4341

4442
$this->assertInstanceOf(ClassDescription::class, $classDescription);
4543

@@ -49,13 +47,12 @@ public function test_it_should_create_final_class(): void
4947
public function test_it_should_create_not_final_class(): void
5048
{
5149
$FQCN = 'HappyIsland';
52-
$classDescriptionBuilder = new ClassDescriptionBuilder();
53-
$classDescriptionBuilder
50+
51+
$classDescription = (new ClassDescriptionBuilder())
5452
->setFilePath('src/Foo.php')
5553
->setClassName($FQCN)
56-
->setFinal(false);
57-
58-
$classDescription = $classDescriptionBuilder->build();
54+
->setFinal(false)
55+
->build();
5956

6057
$this->assertInstanceOf(ClassDescription::class, $classDescription);
6158

@@ -65,13 +62,12 @@ public function test_it_should_create_not_final_class(): void
6562
public function test_it_should_create_abstract_class(): void
6663
{
6764
$FQCN = 'HappyIsland';
68-
$classDescriptionBuilder = new ClassDescriptionBuilder();
69-
$classDescriptionBuilder
65+
66+
$classDescription = (new ClassDescriptionBuilder())
7067
->setFilePath('src/Foo.php')
7168
->setClassName($FQCN)
72-
->setAbstract(true);
73-
74-
$classDescription = $classDescriptionBuilder->build();
69+
->setAbstract(true)
70+
->build();
7571

7672
$this->assertInstanceOf(ClassDescription::class, $classDescription);
7773

@@ -81,13 +77,12 @@ public function test_it_should_create_abstract_class(): void
8177
public function test_it_should_create_not_abstract_class(): void
8278
{
8379
$FQCN = 'HappyIsland';
84-
$classDescriptionBuilder = new ClassDescriptionBuilder();
85-
$classDescriptionBuilder
80+
81+
$classDescription = (new ClassDescriptionBuilder())
8682
->setFilePath('src/Foo.php')
8783
->setClassName($FQCN)
88-
->setAbstract(false);
89-
90-
$classDescription = $classDescriptionBuilder->build();
84+
->setAbstract(false)
85+
->build();
9186

9287
$this->assertInstanceOf(ClassDescription::class, $classDescription);
9388

@@ -97,36 +92,32 @@ public function test_it_should_create_not_abstract_class(): void
9792
public function test_it_should_create_annotated_class(): void
9893
{
9994
$FQCN = 'HappyIsland';
100-
$classDescriptionBuilder = new ClassDescriptionBuilder();
101-
$classDescriptionBuilder
95+
96+
$docBlock = <<< 'EOT'
97+
/**
98+
* @psalm-immutable
99+
*/
100+
EOT;
101+
102+
$classDescription = (new ClassDescriptionBuilder())
102103
->setFilePath('src/Foo.php')
103104
->setClassName($FQCN)
104-
->addDocBlock('/**
105-
* @psalm-immutable
106-
*/');
107-
108-
$classDescription = $classDescriptionBuilder->build();
105+
->addDocBlock($docBlock)
106+
->build();
109107

110108
$this->assertInstanceOf(ClassDescription::class, $classDescription);
111-
112-
$this->assertEquals(
113-
['/**
114-
* @psalm-immutable
115-
*/'],
116-
$classDescription->getDocBlock()
117-
);
109+
$this->assertEquals([$docBlock], $classDescription->getDocBlock());
118110
}
119111

120112
public function test_it_should_add_attributes(): void
121113
{
122114
$FQCN = 'HappyIsland';
123-
$classDescriptionBuilder = new ClassDescriptionBuilder();
124-
$classDescriptionBuilder
115+
116+
$classDescription = (new ClassDescriptionBuilder())
125117
->setFilePath('src/Foo.php')
126118
->setClassName($FQCN)
127-
->addAttribute('AttrClass', 27);
128-
129-
$classDescription = $classDescriptionBuilder->build();
119+
->addAttribute('AttrClass', 27)
120+
->build();
130121

131122
self::assertEquals(
132123
[FullyQualifiedClassName::fromString('AttrClass')],
@@ -137,63 +128,56 @@ public function test_it_should_add_attributes(): void
137128
public function test_it_should_create_interface(): void
138129
{
139130
$FQCN = 'HappyIsland';
140-
$classDescriptionBuilder = new ClassDescriptionBuilder();
141-
$classDescriptionBuilder
131+
132+
$classDescription = (new ClassDescriptionBuilder())
142133
->setFilePath('src/Foo.php')
143134
->setClassName($FQCN)
144-
->setInterface(true);
145-
146-
$classDescription = $classDescriptionBuilder->build();
135+
->setInterface(true)
136+
->build();
147137

148138
$this->assertInstanceOf(ClassDescription::class, $classDescription);
149-
150139
$this->assertTrue($classDescription->isInterface());
151140
}
152141

153142
public function test_it_should_create_not_interface(): void
154143
{
155144
$FQCN = 'HappyIsland';
156-
$classDescriptionBuilder = new ClassDescriptionBuilder();
157-
$classDescriptionBuilder
145+
146+
$classDescription = (new ClassDescriptionBuilder())
158147
->setFilePath('src/Foo.php')
159148
->setClassName($FQCN)
160-
->setInterface(false);
161-
162-
$classDescription = $classDescriptionBuilder->build();
149+
->setInterface(false)
150+
->build();
163151

164152
$this->assertInstanceOf(ClassDescription::class, $classDescription);
165-
166153
$this->assertFalse($classDescription->isInterface());
167154
}
168155

169156
public function test_it_should_create_trait(): void
170157
{
171158
$FQCN = 'HappyIsland';
172-
$classDescriptionBuilder = new ClassDescriptionBuilder();
173-
$classDescriptionBuilder
159+
160+
$classDescription = (new ClassDescriptionBuilder())
174161
->setFilePath('src/Foo.php')
175162
->setClassName($FQCN)
176-
->setTrait(true);
177-
178-
$classDescription = $classDescriptionBuilder->build();
163+
->setTrait(true)
164+
->build();
179165

180166
$this->assertInstanceOf(ClassDescription::class, $classDescription);
181-
182167
$this->assertTrue($classDescription->isTrait());
183168
}
184169

185170
public function test_it_should_create_not_trait(): void
186171
{
187172
$FQCN = 'HappyIsland';
188-
$classDescriptionBuilder = new ClassDescriptionBuilder();
189-
$classDescriptionBuilder->setFilePath('src/Foo.php')
190-
->setClassName($FQCN)
191-
->setTrait(false);
192173

193-
$classDescription = $classDescriptionBuilder->build();
174+
$classDescription = (new ClassDescriptionBuilder())
175+
->setFilePath('src/Foo.php')
176+
->setClassName($FQCN)
177+
->setTrait(false)
178+
->build();
194179

195180
$this->assertInstanceOf(ClassDescription::class, $classDescription);
196-
197181
$this->assertFalse($classDescription->isTrait());
198182
}
199183
}

0 commit comments

Comments
 (0)