def menu_options(option): if option == 1: db_functions.connect() db_functions.list_users() menu() elif option == 2: db_functions.connect() db_functions.add_user() menu() elif option == 3: db_functions.connect() db_functions.edit_user() menu() elif option == 4: db_functions.connect() db_functions.delete_user() menu() elif option == 5: sys.exit('Bye.') else: print(str(option) + " is not a valid option. Please try again.") menu()
def delete_irrelevant_requests(): """Функция, которая удаляет неактуальные заявки и информирует от этом. Запускается сервером в конце рабочего дня""" import telebot import passwords bot = telebot.TeleBot(passwords.key) from db_functions import connect try: db = connect() for instance in db.posts.find({}): bot.send_message(instance['message_chat_id'], "🌃 Увы, сегодня вам не нашлось пары 🌃\n" "🌅 Отправь новую заявку на завтра прямо сейчас! 🌅\n" "(👉 /start)") db.posts.delete_one(instance) except Exception as ex: import logging logging.error("Ошибка удаления:" + str(ex))
""" Nose tests for db_functions.py """ import db_functions, flask_main, uuid, arrow col = db_functions.connect() # db collection def test_create_remove(): """ Make sure memos are properly added and removed from the database """ uid = uuid.uuid4() assert col.find({'_id': uid}).count() == 0 db_functions.create('memo text', '2017-01-01', uid) assert col.find({'_id': uid}).count() == 1 db_functions.remove(uid) assert col.find({'_id': uid}).count() == 0 def test_get(): """ Make sure memos are returned in chronological order """ memo_list = db_functions.get_memos() for i in range(0, len(memo_list)): if i != (len(memo_list) - 1): assert memo_list[i]['date'] < memo_list[i + 1]['date']
'summary': 'test-user2 first test event', 'start': 'start datetime', 'end': 'end datetime' }, { 'event_id': 'user2event2', 'summary': 'test-user2 second test event', 'start': 'start datetime', 'end': 'end datetime' }, ] }, ] } c = db.connect() # db collection ## # helper functions ## def clean(): c.remove({ '_id': meeting_id }) def insert_full_meeting(): clean() c.insert(full_test_meeting) def insert_empty_meeting(): clean() c.insert(empty_test_meeting)
import uuid # Date handling import arrow ### # Globals ### import CONFIG app = flask.Flask(__name__) app.secret_key = CONFIG.secret_key ### # Initialize database connection ### db_functions.connect() ### # Pages ### @app.route("/") @app.route("/index") def index(): g.memos = db_functions.get_memos() return flask.render_template('index.html') @app.route("/create") def create(): return flask.render_template('create.html') ###
# Date handling import arrow # Replacement for datetime, based on moment.js # import datetime # But we still need time from dateutil import tz # For interpreting local times # OAuth2 - Google library implementation for convenience from oauth2client import client import httplib2 # used in oauth2 flow # Google API for services from apiclient import discovery # Database interaction import db_functions db_functions.connect() # initialize db connection ### # Globals ### import CONFIG import secrets.admin_secrets # Per-machine secrets import secrets.client_secrets # Per-application secrets app = flask.Flask(__name__) app.debug = CONFIG.DEBUG app.logger.setLevel(logging.DEBUG) app.secret_key = CONFIG.secret_key SCOPES = 'https://www.googleapis.com/auth/calendar.readonly' CLIENT_SECRET_FILE = secrets.admin_secrets.google_key_file