|
Moodle
2.2.1
http://www.collinsharper.com
|
00001 <?php 00002 00004 // // 00005 // NOTICE OF COPYRIGHT // 00006 // // 00007 // Moodle - Modular Object-Oriented Dynamic Learning Environment // 00008 // http://moodle.org // 00009 // // 00010 // Copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com // 00011 // // 00012 // This program is free software; you can redistribute it and/or modify // 00013 // it under the terms of the GNU General Public License as published by // 00014 // the Free Software Foundation; either version 2 of the License, or // 00015 // (at your option) any later version. // 00016 // // 00017 // This program is distributed in the hope that it will be useful, // 00018 // but WITHOUT ANY WARRANTY; without even the implied warranty of // 00019 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // 00020 // GNU General Public License for more details: // 00021 // // 00022 // http://www.gnu.org/copyleft/gpl.html // 00023 // // 00025 00034 if (!defined('MOODLE_INTERNAL')) { 00035 die('Direct access to this script is forbidden.'); 00036 } 00037 00038 require_once($CFG->libdir.'/simpletest/fixtures/gradetest.php'); 00039 00040 class grade_outcome_test extends grade_test { 00041 00042 function test_grade_outcome() { 00043 $this->sub_test_grade_outcome_construct(); 00044 $this->sub_test_grade_outcome_insert(); 00045 $this->sub_test_grade_outcome_update(); 00046 $this->sub_test_grade_outcome_delete(); 00047 //$this->sub_test_grade_outcome_fetch(); 00048 $this->sub_test_grade_outcome_fetch_all(); 00049 } 00050 00051 function sub_test_grade_outcome_construct() { 00052 $params = new stdClass(); 00053 00054 $params->courseid = $this->courseid; 00055 $params->shortname = 'Team work'; 00056 00057 $grade_outcome = new grade_outcome($params, false); 00058 $this->assertEqual($params->courseid, $grade_outcome->courseid); 00059 $this->assertEqual($params->shortname, $grade_outcome->shortname); 00060 } 00061 00062 function sub_test_grade_outcome_insert() { 00063 $grade_outcome = new grade_outcome(); 00064 $this->assertTrue(method_exists($grade_outcome, 'insert')); 00065 00066 $grade_outcome->courseid = $this->courseid; 00067 $grade_outcome->shortname = 'tw'; 00068 $grade_outcome->fullname = 'Team work'; 00069 00070 $grade_outcome->insert(); 00071 00072 $last_grade_outcome = end($this->grade_outcomes); 00073 00074 $this->assertEqual($grade_outcome->id, $last_grade_outcome->id + 1); 00075 $this->assertFalse(empty($grade_outcome->timecreated)); 00076 $this->assertFalse(empty($grade_outcome->timemodified)); 00077 } 00078 00079 function sub_test_grade_outcome_update() { 00080 global $DB; 00081 $grade_outcome = new grade_outcome($this->grade_outcomes[0]); 00082 $this->assertTrue(method_exists($grade_outcome, 'update')); 00083 $grade_outcome->shortname = 'Team work'; 00084 $this->assertTrue($grade_outcome->update()); 00085 $shortname = $DB->get_field('grade_outcomes', 'shortname', array('id' => $this->grade_outcomes[0]->id)); 00086 $this->assertEqual($grade_outcome->shortname, $shortname); 00087 } 00088 00089 function sub_test_grade_outcome_delete() { 00090 global $DB; 00091 $grade_outcome = new grade_outcome($this->grade_outcomes[0]); 00092 $this->assertTrue(method_exists($grade_outcome, 'delete')); 00093 00094 $this->assertTrue($grade_outcome->delete()); 00095 $this->assertFalse($DB->get_record('grade_outcomes', array('id' => $grade_outcome->id))); 00096 } 00097 00098 function sub_test_grade_outcome_fetch() { 00099 $grade_outcome = new grade_outcome(); 00100 $this->assertTrue(method_exists($grade_outcome, 'fetch')); 00101 00102 $grade_outcome = grade_outcome::fetch(array('id'=>$this->grade_outcomes[0]->id)); 00103 $grade_outcome->load_scale(); 00104 $this->assertEqual($this->grade_outcomes[0]->id, $grade_outcome->id); 00105 $this->assertEqual($this->grade_outcomes[0]->shortname, $grade_outcome->shortname); 00106 00107 $this->assertEqual($this->scale[2]->id, $grade_outcome->scale->id); 00108 } 00109 00110 function sub_test_grade_outcome_fetch_all() { 00111 $grade_outcome = new grade_outcome(); 00112 $this->assertTrue(method_exists($grade_outcome, 'fetch_all')); 00113 00114 $grade_outcomes = grade_outcome::fetch_all(array()); 00115 $this->assertEqual(count($this->grade_outcomes), count($grade_outcomes)); 00116 } 00117 }