text: //parsing the dates is too hard, not gonna write that rn
  
  var assert = require('assert');
  var parser = require('./');
  var testcount = 0;
  
  function compare(testdata)
  {
  	++testcount;
  	var countstr = testcount.toString();
  	var out = parser.read(testdata.tweet);
  	if (testdata.fail)
  	{
  		assert.equal(out,null,"test "+countstr+" invalid string not correctly rejected");
  	}
  	if (out == null)
  	{
  		assert.equal(testdata.fail,true,"test "+countstr+" valid string rejected by parsing");
  	}
  	if (testdata.fail || (out==null))
  	{
  		return;
  	}
  	if ("zip" in testdata)
  	{
  		assert.equal(out.zip,testdata.zip,"test "+countstr+" zip not correctly parsing");
  	}
  	if ("notes" in testdata)
  	{
  		assert.equal(out.notes,testdata.notes,"test "+countstr+" notes not correctly parsing");
  	}
  	assert.equal(out.address,testdata.address,"test "+countstr+" address not correctly parsing");
  	var open = new Date(out.open);
  	var close = new Date(out.close);
  	assert.equal(open.getHours(),testdata.open.hours,"test "+countstr+" open hours not correctly parsing");
  	assert.equal(open.getMinutes(),testdata.open.minutes,"test "+countstr+" open minutes not correctly parsing");
  	assert.equal(close.getHours(),testdata.close.hours,"test "+countstr+" close hours not correctly parsing");
  	assert.equal(close.getMinutes(),testdata.close.minutes,"test "+countstr+" close minutes not correctly parsing");
  	//dates are a pain to check
  }
  
  compare({
  	"tweet": "WED @LAWingCoTruck  915 Wilshire at #Figueora 90017 rear of building #LUNCH OPEN 1130-230 #DowntownFoodTruck",
  	"fail": false,
  	"address": "915 Wilshire at",
  	"zip": "90017",
  	"notes": "rear of building", //additional notes about truck location (eg: "behind building")
  	"open": {hours: 11,minutes: 30},
  	"close": {hours: 14,minutes: 30}
  });
  
  compare({
  	"tweet": "WED @gstacospotwheel  #WestwoodVillage GLENDON/Wilshire 90024 #LUNCH OPEN 1130-230PM",
  	"fail": false,
  	"address": "GLENDON/Wilshire",
  	"zip": "90024",
  	"open": {hours: 11,minutes: 30},
  	"close": {hours: 14,minutes: 30}
  });
  
  compare({
  	"tweet": "WED @LetsBowlIt_LA  @_Lantana_ NORTH 3000 Olympic #Samo 90404 #LUNCH OPEN 1130-230PM",
  	"fail": false,
  	"address": "3000 Olympic",
  	"zip": "90404",
  	"open": {hours: 11,minutes: 30},
  	"close": {hours: 14,minutes: 30}
  });
  
  compare({
  	"tweet": "FRI @VivacePizza @abljamaicanfood @StopByeCafe @Fullscreen @Honest @Ogilvy #PlayaVista 12130 Millennium 90094 OPEN 1130-230PM",
  	"fail": false,
  	"address": "12130 Millennium",
  	"zip": "90094",
  	"open": {hours: 11,minutes: 30},
  	"close": {hours: 14,minutes: 30}
  });
  
  compare({
  	"tweet": "FRI @bbkyugrill  @Bombardier CMF 1555 N San Fernando Road LA, 90065 Open 1130-230",
  	"fail": false,
  	"address": "1555 N San Fernando Road LA",
  	"zip": "90065",
  	"open": {hours: 11,minutes: 30},
  	"close": {hours: 14,minutes: 30}
  });
  
  compare({
  	"tweet": "FRI dkjladsjd;alkjsdla",
  	"fail": true
  });
  
  compare({
  	"tweet": "ASDF @LetsBowlIt_LA  @_Lantana_ NORTH 3000 Olympic #Samo 90404 #LUNCH OPEN 1130-230PM",
  	"fail": true
  });
  
  compare({
  	"tweet": "Wed @LetsBowlIt_LA  @_Lantana_ NORTH 3000 Olympic #Samo 90404 #LUNCH OPEN 1130-930",
  	"fail": false,
  	"address": "3000 Olympic",
  	"zip": "90404",
  	"open": {hours: 11,minutes: 30},
  	"close": {hours: 21,minutes: 30}
  });
  
  compare({
  	"tweet": "TUES @PoVFoodTruck  @Poke2Go  @RiceBallsOfFire  @thetropictruck @Fullscreen @Honest @Ogilvy #PlayaVista 12130 Millennium 90094 OPEN 1130-230PM",
  	"fail": false,
  	"address": "12130 Millennium",
  	"zip": "90094",
  	"open": {hours: 11,minutes: 30},
  	"close": {hours: 14,minutes: 30}
  });
  
  