summaryrefslogtreecommitdiffstats
path: root/pbs-unittest.php
diff options
context:
space:
mode:
authorSimon2011-01-24 12:04:19 +0100
committerSimon2011-01-24 12:04:19 +0100
commitd858ab8b020e9ee9328c0b84fd7baf9fda7d6fb8 (patch)
tree42870be2f4434d034c0efc68d8899cdba5b03678 /pbs-unittest.php
parentunittests angefangen und zend-script korrigiert (datenbank import) (diff)
downloadpbs2-d858ab8b020e9ee9328c0b84fd7baf9fda7d6fb8.tar.gz
pbs2-d858ab8b020e9ee9328c0b84fd7baf9fda7d6fb8.tar.xz
pbs2-d858ab8b020e9ee9328c0b84fd7baf9fda7d6fb8.zip
die insert-klasse der unittests geupdatet
Diffstat (limited to 'pbs-unittest.php')
-rw-r--r--pbs-unittest.php120
1 files changed, 106 insertions, 14 deletions
diff --git a/pbs-unittest.php b/pbs-unittest.php
index 49c13ac..653bf97 100644
--- a/pbs-unittest.php
+++ b/pbs-unittest.php
@@ -7,43 +7,135 @@ echo 'Verbindung erfolgreich'."\n";
mysql_select_db('pbs');
-class unittest{
-
+class insertClass{
function insertPerson($i){
$anz = mysql_num_rows(mysql_query("SELECT * FROM pbs_person"))+1;
for($n=$anz;$n<=$anz+$i;$n++){
mysql_query("INSERT INTO pbs_person (name,firstname,registerdate,email,login,password) VALUES ('test$n','test$n',$n,'mail@mail.com','test$n','test$n');");
}
+ echo "$i Personen eingefügt\n";
}
function insertGroup($i){
$anz = mysql_num_rows(mysql_query("SELECT * FROM pbs_group"))+1;
for($n=$anz;$n<=$anz+$i;$n++){
mysql_query("INSERT INTO pbs_group (title) VALUES ('testgruppe$n');");
}
+ echo "$i Gruppen eingefügt\n";
}
function linkGroups(){
$r = mysql_query("SELECT * FROM pbs_group");
$anz = mysql_num_rows($r);
- while ($d = mysq_fetch_array($r,MYSQL_BOTH)){
+ while ($d = mysql_fetch_array($r,MYSQL_BOTH)){
$data[] = $d;
}
- $startParent = 1;
- $startChild = 2
- while(count($data)){
- mysql_query("INSERT INTO pbs_groupgroups (parentID,groupID) VALUES ($startParent,
+ $firstElement = array_shift($data);
+ $startParent = $firstElement['groupID'];
+ while(count($data)>0){
+ $now = array_shift($data);
+ mysql_query("INSERT INTO pbs_groupgroups (parentID,groupID) VALUES ($startParent,".$now['groupID'].")");
+
+ if(count($data)%4 == 1){
+ $startParent = $now['groupID'];
+ }
+ }
+ echo "Gruppen untereinander verbunden\n";
+ }
+ function insertRight($i){
+ $anz = mysql_num_rows(mysql_query("SELECT * FROM pbs_right"))+1;
+ for($n=$anz;$n<=$anz+$i;$n++){
+ mysql_query("INSERT INTO `pbs_right` (`rightID`, `title`, `description`) VALUES (NULL, 'recht$n', NULL)");
}
+ echo "$i Rechte eingefügt\n";
+ }
+
+ function insertRole($i){
+ $anzRight = mysql_num_rows(mysql_query("SELECT * FROM pbs_right"))+1;
+
+ $r = mysql_query("SELECT * FROM pbs_group");
+ $anzGroup = mysql_num_rows($r);
+
+ $linkGroup = 1;
+ $anz = mysql_num_rows(mysql_query("SELECT * FROM pbs_role"));
+
+ for($n=$anz;$n<=$anz+$i;$n++){
+ if($n>4){
+ $linkGroup = rand(0,$anzGroup);
+ }
+ mysql_query("INSERT INTO `pbs_role` (
+ `roleID` ,`groupID` ,`title` ,`description` )
+ VALUES (
+ NULL , '$linkGroup', 'testgruppe$n', NULL)");
+ }
+ echo "$i Rollen eingefügt\n";
+ }
+ function linkRightRole(){
+ $anzRight = mysql_num_rows(mysql_query("SELECT * FROM pbs_right"));
+ $anzRole = mysql_num_rows(mysql_query("SELECT * FROM pbs_role"));
+ $anz = rand(max($anzRight,$anzRole),floor($anzRight+$anzRole));
+ $anz2 = $anz;
+ while($anz >0){
+ $rightID = rand(1,$anzRight);
+ $roleID = rand(1,$anzRole);
+ $r = mysql_query("INSERT INTO `pbs_rightroles` (`roleID`, `rightID`) VALUES ('$roleID','$rightID')");
+ $anz--;
+ }
+ echo "Rechte mit Rollen verbunden ($anz2 Verbindungen)\n";
+ }
+ function createMemberships(){
+ $anzPersonen = mysql_num_rows(mysql_query("SELECT * FROM pbs_person"));
+ $anzRole = mysql_num_rows(mysql_query("SELECT * FROM pbs_role"));
+
+ $requester = floor($anzPersonen*0.4);
+ $r = mysql_query("SELECT * FROM pbs_role");
+ while ($d = mysql_fetch_array($r,MYSQL_BOTH)){
+ $roles[] = $d;
+ }
+
+ $verbindungen = rand($anzPersonen,$anzPersonen*2);
+ $verbindungen2 = $verbindungen;
+ while ($verbindungen>0){
+ $personID = rand(1,$anzPersonen);
+ $roleID = rand(1,$anzRole);
+ $r = mysql_query("INSERT INTO `pbs_rightroles` (`roleID`, `groupID`,`personID`) VALUES ('$roleID','".$roles[$roleID-1]['groupID']."','$personID')");
+ $verbindungen--;
+ }
+ echo "Personen in Gruppen in bestimmten Rollen hinzugefügt ($verbindungen2 Verbindungen)\n";
+ }
+ function createGroupRequest(){
+ $anzPersonen = mysql_num_rows(mysql_query("SELECT * FROM pbs_person"));
+ $anzGruppen = mysql_num_rows(mysql_query("SELECT * FROM pbs_group"));
+
+ $anz = floor($anzPersonen*0.3);
+ $anz2=$anz;
+ while($anz>0){
+ $randomPerson = rand(1,$anzPersonen);
+ $randomGruppe = rand(1,$anzGruppen);
+ if(mysql_num_rows(mysql_query("SELECT pbs_membership WHERE groupID = '$randomGruppe' AND personID = '$randomPerson'") == 0){
+ mysql_query("INSERT INTO pbs_grouprequest (`groupID`,`personID`,`time`) VALUES ('$randomGruppe','$randomPerson',".time().")");
+ $anz--;
+ }
+ }
+ echo "$anz2 Gruppenanfragen wurden von Personen zu gruppen erstellt\n";
+ }
+
+
+
- function startAll(){
+ function insertAll(){
$this->clearAll();
- $this->insertGroup(5);
+ $this->insertGroup(10);
$this->linkGroups();
- $this->insertPerson(4);
+ $this->insertPerson(20);
+ $this->insertRight(20);
+ $this->insertRole(20);
+ $this->linkRightRole();
+ $this->createMemberships();
}
function clearAll()
{
- mysql_query(" TRUNCATE `pbs_bootiso`;
+ mysql_query("TRUNCATE `pbs_bootiso`;
TRUNCATE `pbs_bootmenu`;
TRUNCATE `pbs_bootmenuentries`;
TRUNCATE `pbs_bootos`;
@@ -64,13 +156,13 @@ class unittest{
TRUNCATE `pbs_right`;
TRUNCATE `pbs_rightroles`;
TRUNCATE `pbs_role`;
- TRUNCATE `pbs_session`;");
+ TRUNCATE `pbs_session`");
}
}
-$u = new unittest();
-$u->startAll();
+$u = new insertClass();
+$u->insertAll();