def test_database(self): db = Database() db.create_and_empty_tables() db.log(1234, 'test', 'content') logs = db.fetch_logs() self.assertEqual(logs[0]['event'],'test') db.new_participant(123456789, 987654321, '2014-05-04', '2014-06-05') db.update_participant(123456789,"twilio", 1111111111) participants = db.load_participants() self.assertEqual(participants[0][0],123456789) db.log_email('test@test','$0.36') emails = db.fetch_email() self.assertEqual(emails[0]['email'],'test@test') db.create_and_empty_tables()
def valid_time(date_text): try: return datetime.strptime(date_text, '%Y-%m-%d') except: return False def valid_number(number): if len(str(number)) == 11: return int(number) return False db = Database() participants = dict() participant_tuples = db.load_participants() for p in participant_tuples: participants[p[0]] = Participant(p[0],p[1],p[2],valid_time(p[3]),p[4],p[5]) participants[p[0]].next_message() from flask import Flask, request, Response, render_template app = Flask(__name__) @app.route('/receiver', methods=['POST']) def respond_to_text(): number = valid_number(request.form['From'][1:]) request_text = request.form['Body'] if number: db.log(number, 'received', request_text) if number in participants: # message received from a number we've recently messaged if participants[number].expecting: