diff --git a/tests/Unit/Framework/ClassResolver/ClassNameFinder/Rule/FinderRuleWithModulePrefixTest.php b/tests/Unit/Framework/ClassResolver/ClassNameFinder/Rule/FinderRuleWithModulePrefixTest.php new file mode 100644 index 00000000..6d3865b8 --- /dev/null +++ b/tests/Unit/Framework/ClassResolver/ClassNameFinder/Rule/FinderRuleWithModulePrefixTest.php @@ -0,0 +1,41 @@ +rule = new FinderRuleWithModulePrefix(); + } + + public function test_build_without_project_namespace(): void + { + $projectNamespace = ''; + $resolvableType = 'Factory'; + $classInfo = ClassInfo::from($this); + + $actual = $this->rule->buildClassCandidate($projectNamespace, $resolvableType, $classInfo); + + self::assertSame('\Rule\RuleFactory', $actual); + } + + public function test_build_with_project_namespace(): void + { + $projectNamespace = 'App'; + $resolvableType = 'Factory'; + $classInfo = ClassInfo::from($this); + + $actual = $this->rule->buildClassCandidate($projectNamespace, $resolvableType, $classInfo); + + self::assertSame('\App\Rule\RuleFactory', $actual); + } +} diff --git a/tests/Unit/Framework/ClassResolver/ClassNameFinder/Rule/FinderRuleWithoutModulePrefixTest.php b/tests/Unit/Framework/ClassResolver/ClassNameFinder/Rule/FinderRuleWithoutModulePrefixTest.php new file mode 100644 index 00000000..b89044af --- /dev/null +++ b/tests/Unit/Framework/ClassResolver/ClassNameFinder/Rule/FinderRuleWithoutModulePrefixTest.php @@ -0,0 +1,41 @@ +rule = new FinderRuleWithoutModulePrefix(); + } + + public function test_build_without_project_namespace(): void + { + $projectNamespace = ''; + $resolvableType = 'Factory'; + $classInfo = ClassInfo::from($this); + + $actual = $this->rule->buildClassCandidate($projectNamespace, $resolvableType, $classInfo); + + self::assertSame('\Rule\Factory', $actual); + } + + public function test_build_with_project_namespace(): void + { + $projectNamespace = 'App'; + $resolvableType = 'Factory'; + $classInfo = ClassInfo::from($this); + + $actual = $this->rule->buildClassCandidate($projectNamespace, $resolvableType, $classInfo); + + self::assertSame('\App\Rule\Factory', $actual); + } +}