I'm having fun with ncm's programming challenge. Here's a Scheme test harness for it, assuming you call the test function timestamp-increment!
(define test-values
'(("19991231235959" . "20000101000000")
("20000228235959" . "20000229000000")
("20000229235959" . "20000301000000")
("20040228235959" . "20040229000000")
("21000228235959" . "21000301000000")
("19000228235959" . "19000301000000")
("16000228235959" . "16000229000000")))
(define (test-answer q-a-pair)
(let ((a (string-copy (car q-a-pair))))
(timestamp-increment! a)
(if (string=? a (cdr q-a-pair))
'ok
(cons a q-a-pair))))
(define test-results
(map test-answer test-values))
