Пример #1
0
	def post(self):
		parser = reqparse.RequestParser()

		parser.add_argument('message', 
							type=str, 
							required=True,
							help='Message cannot be blank!'
							)

		parser.add_argument('duration', 
							type=int, 
							required=True,
							help='Duration cannot be blank!'
							)

		parser.add_argument('message_category', 
							type=str, 
							required=True,
							help='Message category cannot be blank!'
							)
		
		args = parser.parse_args()

		message = MessageModel(message=args['message'],
							duration=args['duration'],		
							creation_date=datetime.now(utc),
							message_category=args['message_category']
							)
		message_manager.insert_message(message)
		return message, status.HTTP_201_CREATED
Пример #2
0
    def mutate(self, info, input):
        data = input
        data['date'] = datetime.datetime.utcnow()

        message = MessageModel(**data)
        db_session.add(message)
        db_session.commit()

        return SendMessage(message=message)
Пример #3
0
 def mutate(self, info, input):
     data = input_to_dictionary(input)
     data['created'] = datetime.utcnow()
     data['edited'] = datetime.utcnow()
     message = MessageModel(**data)
     db_session.add(message)
     db_session.commit()
     #middleware 처리할
     return CreateMessage(message=message)
Пример #4
0
 def _create_message(self, guest_id, host_id, message):
     user = "******" if message.user_id() == host_id else "guest"
     new_msg = MessageModel(
         guest_id=guest_id,
         user=user,
         message=message.message(),
         channel="airbnb",
         sent=message.sent(),
     )
     self.db.add_message(host_id, new_msg)
Пример #5
0
def test_create_message_by_guest(sync, mock_message_one):
    expected_message = MessageModel(
        guest_id="002",
        sent=mock_message_one.sent(),
        message=mock_message_one.message(),
        user="******",
        channel="airbnb",
    )
    sync._create_message("002", "001", mock_message_one)

    sync.db.add_message.assert_called_once_with("001", expected_message)
Пример #6
0
def test_update_message_existing_different_message(sync, mock_message_one,
                                                   mock_message_two):
    existing_msg = MessageModel(
        guest_id="002",
        sent=mock_message_one.sent(),
        message=mock_message_one.message(),
        user="******",
        channel="airbnb",
    )

    sync.db.messages_by_host_guest.return_value = [existing_msg]
    sync._update_message("002", "001", mock_message_two)

    expected_message = MessageModel(
        guest_id="002",
        sent=mock_message_two.sent(),
        message=mock_message_two.message(),
        user="******",
        channel="airbnb",
    )

    sync.db.add_message.assert_called_once_with("001", expected_message)
Пример #7
0
def test_update_message_existing_same_message(sync, mock_message_one):
    existing_msg = MessageModel(
        guest_id="002",
        sent=mock_message_one.sent(),
        message=mock_message_one.message(),
        user="******",
        channel="airbnb",
    )

    sync.db.messages_by_host_guest.return_value = [existing_msg]
    sync._update_message("002", "001", mock_message_one)

    assert not (sync.db.add_message.called)
Пример #8
0
def test_update_message_empty_db(sync, mock_message_one):
    sync.db.messages_by_host_guest.return_value = []
    sync._update_message("002", "001", mock_message_one)

    expected_message = MessageModel(
        guest_id="002",
        sent=mock_message_one.sent(),
        message=mock_message_one.message(),
        user="******",
        channel="airbnb",
    )

    sync.db.add_message.assert_called_once_with("001", expected_message)
Пример #9
0
    def messages(self):
        result = {}

        data = self._query_table("msg")
        data = [(MessageModel(**item["itemData"]), item["itemID"])
                for item in data]

        for message, key in data:
            host_id, guest_id, *_ = key.split("#")

            if host_id not in result:
                result[host_id] = {}

            if guest_id not in result[host_id]:
                result[host_id][guest_id] = []

            result[host_id][guest_id].append(message)

        return result
Пример #10
0
def add():
    "添加日程"
    if request.method == "GET":
        g.title = u"添加日程"
        g.submit = u"添加"
        return render_template("notes/edit.html")
    else:
        remindDate = request.form.get("remindDate", None)
        message = request.form.get("message", None)
        uid = session.get("uid", None)
        dao = MessageModel(uid, message, remindDate)
        dbSession = sessionMaker()
        dbSession.add(dao)
        try:
            dbSession.commit()
            r = True
        except:
            dbSession.rollback()
            r = False
        finally:
            dbSession.close()
        return redirect(url_for("notes.index"))
Пример #11
0
    def messages_by_host_guest(self, host_id: str, guest_id: str):
        data = self._query_table("msg", f"{host_id}#{guest_id}", ["itemData"])
        data = [item["itemData"] for item in data]
        data = [MessageModel(**message) for message in data]

        return data