I finally got the validation logic working!
And it only took me … um … a bit longer than I expected.
I just took it slow and steady.
First assumption—the code was correct,
the regression test wasn't.
start with the one known condition required to pass the test.
Check the failures,
and add another condition.
Repeat as needed,
spending sometimes a bit too much time trying to figure out the common cause of “failure”
(as reported by the incorrect regression test).
It came down to,
depending upon how you count,
six or eighteen conditions
(there are a base five,
plus any one of three other conditions)
for when Project: Lumbergh sends a message to Project: Cleese.
Some might say the logic is too complicated.
I might even agree.
I'm not the one defining the business logic here.
Now I can continue with adding the new tests,
and it's here that I might have to rethink how the regression test works.
Maybe a secondary regression test that tests some of the non-business logic stuff,
like making sure we handle the database replies out of order
(A returns, then B, or B returns, then A).
I don't know,
it's something I have to think about.
Obligatory Contact Info
You have my permission to link freely to any entry here. Go
ahead, I won't bite. I promise.
The dates are the permanent links to that day's entries (or
entry, if there is only one entry). The titles are the permanent
links to that entry only. The format for the links are
simple: Start with the base link for this site: https://boston.conman.org/, then add the date you are
interested in, say 2000/08/01,
so that would make the final URL:
You can also specify the entire month by leaving off the day
portion. You can even select an arbitrary portion of time.
You may also note subtle shading of the links and that's
intentional: the “closer” the link is (relative to the
page) the “brighter” it appears. It's an experiment in
using color shading to denote the distance a link is from here. If
you don't notice it, don't worry; it's not all that
It is assumed that every brand name, slogan, corporate name,
symbol, design element, et cetera mentioned in these pages is a
protected and/or trademarked entity, the sole property of its
owner(s), and acknowledgement of this status is implied.