Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								dcdfa51d23 
								
							 
						 
						
							
							
								
								setPublicAck: initial tests and docs.  
							
							 
							
							
							
						 
						
							2015-12-30 17:47:56 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								21fa4a1379 
								
							 
						 
						
							
							
								
								getPublicAck: Additional die tests.  
							
							 
							
							
							
						 
						
							2015-12-30 17:42:56 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								59d824e6b8 
								
							 
						 
						
							
							
								
								isSupporter: tests, implementation & docs.  
							
							 
							
							
							
						 
						
							2015-12-30 17:19:10 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								21080cc4d5 
								
							 
						 
						
							
							
								
								getDisplayName: tests, implementation, and docs.  
							
							 
							
							
							
						 
						
							2015-12-30 17:12:58 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								a07235f74d 
								
							 
						 
						
							
							
								
								Declare variable in the right place.  
							
							 
							
							
							
						 
						
							2015-12-30 17:02:50 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								ec7e50e8e0 
								
							 
						 
						
							
							
								
								getPublicAck: initial tests spec out API.  
							
							 
							
							
							
						 
						
							2015-12-30 16:51:04 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								a8dbc5ad76 
								
							 
						 
						
							
							
								
								lastGave(): initial tests to define API  
							
							 
							
							
							
						 
						
							2015-12-30 16:33:03 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								724cb77605 
								
							 
						 
						
							
							
								
								new: additional arguments related to ledger.  
							
							 
							
							... 
							
							
							
							I'll need a full command line here, as it turns out, and also regular
expressions to use for searching for monthly vs. annual donations. 
							
						 
						
							2015-12-30 12:08:33 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								0ca9d394e2 
								
							 
						 
						
							
							
								
								getLedgerEntityId: tests showing basic API & docs  
							
							 
							
							... 
							
							
							
							These tests show the basic API for the getLedgerEntityId() method.
Documentation for the method also included. 
							
						 
						
							2015-12-30 11:31:09 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								2e9938738f 
								
							 
						 
						
							
							
								
								Add license notice at top of these files.  
							
							 
							
							
							
						 
						
							2015-12-30 11:09:47 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								4cd05c9508 
								
							 
						 
						
							
							
								
								Remove blank line.  
							
							 
							
							
							
						 
						
							2015-12-30 06:10:12 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								7e6e96d95f 
								
							 
						 
						
							
							
								
								findDonor: API change: return multiple entries  
							
							 
							
							... 
							
							
							
							Since the emailAddress criterion could find more than one entry, this
change has findDonor returning a list rather than a scalar integer and
thus finding multiple items are ok.
Tests are more extensive now that this API change is in effect. 
							
						 
						
							2015-12-30 06:08:39 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								e10f8ed61a 
								
							 
						 
						
							
							
								
								addEmailAddress: test for duplicate adds.  
							
							 
							
							... 
							
							
							
							These tests verify that duplicate adds do not try to add the same email
address again.  These tests currently fail. 
							
						 
						
							2015-12-30 06:00:10 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								6d1825240a 
								
							 
						 
						
							
							
								
								addEmailAddress: permit shared email addresses.  
							
							 
							
							... 
							
							
							
							An existing email address can exist already.  If it does, just map it to
the new donor_id as well. 
							
						 
						
							2015-12-30 05:49:12 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								736f022005 
								
							 
						 
						
							
							
								
								_lookupEmailAddress: replace _lookupEmailAddressId  
							
							 
							
							... 
							
							
							
							Actually, I will ultimately need the whole record for my purposes, so
rework this function to return everything. 
							
						 
						
							2015-12-30 05:41:10 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								4d2fc22de1 
								
							 
						 
						
							
							
								
								_lookupEmailAddressId: implement helper function  
							
							 
							
							... 
							
							
							
							This helper function will be needed for a few changes I'm about to make. 
							
						 
						
							2015-12-30 05:33:05 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								2ef0dad053 
								
							 
						 
						
							
							
								
								findDonor: initial set of unit tests.  
							
							 
							
							... 
							
							
							
							These tests spec out what findDonor() should do. 
							
						 
						
							2015-12-30 05:02:39 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								9c8db6b84f 
								
							 
						 
						
							
							
								
								fulfillRequest: allow requestTypeId per getRequest  
							
							 
							
							... 
							
							
							
							getRequest() now allows requestTypeId, so fulfillRequest() can as well.
Add tests for that, and don't die if requestType isn't given. 
							
						 
						
							2015-12-30 04:12:21 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								d6ce8225d9 
								
							 
						 
						
							
							
								
								getRequest: test documentation better detailed  
							
							 
							
							... 
							
							
							
							Add a bit more detail in the test description to note we're using
requestType, not requestTypeId parameter in this test. 
							
						 
						
							2015-12-30 04:05:21 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								5b8453d9ae 
								
							 
						 
						
							
							
								
								getRequest: Modify test to support requestTypeId  
							
							 
							
							... 
							
							
							
							Now that requestTypeId parameter is valid, one of these tests should use
it. 
							
						 
						
							2015-12-30 04:04:48 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								1760f60759 
								
							 
						 
						
							
							
								
								getRequest: re-implement to take hash argument  
							
							 
							
							... 
							
							
							
							Instead of a bunch of serial arguments, reimplement getRequest() to take
a hash of parameters.
In the process, add support for requestTypeId to be included. 
							
						 
						
							2015-12-30 04:04:37 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								10030b3488 
								
							 
						 
						
							
							
								
								_verifyRequestTypeId =>_lookupRequestTypeById  
							
							 
							
							... 
							
							
							
							I found need to have _verifyRequestTypeId() actually return the
request_type in a reimplementation of getRequest() that I'm working on,
so I've made this change.  Some tests are failing because of the use of
_verifyRequestTypeId().  Next commit will address that. 
							
						 
						
							2015-12-30 03:55:28 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								9de60c3c5e 
								
							 
						 
						
							
							
								
								Use donorId rather than supporterId as main handle  
							
							 
							
							... 
							
							
							
							Since we converted to making this a more general donor database, change
the handle used for an individual in the database from supporterId to
donorId.
Note that I left addSupporter() method name untouched because it does
automatically assume you mean a supporter, not a mere donor.  Later, an
addDonor() method should likely be added. 
							
						 
						
							2015-12-30 03:13:41 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								95ef1fce28 
								
							 
						 
						
							
							
								
								Change table to donor; add is_supporter field.  
							
							 
							
							... 
							
							
							
							Up until now, this software has been focused on just Supporters, but
really there is no reason this should not be a general donor database.
Therefore, don't use the name supporter in the database, and add a
field.
public_ack is now allowed to be NULL, because the idea being we don't
have an answer from all who donate whether or not they want public
acknowledgment.
the is_supporter boolean is added to record whether or not they came
through the supporter program. 
							
						 
						
							2015-12-30 03:10:07 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								794d34a79f 
								
							 
						 
						
							
							
								
								Test begin work/commit nesting in a few places.  
							
							 
							
							... 
							
							
							
							I discovered a bug where _beginWork() and _commit() calls were not
properly matched.  These tests are added to find them. 
							
						 
						
							2015-12-20 18:51:46 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								69a5ffdbf6 
								
							 
						 
						
							
							
								
								get/setPreferredEmailAddress: initial tests.  
							
							 
							
							
							
						 
						
							2015-12-20 17:57:30 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								2dafc3c544 
								
							 
						 
						
							
							
								
								Correct test; it used incorrect variable  
							
							 
							
							
							
						 
						
							2015-12-20 17:10:18 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								cb1ce38650 
								
							 
						 
						
							
							
								
								fulfillRequest: test had incorrect return value.  
							
							 
							
							... 
							
							
							
							fulfillRequest() returns the id, not a hash of values. 
							
						 
						
							2015-12-20 17:07:44 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								3ff735584c 
								
							 
						 
						
							
							
								
								This test did not belong here.  
							
							 
							
							... 
							
							
							
							I believe this was due to a bad cut-and-paste in a previous commit. 
							
						 
						
							2015-12-20 17:05:20 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								6307cfdd26 
								
							 
						 
						
							
							
								
								Fix typos in the test message descriptions.  
							
							 
							
							
							
						 
						
							2015-12-20 16:59:29 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								ef7a4ecc49 
								
							 
						 
						
							
							
								
								Add blank line.  
							
							 
							
							
							
						 
						
							2015-12-20 16:58:42 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								4f42fe50d2 
								
							 
						 
						
							
							
								
								Test have today  in UTC  
							
							 
							
							... 
							
							
							
							It seems that date('now'), at least in sqlite, is in UTC.  So, we want
the tests to match that.
There are still timing bugs possible here, but with this change, they
should only occur if you run the test right at 23:58 or 23:59 UTC. :) 
							
						 
						
							2015-12-20 16:39:00 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								c8bbcc05e4 
								
							 
						 
						
							
							
								
								Parameter here is "notes", not "note"  
							
							 
							
							
							
						 
						
							2015-12-20 15:15:39 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								da396611fc 
								
							 
						 
						
							
							
								
								Correct description string of this test.  
							
							 
							
							
							
						 
						
							2015-12-20 15:13:42 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								e0f7e66bba 
								
							 
						 
						
							
							
								
								getReqeust: don't use paramater has setup.  
							
							 
							
							... 
							
							
							
							We don't really need lookup based on requestTypeId for this anyway, so
this method really only needs two arguments (perhaps a third optional
argument to be added later). 
							
						 
						
							2015-12-20 14:22:46 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								ccfa057cce 
								
							 
						 
						
							
							
								
								Fix my bad spelling: fufill -> fulfill  
							
							 
							
							
							
						 
						
							2015-12-20 14:01:15 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								84f81b4dd3 
								
							 
						 
						
							
							
								
								fulfillRequest: Behavior for "refill" request  
							
							 
							
							... 
							
							
							
							When a request is already fulfilled, fulfillRequest() should return the
record that was found for the previous fulfillment. 
							
						 
						
							2015-12-20 13:50:06 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								3afe947cdd 
								
							 
						 
						
							
							
								
								fufillRequest: parameter checks.  
							
							 
							
							... 
							
							
							
							Parameter check tests now pass:
ok 66 - fufillRequest: dies if supporterId not specified
ok 67 - fufillRequest: dies if supporterId not found in database
ok 68 - fufillRequest: dies if requestType not specified
ok 69 - fufillRequest: who not specified
Also added new test. 
							
						 
						
							2015-12-20 13:46:45 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								1d83205949 
								
							 
						 
						
							
							
								
								fufillRequest: more tests.  
							
							 
							
							
							
						 
						
							2015-12-20 13:36:56 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								075d7998d8 
								
							 
						 
						
							
							
								
								addRequest: Two additional tests.  
							
							 
							
							
							
						 
						
							2015-12-20 13:30:33 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								d654622ebe 
								
							 
						 
						
							
							
								
								We've already done one ResetDB above.  
							
							 
							
							... 
							
							
							
							So make sure we're reseting the right DB 
							
						 
						
							2015-12-20 12:45:43 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								49273ecbde 
								
							 
						 
						
							
							
								
								Be sure DESTROY is called, etc.  
							
							 
							
							
							
						 
						
							2015-12-20 12:45:36 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								17c0f38639 
								
							 
						 
						
							
							
								
								Correct test: wrong comparison.  
							
							 
							
							... 
							
							
							
							It was comparing a request_id to a request_type_id.  That is herein corected. 
							
						 
						
							2015-12-20 12:45:15 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								5cc564202e 
								
							 
						 
						
							
							
								
								Remove debugging print in tests.  
							
							 
							
							
							
						 
						
							2015-12-20 12:11:42 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								5e03ffd74d 
								
							 
						 
						
							
							
								
								_getOrCreateRequestConfiguration:Refine unit tests  
							
							 
							
							... 
							
							
							
							The unit tests had some bugs, which are herein fixed. 
							
						 
						
							2015-12-20 12:09:52 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								4ef9b9634a 
								
							 
						 
						
							
							
								
								Improve test string here.  
							
							 
							
							
							
						 
						
							2015-12-20 11:12:46 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								fc2250203d 
								
							 
						 
						
							
							
								
								_getOrCreateRequestConfiguration: Additional test.  
							
							 
							
							... 
							
							
							
							This additional test makes sure that it still fails a previous condition
when the requestTypeId is correct. 
							
						 
						
							2015-12-20 11:12:12 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								9dcea735f4 
								
							 
						 
						
							
							
								
								_verifyRequestTypeId: Implementation & unit tests.  
							
							 
							
							... 
							
							
							
							Straightforward helper method. 
							
						 
						
							2015-12-20 11:07:06 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								1c33f4cbba 
								
							 
						 
						
							
							
								
								_getOrCreateRequestConfiguration: Basic unit tests  
							
							 
							
							... 
							
							
							
							This also required resetting the database in an earlier portion of the
tests than previous. 
							
						 
						
							2015-12-20 10:58:22 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								8876808aec 
								
							 
						 
						
							
							
								
								Corrected some tests for _getOrCreateRequestType()  
							
							 
							
							
							
						 
						
							2015-12-17 20:15:09 -08:00