Subversion-Projekte lars-tiefland.laravel_shop

Revision

Revision 148 | Ganze Datei anzeigen | Leerzeichen ignorieren | Details | Blame | Letzte Änderung | Log anzeigen | RSS feed

Revision 148 Revision 150
Zeile 45... Zeile 45...
45
            $loadedClasses = array_values(
45
            $loadedClasses = array_values(
46
                array_diff(get_declared_classes(), $loadedClasses)
46
                array_diff(get_declared_classes(), $loadedClasses)
47
            );
47
            );
Zeile 48... Zeile 48...
48
 
48
 
-
 
49
            if (empty($loadedClasses)) {
-
 
50
                throw new Exception(
-
 
51
                    sprintf(
49
            if (empty($loadedClasses)) {
52
                        'Class %s could not be found in %s',
-
 
53
                        $suiteClassName,
-
 
54
                        $suiteClassFile
-
 
55
                    )
50
                throw $this->exceptionFor($suiteClassName, $suiteClassFile);
56
                );
51
            }
57
            }
Zeile 52... Zeile 58...
52
        }
58
        }
53
 
59
 
Zeile 64... Zeile 70...
64
                }
70
                }
65
            }
71
            }
66
        }
72
        }
Zeile 67... Zeile 73...
67
 
73
 
-
 
74
        if (!class_exists($suiteClassName, false)) {
-
 
75
            throw new Exception(
-
 
76
                sprintf(
68
        if (!class_exists($suiteClassName, false)) {
77
                    'Class %s could not be found in %s',
-
 
78
                    $suiteClassName,
-
 
79
                    $suiteClassFile
-
 
80
                )
69
            throw $this->exceptionFor($suiteClassName, $suiteClassFile);
81
            );
Zeile 70... Zeile 82...
70
        }
82
        }
71
 
83
 
72
        try {
84
        try {
Zeile 79... Zeile 91...
79
                $e
91
                $e
80
            );
92
            );
81
        }
93
        }
82
        // @codeCoverageIgnoreEnd
94
        // @codeCoverageIgnoreEnd
Zeile 83... Zeile 95...
83
 
95
 
-
 
96
        if ($class->isSubclassOf(TestCase::class)) {
-
 
97
            if ($class->isAbstract()) {
-
 
98
                throw new Exception(
-
 
99
                    sprintf(
-
 
100
                        'Class %s declared in %s is abstract',
-
 
101
                        $suiteClassName,
-
 
102
                        $suiteClassFile
-
 
103
                    )
-
 
104
                );
-
 
105
            }
84
        if ($class->isSubclassOf(TestCase::class) && !$class->isAbstract()) {
106
 
85
            return $class;
107
            return $class;
Zeile 86... Zeile 108...
86
        }
108
        }
87
 
109
 
88
        if ($class->hasMethod('suite')) {
110
        if ($class->hasMethod('suite')) {
89
            try {
111
            try {
90
                $method = $class->getMethod('suite');
112
                $method = $class->getMethod('suite');
91
                // @codeCoverageIgnoreStart
113
                // @codeCoverageIgnoreStart
-
 
114
            } catch (ReflectionException $e) {
-
 
115
                throw new Exception(
92
            } catch (ReflectionException $e) {
116
                    sprintf(
93
                throw new Exception(
117
                        'Method %s::suite() declared in %s is abstract',
94
                    $e->getMessage(),
118
                        $suiteClassName,
95
                    $e->getCode(),
119
                        $suiteClassFile
96
                    $e
120
                    )
97
                );
-
 
Zeile 98... Zeile 121...
98
            }
121
                );
-
 
122
            }
99
            // @codeCoverageIgnoreEnd
123
 
-
 
124
            if (!$method->isPublic()) {
-
 
125
                throw new Exception(
-
 
126
                    sprintf(
-
 
127
                        'Method %s::suite() declared in %s is not public',
-
 
128
                        $suiteClassName,
-
 
129
                        $suiteClassFile
-
 
130
                    )
-
 
131
                );
-
 
132
            }
-
 
133
 
-
 
134
            if (!$method->isStatic()) {
-
 
135
                throw new Exception(
-
 
136
                    sprintf(
-
 
137
                        'Method %s::suite() declared in %s is not static',
-
 
138
                        $suiteClassName,
100
 
139
                        $suiteClassFile
101
            if (!$method->isAbstract() && $method->isPublic() && $method->isStatic()) {
140
                    )
Zeile 102... Zeile 141...
102
                return $class;
141
                );
103
            }
142
            }
Zeile 104... Zeile 143...
104
        }
143
        }
105
 
144
 
106
        throw $this->exceptionFor($suiteClassName, $suiteClassFile);
145
        return $class;
107
    }
146
    }
108
 
-
 
109
    public function reload(ReflectionClass $aClass): ReflectionClass
-
 
110
    {
-
 
111
        return $aClass;
-
 
112
    }
-
 
113
 
-
 
114
    private function exceptionFor(string $className, string $filename): Exception
-
 
115
    {
-
 
116
        return new Exception(
-
 
117
            sprintf(
-
 
118
                "Class '%s' could not be found in '%s'.",
-
 
119
                $className,
147