Proyectos de Subversion Moodle

Rev

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

Rev 1 Rev 1441
Línea 16... Línea 16...
16
 
16
 
Línea 17... Línea 17...
17
declare(strict_types=1);
17
declare(strict_types=1);
Línea 18... Línea -...
18
 
-
 
19
namespace core_blog\reportbuilder\datasource;
-
 
20
 
18
 
21
use context_system;
19
namespace core_blog\reportbuilder\datasource;
-
 
20
 
22
use context_user;
21
use core_blog_generator;
23
use core_blog_generator;
-
 
24
use core_comment_generator;
22
use core_comment_generator;
25
use core_reportbuilder_generator;
-
 
26
use core_reportbuilder_testcase;
-
 
27
use core_reportbuilder\local\filters\{boolean_select, date, select, text};
-
 
28
 
-
 
29
defined('MOODLE_INTERNAL') || die();
23
use core\context\{system, user};
Línea 30... Línea 24...
30
 
24
use core_reportbuilder_generator;
31
global $CFG;
25
use core_reportbuilder\local\filters\{boolean_select, date, select, text};
32
require_once("{$CFG->dirroot}/reportbuilder/tests/helpers.php");
26
use core_reportbuilder\tests\core_reportbuilder_testcase;
33
 
27
 
34
/**
28
/**
35
 * Unit tests for blogs datasource
29
 * Unit tests for blogs datasource
36
 *
30
 *
37
 * @package     core_blog
31
 * @package     core_blog
38
 * @covers      \core_blog\reportbuilder\datasource\blogs
32
 * @covers      \core_blog\reportbuilder\datasource\blogs
Línea 39... Línea 33...
39
 * @copyright   2022 Paul Holden <paulh@moodle.com>
33
 * @copyright   2022 Paul Holden <paulh@moodle.com>
40
 * @license     http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
34
 * @license     http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
41
 */
35
 */
42
class blogs_test extends core_reportbuilder_testcase {
36
final class blogs_test extends core_reportbuilder_testcase {
Línea 96... Línea 90...
96
            'summary' => 'Horses', 'tags' => ['horse']]);
90
            'summary' => 'Horses', 'tags' => ['horse']]);
Línea 97... Línea 91...
97
 
91
 
98
        // Add an attachment.
92
        // Add an attachment.
99
        $blog->attachment = 1;
93
        $blog->attachment = 1;
100
        get_file_storage()->create_file_from_string([
94
        get_file_storage()->create_file_from_string([
101
            'contextid' => context_system::instance()->id,
95
            'contextid' => system::instance()->id,
102
            'component' => 'blog',
96
            'component' => 'blog',
103
            'filearea' => 'attachment',
97
            'filearea' => 'attachment',
104
            'itemid' => $blog->id,
98
            'itemid' => $blog->id,
105
            'filepath' => '/',
99
            'filepath' => '/',
106
            'filename' => 'hello.txt',
100
            'filename' => 'hello.txt',
Línea 107... Línea 101...
107
        ], 'hello');
101
        ], 'hello');
108
 
102
 
109
        /** @var core_comment_generator $generator */
103
        /** @var core_comment_generator $generator */
110
        $generator = $this->getDataGenerator()->get_plugin_generator('core_comment');
104
        $generator = $this->getDataGenerator()->get_plugin_generator('core_comment');
111
        $generator->create_comment([
105
        $generator->create_comment([
112
            'context' => context_user::instance($user->id),
106
            'context' => user::instance($user->id),
113
            'component' => 'blog',
107
            'component' => 'blog',
114
            'area' => 'format_blog',
108
            'area' => 'format_blog',
115
            'itemid' => $blog->id,
109
            'itemid' => $blog->id,
Línea 173... Línea 167...
173
    /**
167
    /**
174
     * Data provider for {@see test_datasource_filters}
168
     * Data provider for {@see test_datasource_filters}
175
     *
169
     *
176
     * @return array[]
170
     * @return array[]
177
     */
171
     */
178
    public function datasource_filters_provider(): array {
172
    public static function datasource_filters_provider(): array {
179
        return [
173
        return [
180
            'Filter title' => ['subject', 'Cool', 'blog:title', [
174
            'Filter title' => ['subject', 'Cool', 'blog:title', [
181
                'blog:title_operator' => text::CONTAINS,
175
                'blog:title_operator' => text::CONTAINS,
182
                'blog:title_value' => 'Cool',
176
                'blog:title_value' => 'Cool',
183
            ], true],
177
            ], true],