]> lifelog.hopto.org Git - PerlCNF.git/commitdiff
fix: Log messages with a full path.
authorWill Budic <redacted>
Tue, 25 Jun 2024 01:01:36 +0000 (11:01 +1000)
committerWill Budic <redacted>
Tue, 25 Jun 2024 01:01:36 +0000 (11:01 +1000)
system/modules/CNFSQL.pm
system/modules/RSSFeedsPlugin.pm
tests/TestManager.pm
tests/testSQL.pl

index 2a79e92374c8af6ef2315b14d89a6e5c61abd06d..ed3fc01341263bdd55ae85ba99e847a025088fa2 100644 (file)
@@ -157,10 +157,10 @@ try{
     foreach my $tbl_stm(keys %tables_creat_stmts){
         if(!$schema_tables{$tbl_stm} && !$schema_tables{uc $tbl_stm}){
             $st = $tables_creat_stmts{$tbl_stm};
-            $self->{parser}->log("CNFParser-> SQL: $st\n");
+            $self->{parser}->log("CNFParser SQL -> $st\n");
             try {
                 $db->do($st);
-                $self->{parser}->log("CNFParser-> Created table: $tbl_stm\n");
+                $self->{parser}->log("CNFParser-> Created table: $tbl_stm");
                 $do_not_auto_synch = 0;
             }catch{
                 die "Failed to create:\n$st\nError:$@"
@@ -195,12 +195,12 @@ try{
            foreach(@spec){ $q.="\"$_\" == ? and " }
            $q =~ s/\sand\s$//;
            $st="SELECT * FROM $tbl_stm WHERE $q;";
-           $self->{parser}->log("CNFParser-> $st\n");
+           $self->{parser}->log("SQL -> $st");
            $sel = $db -> prepare($st);
         }else{
            my $prime_key = getPrimaryKeyColumnNameWherePart($db, $tbl_stm);
            $st="SELECT * FROM $tbl_stm WHERE $prime_key";
-           $self->{parser}->log("CNFParser-> $st\n");
+           $self->{parser}->log("SQL -> $st");
            $sel = $db -> prepare($st);
            my @r = $self->selectRecords($db,"select count(*) from $tbl_stm;")->fetchrow_array();
            $hasRecords = 1 if $r[0] > 0
@@ -303,7 +303,7 @@ try{
                                 }
                              }
                         }
-                        $self->{parser}->log("CNFParser-> Insert into $tbl_stm -> [". join(',', @ins)."]\n");
+                        $self->{parser}->log("SQL -> Insert into $tbl_stm -> [". join(',', @ins)."]");
                         if($auto_increment){
                            $auto_increment--;
                            splice @ins, $auto_increment, 1
@@ -313,10 +313,10 @@ try{
                 }
                 $db->commit()
             }else{
-                $self->{parser}->log("CNFParser-> No data collection is available or mapped to $tbl_stm\n");
+                $self->{parser}->log("CNFParser -> No data collection is available or mapped to $tbl_stm\n");
             }
         }else{
-            $self->{parser}->log("CNFParser-> No data collection scanned for $tbl_stm\n");
+            $self->{parser}->log("CNFParser -> No data collection scanned for $tbl_stm\n");
         }
 
     }
@@ -324,9 +324,9 @@ try{
     foreach my $view(keys %views){
         if(!$schema_tables{$view}){
             $st = $views{$view};
-            $self->{parser}->log("CNFParser-> SQL: $st\n");
+            $self->{parser}->log("CNFParser SQL -> $st\n");
             $db->do($st);
-            $self->{parser}->log("CNFParser-> Created view: $view\n")
+            $self->{parser}->log("CNFParser -> Created view: $view")
         }
     }
     undef %tables_creat_stmts; undef %tables_id_type;
index d7cf555a69bd04fb4b4413b5b43e7964737c64f4..504bdaa4733a5126e7777e17b7d1d687ac137ccd 100644 (file)
@@ -10,6 +10,7 @@ use Exception::Class ('CNFPluginException');
 use Clone qw(clone);
 use Capture::Tiny 'capture_stdout';
 use FileHandle;
+use File::Spec;
 use XML::RSS::Parser;
 use Date::Manip::Date;
 use LWP::Protocol::https; #<-- 20230829  This  module some times, will not be auto installed for some reason.
@@ -109,7 +110,7 @@ sub collectFeeds($self, $parser) {
          #$parser->log("Feed spec: @col");
          my $name = $col[$hdr{Name}];
          next if($feed && $feed ne $name);
-         my $tree =  fetchFeed($self, $name, $col[$hdr{URL}], $col[$hdr{Expires}], $col[$hdr{Description}]);
+         my $tree =  fetchFeed($self, $parser, $name, $col[$hdr{URL}], $col[$hdr{Expires}], $col[$hdr{Description}]);
          $parser->log("Fetched feed:".$name);
          if($tree && ref($$tree) eq 'CNFNode'){
             if(not isCNFTrue($self->{CNF_TREE_LOADED}) && isCNFTrue($self->{CNF_TREE_STORE})){
@@ -189,7 +190,7 @@ sub getOutputDir($self){
     return $output_local
 }
 
-sub fetchFeed($self, $name, $url, $expires, $description){
+sub fetchFeed($self, $cnf_parser, $name, $url, $expires, $description){
 
     my ($MD, $tree, $brew,$bench);
     my $console     = isCNFTrue($self->{OUTPUT_TO_CONSOLE});
@@ -201,6 +202,7 @@ sub fetchFeed($self, $name, $url, $expires, $description){
     my $fname = $name; $fname =~ s/[\s|\W]/_/g;
 
     $fname = $output_local."rss_$fname.rdf";
+    my $rss_fullpath = File::Spec->rel2abs( $fname );
 
     if(isCNFTrue($self->{RUN_FEEDS})){
         if(-e $fname) {
@@ -223,16 +225,16 @@ sub fetchFeed($self, $name, $url, $expires, $description){
         }
         unless ( -e $fname ) {
             try{
-                print "Fetching: $fname -> [$url] ...";
+                $cnf_parser->log("Fetching: $fname -> [$url] ...");
                 my  $res = getstore($url, $fname);
                 if ($res == 200){
                     print "done!\n"
                 }else{
-                    print "Error<$res>!\n";
+                   $cnf_parser->error("Error<$res>!\n");
                     `curl $url -o $fname`
                 }
             }catch{
-                print "Error: $@.\n";
+                $cnf_parser->error( "Error: $@.\n");
                 return;
             }
         }
@@ -245,11 +247,9 @@ sub fetchFeed($self, $name, $url, $expires, $description){
     my $t1 = Benchmark->new;
     my $td = timediff($t1, $t0);
     $bench = "The XML parser for $fname took:\t".timestr($td)."\n" if $benchmark;
-
-    print "Parsing: $fname\n";
-
+    $cnf_parser->log("Parsing:  $rss_fullpath");
     if(!$feed){
-        print "Failed to parse RSS feed:$name file:$fname\n";
+         $cnf_parser->error("Failed to parse RSS feed:$name file:$rss_fullpath\n");
         return
     }
 
index 017a9fc62018ed66e3adede92b04d7afed5a0199..9e8bb7a18df024fbd6572a9563a961c810e47128 100644 (file)
@@ -13,6 +13,9 @@ my $timer = Timer::Simple->new(start => 0, string => 'human');
 my $stab  = "";
 my $current_test_file;
 
+use Cwd qw(getcwd);
+my $CWD = getcwd;
+
 ###
 #  Notice All test are to be run from the project directory.
 #  Not in the test directory.
@@ -20,7 +23,7 @@ my $current_test_file;
 sub new {
      my ($class, $test_file, $self) = @_;
      $test_file = $0 if not $test_file;
-     $self = bless {test_file=> $test_file,test_cnt=>1,sub_cnt=>0,sub_err=>0}, $class;
+     $self = bless {test_file=> $CWD.'/'.$test_file,test_cnt=>1,sub_cnt=>0,sub_err=>0}, $class;
      print  BLUE."Running -> ".WHITE."$test_file\n".RESET;
      $self->{open}=0;
      $current_test_file = $test_file;
@@ -34,7 +37,7 @@ sub failed {
     ++$self->{sub_err};
     my ($package, $filename, $line) = caller; $filename =~ s/^(\/(.+)\/)//gs;
     print BLINK. BRIGHT_RED. "\t$stab   Fail ".$self->{test_cnt}.".".$sub_cnt.": $err",
-                         BLUE, qq(\n\t$stab\t at -> ./$filename line on $line.\n), RESET;
+                         BLUE, qq(\n\t$stab\t at -> $CWD/$filename line on $line.\n), RESET;
     return $self
 }
 
@@ -44,7 +47,7 @@ sub passed {
     my $sub_cnt = ++$self->{sub_cnt};
     my ($package, $filename, $line) = caller; $filename =~ s/^(\/(.+)\/)//gs;
     print BRIGHT_GREEN, "\t$stab   Pass ".$self->{test_cnt}.".".$sub_cnt.": $msg",
-                  BLUE, qq( at -> ./$filename line on $line.\n), RESET;
+                  BLUE, qq( at -> $CWD/$filename line on $line.\n), RESET;
     return $self
 }
 
@@ -54,7 +57,7 @@ sub case {
     $stab="";
     nextCase($self) if $self->{open};
     print BRIGHT_CYAN,"\tCase ".$self->{test_cnt}.": $out",
-          BLUE, qq(\n\t\t at -> ./$filename line on $line.\n), RESET;
+          BLUE, qq(\n\t\t at -> $CWD/$filename line on $line.\n), RESET;
     $self->{open}=1;
     return $self
 }
index 9ff9338497aae4b7e87c79d0a189ff79e902b78b..bb1456272ada162a94866b570503373ac656836b 100644 (file)
@@ -5,7 +5,7 @@ use Benchmark;
 use lib "tests";
 use lib "system/modules";
 
-require TestManager;
+ require TestManager;
 require CNFParser;
 require CNFSQL;
 
@@ -49,6 +49,7 @@ try{
    $test->nextCase();
    ###
    $test->case("Test RSS FEEDS Plugin.");
+
    my $plugin = $cnf->property('PROCESS_RSS_FEEDS');
    $test->failed() if not $plugin;
    if(CNFParser::_isTrue($plugin->{CONVERT_TO_CNF_NODES})){