Skip to content

Commit c27659e

Browse files
committed
improved exception messages
1 parent bc57e3c commit c27659e

File tree

6 files changed

+10
-10
lines changed

6 files changed

+10
-10
lines changed

src/DI/Container.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ public function addService(string $name, $service)
7777

7878
if ($service instanceof \Closure) {
7979
$rt = Nette\Utils\Type::fromReflection(new \ReflectionFunction($service));
80-
$type = $rt ? Helpers::ensureClassType($rt, 'return type of factory') : '';
80+
$type = $rt ? Helpers::ensureClassType($rt, 'return type of closure') : '';
8181
} else {
8282
$type = get_class($service);
8383
}

src/DI/Definitions/ServiceDefinition.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ public function resolveType(Nette\DI\Resolver $resolver): void
185185
} elseif (!$this->getType()) {
186186
$type = $resolver->resolveEntityType($this->factory);
187187
if (!$type) {
188-
throw new ServiceCreationException('Unknown service type, specify it or declare return type of factory.');
188+
throw new ServiceCreationException('Unknown service type, specify it or declare return type of factory method.');
189189
}
190190

191191
$this->setType($type);

tests/DI/Container.dynamic.php80.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,4 @@ $container = new Container;
1919
Assert::exception(function () use ($container) {
2020
@$container->addService('six', function (): stdClass|Closure {}); // @ triggers service should be defined as "imported"
2121
$container->getService('six');
22-
}, Nette\InvalidStateException::class, "Return type of factory is not expected to be nullable/union/intersection/built-in, 'stdClass|Closure' given.");
22+
}, Nette\InvalidStateException::class, "Return type of closure is not expected to be nullable/union/intersection/built-in, 'stdClass|Closure' given.");

tests/DI/ContainerBuilder.factory.error.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ Assert::exception(function () {
117117
$builder = new DI\ContainerBuilder;
118118
$builder->addDefinition('one')->setFactory('Bad7::create');
119119
$builder->complete();
120-
}, Nette\DI\ServiceCreationException::class, "Service 'one': Unknown service type, specify it or declare return type of factory.");
120+
}, Nette\DI\ServiceCreationException::class, "Service 'one': Unknown service type, specify it or declare return type of factory method.");
121121

122122

123123
class Bad8

tests/DI/ContainerBuilder.factory.resolveBuiltinTypes.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ namespace
136136
$builder->addDefinition('f')
137137
->setFactory('@factory::createObject');
138138
$container = createContainer($builder);
139-
}, Nette\DI\ServiceCreationException::class, "Service 'f': Unknown service type, specify it or declare return type of factory.");
139+
}, Nette\DI\ServiceCreationException::class, "Service 'f': Unknown service type, specify it or declare return type of factory method.");
140140

141141
Assert::exception(function () {
142142
$builder = new DI\ContainerBuilder;
@@ -145,6 +145,6 @@ namespace
145145
$builder->addDefinition('f')
146146
->setFactory('@factory::createMixed');
147147
$container = createContainer($builder);
148-
}, Nette\DI\ServiceCreationException::class, "Service 'f': Unknown service type, specify it or declare return type of factory.");
148+
}, Nette\DI\ServiceCreationException::class, "Service 'f': Unknown service type, specify it or declare return type of factory method.");
149149

150150
}

tests/DI/ContainerBuilder.resolveTypes.phpt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -140,14 +140,14 @@ Assert::exception(function () {
140140
$builder->addDefinition('a')
141141
->setFactory([Factory::class, 'createObjectPhpDoc']);
142142
$container = createContainer($builder);
143-
}, Nette\DI\ServiceCreationException::class, "Service 'a': Unknown service type, specify it or declare return type of factory.");
143+
}, Nette\DI\ServiceCreationException::class, "Service 'a': Unknown service type, specify it or declare return type of factory method.");
144144

145145
Assert::exception(function () {
146146
$builder = new DI\ContainerBuilder;
147147
$builder->addDefinition('a')
148148
->setFactory([Factory::class, 'createObject']);
149149
$container = createContainer($builder);
150-
}, Nette\DI\ServiceCreationException::class, "Service 'a': Unknown service type, specify it or declare return type of factory.");
150+
}, Nette\DI\ServiceCreationException::class, "Service 'a': Unknown service type, specify it or declare return type of factory method.");
151151

152152
Assert::exception(function () {
153153
$builder = new DI\ContainerBuilder;
@@ -161,14 +161,14 @@ Assert::exception(function () {
161161
$builder->addDefinition('a')
162162
->setFactory([Factory::class, 'createMixedPhpDoc']);
163163
$container = createContainer($builder);
164-
}, Nette\DI\ServiceCreationException::class, "Service 'a': Unknown service type, specify it or declare return type of factory.");
164+
}, Nette\DI\ServiceCreationException::class, "Service 'a': Unknown service type, specify it or declare return type of factory method.");
165165

166166
Assert::exception(function () {
167167
$builder = new DI\ContainerBuilder;
168168
$builder->addDefinition('a')
169169
->setFactory([Factory::class, 'createMixed']);
170170
$container = createContainer($builder);
171-
}, Nette\DI\ServiceCreationException::class, "Service 'a': Unknown service type, specify it or declare return type of factory.");
171+
}, Nette\DI\ServiceCreationException::class, "Service 'a': Unknown service type, specify it or declare return type of factory method.");
172172

173173
Assert::exception(function () {
174174
$builder = new DI\ContainerBuilder;

0 commit comments

Comments
 (0)