Diff for /loncom/metadata_database/lonmetadata_test.pl between versions 1.1 and 1.4

version 1.1, 2004/01/12 21:33:19 version 1.4, 2004/04/08 14:51:19
Line 30  use strict; Line 30  use strict;
   
 use DBI;  use DBI;
 use LONCAPA::lonmetadata();  use LONCAPA::lonmetadata();
 use Test::Simple tests => 3;  use Test::Simple tests => 4;
   
   ##
   ##  Note: The root password to my MySQL server is shown below.
   ##  Access is only allowed from localhost so it should be okay.
   ##  Now if you will excuse me I have to change the password on my luggage.
   ##
   my $supersecretpassword = '123';  # shhhh
   
 ok(&create_test_db(),'database creation');  ok(&create_test_db(),'database creation');
 ok(&test_creation(),'table creation');  ok(&test_creation(),'table creation');
   ok(&test_named_creation(),'named table creation');
 ok(&test_inserts(),'insert test');  ok(&test_inserts(),'insert test');
   
 exit;  exit;
Line 47  exit; Line 54  exit;
 #####################################################################  #####################################################################
 #####################################################################  #####################################################################
 sub create_test_db {  sub create_test_db {
     my $dbh = DBI->connect("DBI:mysql:test","root","123",      my $dbh = DBI->connect("DBI:mysql:test","root",$supersecretpassword,
                            { RaiseError =>0,PrintError=>0});                             { RaiseError =>0,PrintError=>0});
     if (! defined($dbh)) {      if (! defined($dbh)) {
         return 0;          return 0;
Line 65  sub create_test_db { Line 72  sub create_test_db {
 }  }
   
 sub test_creation {  sub test_creation {
     my $dbh = DBI->connect("DBI:mysql:lonmetatest","root","123",      my $dbh = DBI->connect("DBI:mysql:lonmetatest","root",$supersecretpassword,
                            { RaiseError =>0,PrintError=>0});                             { RaiseError =>0,PrintError=>0});
     my $request = &LONCAPA::lonmetadata::create_metadata_storage();      my $request = &LONCAPA::lonmetadata::create_metadata_storage();
     $dbh->do($request);      $dbh->do($request);
Line 78  sub test_creation { Line 85  sub test_creation {
     }      }
 }  }
   
   sub test_named_creation {
       my $request = 
                &LONCAPA::lonmetadata::create_metadata_storage('nonmetadata');
       my $dbh = DBI->connect("DBI:mysql:lonmetatest","root",$supersecretpassword,
                              { RaiseError =>0,PrintError=>0});
       $dbh->do($request); # Create the table, only return 0 if we cannot.
       if ($dbh->err) {
           $dbh->disconnect();
           return 0;
       }
       $dbh->do('DROP TABLE nonmetadata'); # This will generate an error if the
                                           # table does not exist
       if ($dbh->err) {
           $dbh->disconnect();
           return 0;
       } else {
           $dbh->disconnect();
           return 1;
       }
   }
   
 sub test_inserts {  sub test_inserts {
     my $dbh = DBI->connect("DBI:mysql:lonmetatest","root","123",      my $tablename = 'metadatatest';
       my $dbh = DBI->connect("DBI:mysql:lonmetatest","root",$supersecretpassword,
                            { RaiseError =>0,PrintError=>0});                             { RaiseError =>0,PrintError=>0});
     my @TestRecords = (      my @TestRecords = (
                       { url => 'm/b/h/test1' },                        { url => 'm/b/h/test1' },
Line 126  sub test_inserts { Line 155  sub test_inserts {
                         hostname =>'6',                          hostname =>'6',
                     },                      },
                       );                        );
       # Create the table
       my $request = &LONCAPA::lonmetadata::create_metadata_storage($tablename);
       $dbh->do($request);
       if ($dbh->err) {
           $dbh->disconnect();
           warn "Unable to create table for test";
           return 0;
       } else {
           $dbh->disconnect();
           return 1;
       }
       # Store the sample records
     foreach my $data (@TestRecords) {      foreach my $data (@TestRecords) {
         my ($count,$error) = &LONCAPA::lonmetadata::store_metadata($dbh,$data);          my ($count,$error) = &LONCAPA::lonmetadata::store_metadata($dbh,
                                                                      $tablename,
                                                                      $data);
         if (! $count) {          if (! $count) {
             warn $error;              warn $error;
             return 0;              return 0;

Removed from v.1.1  
changed lines
  Added in v.1.4


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>