コード例 #1
0
    def test_get_tag_tag_not_found(self):
        tag = self.session.query(Tag).filter(Tag.owner == self.test_user_id, Tag.name == self.tag_name).first()

        if tag is not None:
            self.session.delete(tag)
            self.session.commit()

        with self.assertRaises(DBTagNotFound):
            TagWrapper.get_tag_by_name(self.session, self.test_user_id, self.tag_name)
コード例 #2
0
 def create(name: str,
            session=None,
            player_id=None,
            private_key=None) -> 'Tag':
     """
     Creates a new instance of Tag, add one to the db if it does not exist.
     :param name: Tag name
     :param session: Database session
     :param player_id
     :param private_key
     :return:
     """
     # Check if tag exists
     try:
         dbtag = TagWrapper.get_tag_by_name(
             session, get_current_user_id(player_id=player_id), name)
         tag = Tag.create_from_dbtag(dbtag)
         return tag
     except DBTagNotFound:
         pass
     dbtag = TagWrapper.create_tag(session,
                                   get_current_user_id(player_id=player_id),
                                   name,
                                   private_key=private_key)
     tag = Tag.create_from_dbtag(dbtag)
     return tag
コード例 #3
0
    def rename(current_name: str, new_name: str, session=None) -> 'Tag':
        # Check if name already exists
        try:
            TagWrapper.get_tag_by_name(session, get_current_user_id(),
                                       new_name)
            raise TagError(409, f"Tag with name {new_name} already exists.")
        except DBTagNotFound:
            pass

        try:
            dbtag = TagWrapper.rename_tag(session, get_current_user_id(),
                                          current_name, new_name)
        except DBTagNotFound:
            raise TagNotFound()
        tag = Tag.create_from_dbtag(dbtag)
        return tag
コード例 #4
0
    def test_get_tag_success(self):
        tag = Tag(owner=self.test_user_id, name=self.tag_name)
        self.session.add(tag)
        self.session.commit()

        tag = TagWrapper.get_tag_by_name(self.session, self.test_user_id, self.tag_name)

        self.assertIsNotNone(tag)
コード例 #5
0
    def test_get_all_replays_with_tags_invalid_private_id(self, initialize_database_tags, test_client, mock_user):
        session = initialize_database_tags.get_session()
        tags = initialize_database_tags.get_tags()

        tag_id = TagWrapper.get_tag_by_name(session, mock_user.get_user().platformid, tags[0][0]).id
        invalid_private_id = JsonTag.encode_tag(tag_id, 'invalid_key')
        r = Request('GET', LOCAL_URL + '/api/replay', params={'limit': 200, 'page': 0,
                                                              'private_tag_keys': [invalid_private_id]})

        response = test_client.send(r)
        assert(response.status_code == 400)
コード例 #6
0
 def get_tag(name: str, session=None) -> 'Tag':
     dbtag = TagWrapper.get_tag_by_name(session, get_current_user_id(),
                                        name)
     return Tag.create_from_dbtag(dbtag)