Exemplo n.º 1
0
def create_test_track(id=None,
                      duration=None,
                      tags=(),
                      attachments=(),
                      lyrics=None,
                      source_filename=None):
    def _get_tag(tag):
        return get_tag(tag, create_if_missing=True)

    def _get_attachment(attachment):
        if hasattr(attachment, 'location') and hasattr(attachment, 'type'):
            return create_attachment(attachment)
        else:
            return DBSession.query(Attachment).filter(
                Attachment.location.like('%%{0}%%'.format(attachment))).one()

    track = Track()
    track.id = id if id else random_string(10)
    track.duration = duration if duration else random.randint(60, 360)
    for tag in tags:
        track.tags.append(_get_tag(tag))
    for attachment in attachments:
        track.attachments.append(_get_attachment(attachment))
    track.lyrics = lyrics or ''
    track.source_filename = source_filename

    DBSession.add(track)

    return track
Exemplo n.º 2
0
def create_test_track(id=None, duration=None, tags=[], attachments=[], lyrics=None, source_filename=None):
    def _get_tag(tag):
        return get_tag(tag, create_if_missing=True)    
    def _get_attachment(filename):
        return DBSession.query(Attachment).filter(Attachment.location.like('%%{0}%%'.format(filename))).one()

    track = Track()
    track.id          = id       if id       else random_string(10)
    track.duration    = duration if duration else random.randint(60,360)
    [track.tags       .append(_get_tag       (t)) for t in tags       ]
    [track.attachments.append(_get_attachment(a)) for a in attachments]
    if lyrics:
        track.lyrics.append(lyrics)
    track.source_filename = source_filename
    return track
Exemplo n.º 3
0
def create_test_track(id=None, duration=None, tags=(), attachments=(), lyrics=None, source_filename=None):

    def _get_tag(tag):
        return get_tag(tag, create_if_missing=True)

    def _get_attachment(attachment):
        if hasattr(attachment, 'location') and hasattr(attachment, 'type'):
            return create_attachment(attachment)
        else:
            return DBSession.query(Attachment).filter(Attachment.location.like('%%{0}%%'.format(attachment))).one()

    track = Track()
    track.id = id if id else random_string(10)
    track.duration = duration if duration else random.randint(60, 360)
    for tag in tags:
        track.tags.append(_get_tag(tag))
    for attachment in attachments:
        track.attachments.append(_get_attachment(attachment))
    track.lyrics = lyrics or ''
    track.source_filename = source_filename

    DBSession.add(track)

    return track