def test_create_new(self): with paste.Paster(dialect=dialect, dbname=dbname) as p: created = p.create(b'This is a test paste') self.assertEqual(created, { 'id': 1, 'hashid': 'f872a542a8289d2273f6cb455198e06126f4ec30' })
def redirectData(redirect, addr=None, sunset=None): with paste.Paster(dialect=config.get('dialect'), dbname=config.get('dbname'), driver=config.get('driver'), host=config.get('host'), password=config.get('password'), port=config.get('port'), username=config.get('username')) as pstr: j = pstr.create(redirect.encode('utf-8'), mime='redirect', ip=addr, sunset=sunset) return json.dumps(j)
def stringData(inputstr, addr=None, sunset=None, mime=None): with paste.Paster(dialect=config.get('dialect'), dbname=config.get('dbname'), driver=config.get('driver'), host=config.get('host'), password=config.get('password'), port=config.get('port'), username=config.get('username')) as pstr: j = pstr.create(inputstr.encode('utf-8'), mime=mime, ip=addr, sunset=sunset) return json.dumps(j) return 'String save error'
def test_query_hash(self): timestamp = datetime.now() with paste.Paster(dialect=dialect, dbname=dbname) as p: p.create(b'This is a test paste', timestamp=timestamp) lookup = p.query(hashid='f872a542a8289d2273f6cb455198e06126f4ec30') self.assertEqual( lookup, { 'id': 1, 'hashid': 'f872a542a8289d2273f6cb455198e06126f4ec30', 'ip': None, 'mime': 'text/plain', 'sunset': None, 'timestamp': timestamp, 'data': b'This is a test paste' })
def getPaste(paste_id): with paste.Paster(dialect=config.get('dialect'), dbname=config.get('dbname'), driver=config.get('driver'), host=config.get('host'), password=config.get('password'), port=config.get('port'), username=config.get('username')) as pstr: try: return pstr.query(id=paste_id) except ValueError: try: return pstr.query(hashid=paste_id) except ValueError: return None return None
def fileData(files, addr=None, sunset=None, mimestr=None): try: buf = files.stream if buf and isinstance(buf, io.BytesIO) or isinstance( buf, io.BufferedRandom): data = buf.read() mime = getMime(data=data, mimestr=mimestr) with paste.Paster(dialect=config.get('dialect'), dbname=config.get('dbname'), driver=config.get('driver'), host=config.get('host'), password=config.get('password'), port=config.get('port'), username=config.get('username')) as pstr: j = pstr.create(data, mime=mime, ip=addr, sunset=sunset) return json.dumps(j) except IOError as e: return 'caught exception in filedata' + str(e) return 'File save error'
def test_delete_hash(self): with paste.Paster(dialect=dialect, dbname=dbname) as p: p.create(b'This is a test paste') p.delete(hashid='f872a542a8289d2273f6cb455198e06126f4ec30') lookup = p.query(id=1) self.assertEqual(lookup, None)
def test_delete_id(self): with paste.Paster(dialect=dialect, dbname=dbname) as p: p.create(b'This is a test paste') p.delete(id=1) lookup = p.query(id=1) self.assertEqual(lookup, None)
def test_query_none(self): with paste.Paster(dialect=dialect, dbname=dbname) as p: p.create(b'This is a test paste') lookup = p.query() self.assertEqual(lookup, None)
def test_query_disaster(self): with paste.Paster(dialect=dialect, dbname=dbname) as p: p.create(b'This is a test paste') with self.assertRaises(ValueError): p.query(id='f872a542a8289d2273f6cb455198e06126f4ec30')