Ignore:
Timestamp:
01/16/26 11:20:11 (4 days ago)
Author:
Kris Deugau
Message:

/branches/cname-collision

Add test and supporting record for new CNAME with expiry after an existing
record's valid-after timestamp
See #72, #88

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/cname-collision/t/cname.t

    r991 r992  
    296296      }
    297297    };
     298    subtest 'expire after valid-after record' => sub {
     299      $newname = 'expires-at4.expiry2.test';
     300      ($code, $msg) = $dnsdb->addRec('n', 'n', 5, \$newname, \$rectype, \$newval, 900, undef, 't', $expirystamp);
     301      ok( $code eq 'WARN', "addRec() claimed success with warning" );
     302      if ($code eq 'WARN') {
     303        ($rcount) = $dbh->selectrow_array("SELECT count(*) FROM records WHERE domain_id = 5 AND host = '$newname'");
     304        ok( $rcount == 2, " ... [$rcount] correct number of records for $newname" );
     305        like( $msg, qr/added with modified expiry time;  conflicting valid-after record found/, " ... returned appropriate warning message" );
     306        my ($newstamp) = $dbh->selectrow_array("SELECT stamp FROM records WHERE domain_id = 5 AND host = '$newname' ".
     307                "AND stampactive = 't' AND expires = 't'");
     308        my ($oldstamp) = $dbh->selectrow_array("SELECT stamp FROM records WHERE domain_id = 5 AND host = '$newname' ".
     309                "AND stampactive = 't' AND expires = 'f'");
     310        ok( $newstamp eq $oldstamp, " ... coerced timestamp matches existing active-after timestamp" );
     311      } else {
     312        print "not ok: $msg";
     313      }
     314    };
    298315  }; # add expiring CNAME
    299316
Note: See TracChangeset for help on using the changeset viewer.