## Script (Python) "test_getAccommodationInfo" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters= ##title= ## # $Id: test_getAccommodationInfo.py 3087 2008-02-02 11:04:55Z joachim $ """ """ try: from Products.zdb import set_trace except: def set_trace(): pass mtool = context.portal_membership member = mtool.getAuthenticatedMember() if str(member) not in ('admin','joachim'): return import logging import DateTime logger = logging.getLogger('Skins.test_getAccommodationInfo') from Products.AdvancedQuery import Eq, Between, Le,In aq_students = context.students_catalog.evalAdvancedQuery aq_portal = context.portal_catalog_real.evalAdvancedQuery students_folder = context.portal_url.getPortalObject().campus.students request = context.REQUEST session = request.SESSION response = request.RESPONSE setheader = request.RESPONSE.setHeader testcases = {} testcases['K817845'] = {'booking_allowed': False, 'student_status': 'female_re',} testcases['E561916'] = {'booking_allowed': False, 'student_status': 'female_fi',} ok_count = 0 failed_count = 0 logger.info("start test for %d students" % (len(testcases))) for student_id,expected in testcases.items(): logger.info("testing %s" % student_id) info = context.getAccommodationInfo(student_id) failed = False for k in expected.keys(): if info[k] != expected[k]: failed = True break if failed: failed_count += 1 got = {} for k in expected.keys(): got[k] = info[k] logger.info("failed for %s expected %s got %s" % (student_id, expected, got )) else: logger.info("test %s OK" % student_id) ok_count += 1 logger.info("finished %d tests %d ok %d failed" % (len(testcases),ok_count,failed_count))