def setUp(self): super(TestStudentListApi, self).setUp() Student.new_student('alice', 'alice smith', email='*****@*****.**', year=2015).key.get(use_cache=False) self.alice = self.new_user()
def test_list_stats(self): student = Student.new_student( 'bob', 'bob smith', email='*****@*****.**', year=2015 ).key.get(use_cache=False) roshreview.RoshReviewUserStats.new_stats( student, { "email": "*****@*****.**", "training_level": "Resident", "pgy": -5, "percentage_complete": 0, "cumulative_performance": 0, "category_performances": {} } ).key.get(use_cache=False) alice = self.new_user(is_staff=True) headers = self.login(user=alice) resp = self.app.get( '%s/dashboard/roshreview/stats' % api.path, headers=headers ).json api.validate('RoshReviewUserStatsList', resp) self.assertEqual(1, len(resp['stats'])) self.assertEqual(0, resp['stats'][0]['performance'])
def setUp(self): super(TestStudentNameApi, self).setUp() self.bob = Student.new_student('bob', 'bob smith', email='*****@*****.**', year=2015).key.get(use_cache=False)
def row_handler(line_details): year = context.get().mapreduce_spec.mapper.params.get('student_year') pos, line = line_details if not pos: # skip header raise StopIteration() if not year: logging.error('Failed to create a new student. The year is missing') raise StopIteration() row = csv.reader(StringIO.StringIO(line)).next() if len(row) < 4: logging.error( 'Failed to create a new student. Some fields are missing: %s', line) raise StopIteration() _, surname, name, email = row[0:4] try: entity = Student.new_student(surname, name, email=email, year=year, commit=False) except (ValueError, TypeError, ValidationError) as e: logging.error( 'Failed to create a new student. wrong fields: %s.\n' 'Error: %s', line, e) raise StopIteration yield op.db.Put(entity) yield op.counters.Increment('student added/updated', 1)
def test_get_list(self): Student.new_student( 'bob', 'bob smith', email='*****@*****.**', year=2016 ).key.get(use_cache=False) Student.new_student( 'alice', 'alice smith', email='*****@*****.**', year=2015 ).key.get(use_cache=False) headers = self.logoff() resp = self.app.get( '%s/dashboard/pgy' % api.path, headers=headers, ) api.validate('PGYList', resp.json) self.assertEqual(2, len(resp.json['pgy'])) self.assertEqual('max-age=300, public', resp.headers['Cache-Control'])
def test_archive_year(self): Student.new_student( 'bob', 'bob smith', email='*****@*****.**', year=2016 ).key.get(use_cache=False) Student.new_student( 'alice', 'alice smith', email='*****@*****.**', year=2015 ).key.get(use_cache=False) bob = self.new_user(is_staff=True) headers = self.login(user=bob) self.app.delete( '%s/dashboard/pgy/2016' % api.path, headers=headers, ) self.assertTrue(Student.get_by_id('A0002', use_cache=False).is_active) self.assertFalse(Student.get_by_id('A0001', use_cache=False).is_active)
def add_student(data): display_name, email, year = data given_name = display_name.split(' ', 1)[0] student = Student.new_student( given_name, display_name, email=email, year=year, commit=False ) student.put_async() return student
def test_archive_year(self): Student.new_student('bob', 'bob smith', email='*****@*****.**', year=2016).key.get(use_cache=False) Student.new_student('alice', 'alice smith', email='*****@*****.**', year=2015).key.get(use_cache=False) bob = self.new_user(is_staff=True) headers = self.login(user=bob) self.app.delete( '%s/dashboard/pgy/2016' % api.path, headers=headers, ) self.assertTrue(Student.get_by_id('A0002', use_cache=False).is_active) self.assertFalse(Student.get_by_id('A0001', use_cache=False).is_active)
def test_get_list(self): Student.new_student('bob', 'bob smith', email='*****@*****.**', year=2016).key.get(use_cache=False) Student.new_student('alice', 'alice smith', email='*****@*****.**', year=2015).key.get(use_cache=False) headers = self.logoff() resp = self.app.get( '%s/dashboard/pgy' % api.path, headers=headers, ) api.validate('PGYList', resp.json) self.assertEqual(2, len(resp.json['pgy'])) self.assertEqual('max-age=300, public', resp.headers['Cache-Control'])
def setUp(self): super(TestRoshReviewUserStats, self).setUp() services.config.ROSH_REVIEW_API_URL_PATTERN = ( 'http://example.com/%s/subscriber_details?' ) services.config.ROSH_REVIEW_API_KEY = 'api-key' self.student = Student.new_student( 'bob', 'bob smith', email='*****@*****.**', year=2015 ).key.get(use_cache=False)
def setUp(self): super(TestRoshReviewUserStats, self).setUp() services.config.ROSH_REVIEW_API_URL_PATTERN = ( 'http://example.com/%s/subscriber_details?') services.config.ROSH_REVIEW_API_KEY = 'api-key' self.student = Student.new_student('bob', 'bob smith', email='*****@*****.**', year=2015).key.get(use_cache=False)
def setUp(self): super(TestRoshReviewUserStatsApi, self).setUp() student = Student.new_student( 'bob', 'bob smith', email='*****@*****.**', year=2015 ).key.get(use_cache=False) roshreview.RoshReviewUserStats.new_stats( student, { "email": "*****@*****.**", "training_level": "Resident", "pgy": -5, "percentage_complete": 0, "cumulative_performance": 0, "category_performances": { "FOO": 0 } } ).key.get(use_cache=False)
def setUp(self): super(TestRepositoryDocumentApi, self).setUp() self.admin = self.new_user(is_admin=True) self.student = Student.new_student( 'bob', 'bob smith', email='*****@*****.**', year=2015 ).key.get(use_cache=False) file_name = files.blobstore.create(mime_type='text/plain') with files.open(file_name, 'a') as f: f.write('test') files.finalize(file_name) blob_key = files.blobstore.get_blob_key(file_name) self.document = models.Document.new_file( self.student.key.id(), BlobInfo.get(blob_key), 'SHELF', sender=self.admin, name='test' ).key.get(use_cache=False)
def setUp(self): super(TestFirstAidUserStats, self).setUp() self.student = Student.new_student('bob', 'bob smith', email='*****@*****.**', year=2015).key.get(use_cache=False)
def setUp(self): super(TestFirstAidUserStats, self).setUp() self.student = Student.new_student( 'bob', 'bob smith', email='*****@*****.**', year=2015 ).key.get(use_cache=False)
def setUp(self): super(TestAssessmentExamListApi, self).setUp() Student.new_student( 'alice', 'alice smith', email='*****@*****.**', year=2015 ).key.get(use_cache=False) self.alice = self.new_user(student_id='A0001')
def setUp(self): super(TestStudentNameApi, self).setUp() self.bob = Student.new_student( 'bob', 'bob smith', email='*****@*****.**', year=2015 ).key.get(use_cache=False)