mirror of
https://github.com/moodle/moodle.git
synced 2025-01-19 14:27:22 +01:00
101 lines
4.2 KiB
PHP
101 lines
4.2 KiB
PHP
<?php
|
|
|
|
///////////////////////////////////////////////////////////////////////////
|
|
// //
|
|
// NOTICE OF COPYRIGHT //
|
|
// //
|
|
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
|
|
// http://moodle.org //
|
|
// //
|
|
// Copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com //
|
|
// //
|
|
// This program is free software; you can redistribute it and/or modify //
|
|
// it under the terms of the GNU General Public License as published by //
|
|
// the Free Software Foundation; either version 2 of the License, or //
|
|
// (at your option) any later version. //
|
|
// //
|
|
// This program is distributed in the hope that it will be useful, //
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of //
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
|
|
// GNU General Public License for more details: //
|
|
// //
|
|
// http://www.gnu.org/copyleft/gpl.html //
|
|
// //
|
|
///////////////////////////////////////////////////////////////////////////
|
|
|
|
/**
|
|
* Unit tests for ../portfoliolib.php.
|
|
*
|
|
* @author nicolasconnault@gmail.com
|
|
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License
|
|
* @package moodlecore
|
|
*/
|
|
|
|
if (!defined('MOODLE_INTERNAL')) {
|
|
die('Direct access to this script is forbidden.'); /// It must be included from a Moodle page
|
|
}
|
|
|
|
require_once($CFG->libdir . '/portfoliolib.php');
|
|
|
|
class portfoliolibaddbutton_test extends UnitTestCaseUsingDatabase {
|
|
|
|
public static $includecoverage = array('lib/portfoliolib.php');
|
|
|
|
protected $testtables = array(
|
|
'lib' => array(
|
|
'portfolio_instance', 'portfolio_instance_user'));
|
|
|
|
public function setUp() {
|
|
parent::setUp();
|
|
|
|
$this->switch_to_test_db(); // Switch to test DB for all the execution
|
|
|
|
foreach ($this->testtables as $dir => $tables) {
|
|
$this->create_test_tables($tables, $dir); // Create tables
|
|
}
|
|
|
|
}
|
|
|
|
public function tearDown() {
|
|
parent::tearDown(); // In charge of droppng all the test tables
|
|
}
|
|
|
|
/*
|
|
* TODO: The portfolio unit tests were obselete and did not work.
|
|
* They have been commented out so that they do not break the
|
|
* unit tests in Moodle 2.
|
|
*
|
|
* At some point:
|
|
* 1. These tests should be audited to see which ones were valuable.
|
|
* 2. The useful ones should be rewritten using the current standards
|
|
* for writing test cases.
|
|
*
|
|
* This might be left until Moodle 2.1 when the test case framework
|
|
* is due to change.
|
|
*/
|
|
/*
|
|
* A test of setting and getting formats. What is returned in the getter is a combination of what is explicitly set in
|
|
* the button, and what is set in the static method of the export class.
|
|
*
|
|
* In some cases they conflict, in which case the button wins.
|
|
*/
|
|
|
|
/*
|
|
function test_set_formats() {
|
|
|
|
$button = new portfolio_add_button();
|
|
$button->set_callback_options('assignment_portfolio_caller', array('id' => 6), '/mod/assignment/locallib.php');
|
|
$formats = array(PORTFOLIO_FORMAT_FILE, PORTFOLIO_FORMAT_IMAGE);
|
|
$button->set_formats($formats);
|
|
|
|
// Expecting $formats + assignment_portfolio_caller::base_supported_formats merged to unique values.
|
|
$formats_combined = array_unique(array_merge($formats, assignment_portfolio_caller::base_supported_formats()));
|
|
|
|
// In this case, neither file or image conflict with leap2a, which is why all three are returned.
|
|
$this->assertEqual(count($formats_combined), count($button->get_formats()));
|
|
}
|
|
*/
|
|
}
|
|
|
|
|