Proyectos de Subversion Moodle

Rev

Rev 1 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1 Rev 1441
Línea 18... Línea 18...
18
 
18
 
Línea 19... Línea 19...
19
namespace core_files\reportbuilder\datasource;
19
namespace core_files\reportbuilder\datasource;
20
 
20
 
21
use core\context\{course, coursecat, user};
-
 
22
use core_reportbuilder_generator;
21
use core\context\{course, coursecat, user};
23
use core_reportbuilder_testcase;
-
 
24
use core_reportbuilder\local\filters\{boolean_select, date, filesize, select, text};
-
 
25
 
-
 
26
defined('MOODLE_INTERNAL') || die();
-
 
27
 
22
use core_reportbuilder_generator;
Línea 28... Línea 23...
28
global $CFG;
23
use core_reportbuilder\local\filters\{boolean_select, date, filesize, select, text};
29
require_once("{$CFG->dirroot}/reportbuilder/tests/helpers.php");
24
use core_reportbuilder\tests\core_reportbuilder_testcase;
30
 
25
 
31
/**
26
/**
32
 * Unit tests for files datasource
27
 * Unit tests for files datasource
33
 *
28
 *
34
 * @package     core_files
29
 * @package     core_files
35
 * @covers      \core_files\reportbuilder\datasource\files
30
 * @covers      \core_files\reportbuilder\datasource\files
36
 * @copyright   2022 Paul Holden <paulh@moodle.com>
31
 * @copyright   2022 Paul Holden <paulh@moodle.com>
Línea 37... Línea 32...
37
 * @license     http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
32
 * @license     http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
38
 */
33
 */
39
class files_test extends core_reportbuilder_testcase {
34
final class files_test extends core_reportbuilder_testcase {
40
 
35
 
Línea 203... Línea 198...
203
    /**
198
    /**
204
     * Data provider for {@see test_datasource_filters}
199
     * Data provider for {@see test_datasource_filters}
205
     *
200
     *
206
     * @return array[]
201
     * @return array[]
207
     */
202
     */
208
    public function datasource_filters_provider(): array {
203
    public static function datasource_filters_provider(): array {
209
        return [
204
        return [
210
            // File.
205
            // File.
211
            'Filter directory' => ['file:directory', [
206
            'Filter directory' => ['file:directory', [
212
                'file:directory_operator' => boolean_select::CHECKED,
207
                'file:directory_operator' => boolean_select::CHECKED,
213
            ], 2],
208
            ], 2],
Línea 229... Línea 224...
229
            ], 2],
224
            ], 2],
230
            'Filter type (non match)' => ['file:type', [
225
            'Filter type (non match)' => ['file:type', [
231
                'file:type_operator' => select::EQUAL_TO,
226
                'file:type_operator' => select::EQUAL_TO,
232
                'file:type_value' => 'image/png',
227
                'file:type_value' => 'image/png',
233
            ], 0],
228
            ], 0],
-
 
229
            'Filter author' => ['file:author', [
-
 
230
                'file:author_operator' => text::IS_EMPTY,
-
 
231
            ], 4],
-
 
232
            'Filter author (non match)' => ['file:author', [
-
 
233
                'file:author_operator' => text::IS_NOT_EMPTY,
-
 
234
            ], 0],
234
            'Filter license' => ['file:license', [
235
            'Filter license' => ['file:license', [
235
                'file:license_operator' => select::EQUAL_TO,
236
                'file:license_operator' => select::EQUAL_TO,
236
                'file:license_value' => 'unknown',
237
                'file:license_value' => 'unknown',
237
            ], 4],
238
            ], 4],
238
            'Filter license (non match)' => ['file:license', [
239
            'Filter license (non match)' => ['file:license', [
Línea 245... Línea 246...
245
            ], 2],
246
            ], 2],
246
            'Filter content hash (no match)' => ['file:contenthash', [
247
            'Filter content hash (no match)' => ['file:contenthash', [
247
                'file:contenthash_operator' => text::IS_EQUAL_TO,
248
                'file:contenthash_operator' => text::IS_EQUAL_TO,
248
                'file:contenthash_value' => 'f00f',
249
                'file:contenthash_value' => 'f00f',
249
            ], 0],
250
            ], 0],
-
 
251
            'Filter component' => ['file:component', [
-
 
252
                'file:component_operator' => text::IS_EQUAL_TO,
-
 
253
                'file:component_value' => 'course',
-
 
254
            ], 2],
-
 
255
            'Filter component (no match)' => ['file:component', [
-
 
256
                'file:component_operator' => text::IS_EQUAL_TO,
-
 
257
                'file:component_value' => 'reportbuilder',
-
 
258
            ], 0],
-
 
259
            'Filter area' => ['file:area', [
-
 
260
                'file:area_operator' => text::IS_EQUAL_TO,
-
 
261
                'file:area_value' => 'summary',
-
 
262
            ], 2],
-
 
263
            'Filter area (no match)' => ['file:area', [
-
 
264
                'file:area_operator' => text::IS_EQUAL_TO,
-
 
265
                'file:area_value' => 'report',
-
 
266
            ], 0],
250
            'Filter time created' => ['file:timecreated', [
267
            'Filter time created' => ['file:timecreated', [
251
                'file:timecreated_operator' => date::DATE_RANGE,
268
                'file:timecreated_operator' => date::DATE_RANGE,
252
                'file:timecreated_from' => 1622502000,
269
                'file:timecreated_from' => 1622502000,
253
            ], 4],
270
            ], 4],
254
            'Filter time created (non match)' => ['file:timecreated', [
271
            'Filter time created (non match)' => ['file:timecreated', [