def testGetVendorInfo(self): actualData = getVendorInfo(mockData=True) expectedData = [ ("mockVendorOne", "http://mockVendorOne.com/", "mockVendorOne.jpg"), ("mockVendorTwo", "http://mockVendorTwo.com/", "mockVendorTwo.jpg"), ("mockVendorThree", "http://mockVendorThree.com/", "mockVendorThree.jpg"), ("mockVendorFour", "http://mockVendorFour.com/", "mockVendorFour.jpg"), ("mockVendorFive", "http://mockVendorFive.com/", "mockVendorFive.jpg") ] index = 0 msg = "{0} != {1}" for (vendorName, vendorLink, vendorImg) in actualData: try: actualVendorName, actualVendorLink, actualVendorImg = expectedData[index] self.assertEqual(vendorName, actualVendorName, msg=msg.format(vendorName, actualVendorName)) self.assertEqual(vendorLink, actualVendorLink, msg=msg.format(vendorLink, actualVendorLink)) self.assertEqual(vendorImg, actualVendorImg, msg=msg.format(vendorImg, actualVendorImg)) index += 1 except IndexError: raise Exception("Expected {0} data points but got more" .format(len(expectedData)))
def updateData(today): gridEvent.objects.all().delete() gridVendor.objects.all().delete() gridEventVendor.objects.all().delete() pastEvents = getPastEvents(today) vendorInfo = getVendorInfo() vendors = [ vendorName for (vendorName, vendorImg, vendorLink) in vendorInfo ] pastEventCountDict = {vendorName: 0 for vendorName in vendors} for eventName, startDate, eventLocation, eventDescription in pastEvents: eventVendors = getVendorsForEvent(eventDescription, vendors) for eventVendor in eventVendors: pastEventCountDict[eventVendor] = pastEventCountDict.get( eventVendor, 0) + 1 for (vendorName, vendorLink, vendorImg) in vendorInfo: grid_vendor = gridVendor(vendor_name=vendorName, vendor_link=vendorLink, vendor_img=vendorImg, event_count=pastEventCountDict[vendorName]) grid_vendor.save() upcomingEvents = getUpcomingEvents(today) for (eventName, startDate, eventLocation, eventDescription) in upcomingEvents: upcomingGridEvent = gridEvent(event_name=eventName.replace( 'Off the Grid: ', ''), event_location=eventLocation, start_date=startDate) upcomingGridEvent.save() eventVendors = getVendorsForEvent(eventDescription, vendors) for eventVendor in eventVendors: upcomingGridVendor = gridVendor.objects.filter( vendor_name=eventVendor)[0] upcomingGridEventVendor = gridEventVendor( grid_event=upcomingGridEvent, grid_vendor=upcomingGridVendor) upcomingGridEventVendor.save()
def updateData(today): gridEvent.objects.all().delete() gridVendor.objects.all().delete() gridEventVendor.objects.all().delete() pastEvents = getPastEvents(today) vendorInfo = getVendorInfo() vendors = [vendorName for (vendorName, vendorImg, vendorLink) in vendorInfo] pastEventCountDict = {vendorName: 0 for vendorName in vendors} for eventName, startDate, eventLocation, eventDescription in pastEvents: eventVendors = getVendorsForEvent(eventDescription, vendors) for eventVendor in eventVendors: pastEventCountDict[eventVendor] = pastEventCountDict.get( eventVendor, 0) + 1 for (vendorName, vendorLink, vendorImg) in vendorInfo: grid_vendor = gridVendor( vendor_name=vendorName, vendor_link=vendorLink, vendor_img=vendorImg, event_count=pastEventCountDict[vendorName]) grid_vendor.save() upcomingEvents = getUpcomingEvents(today) for (eventName, startDate, eventLocation, eventDescription) in upcomingEvents: upcomingGridEvent = gridEvent( event_name=eventName.replace( 'Off the Grid: ', ''), event_location=eventLocation, start_date=startDate) upcomingGridEvent.save() eventVendors = getVendorsForEvent(eventDescription, vendors) for eventVendor in eventVendors: upcomingGridVendor = gridVendor.objects.filter( vendor_name=eventVendor)[0] upcomingGridEventVendor = gridEventVendor( grid_event=upcomingGridEvent, grid_vendor=upcomingGridVendor) upcomingGridEventVendor.save()