Skip to content

Commit

Permalink
Added tests for share endpoints
Browse files Browse the repository at this point in the history
  • Loading branch information
redshodan committed Jul 8, 2018
1 parent 641b31e commit f9fbefd
Show file tree
Hide file tree
Showing 5 changed files with 81 additions and 1 deletion.
16 changes: 16 additions & 0 deletions test/tests/rest/testcreateshare.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
from unsonic.models import Share
from unsonic.views.rest.createshare import CreateShare
from . import buildCmd, checkResp


def testCreateShare(session):
desc = "share1 description"
slist = ["tr-1", "al-2", "tr-3"]
cmd = buildCmd(session, CreateShare, {"description": desc, "id": slist})
checkResp(cmd.req, cmd())
row = session.query(Share).filter(Share.description == desc).one_or_none()
assert row is not None
assert row.entries[0].track_id == 1
assert row.entries[1].album_id == 2
assert row.entries[2].track_id == 3
assert row.user.name == "test"
22 changes: 22 additions & 0 deletions test/tests/rest/testdeleteshare.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
from unsonic.models import Share
from unsonic.views.rest.createshare import CreateShare
from unsonic.views.rest.deleteshare import DeleteShare
from . import buildCmd, checkResp


def testDeleteShare(session):
desc = "share1 description"
slist = ["tr-1", "al-2", "tr-3"]
cmd = buildCmd(session, CreateShare, {"description": desc, "id": slist})
sub_resp = checkResp(cmd.req, cmd())
row = session.query(Share).filter(Share.description == desc).one_or_none()
assert row is not None

shares = sub_resp.find("{http://subsonic.org/restapi}shares")
share = shares.find("{http://subsonic.org/restapi}share")
sid = share.get("id")

cmd = buildCmd(session, DeleteShare, {"id": sid})
checkResp(cmd.req, cmd())
row = session.query(Share).filter(Share.description == desc).one_or_none()
assert row is None
20 changes: 20 additions & 0 deletions test/tests/rest/testgetshares.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
from unsonic.models import Share
from unsonic.views.rest.createshare import CreateShare
from unsonic.views.rest.getshares import GetShares
from . import buildCmd, checkResp


def testCreateShare(session):
desc = "share1 description"
slist = ["tr-1", "al-2", "tr-3"]
cmd = buildCmd(session, CreateShare, {"description": desc, "id": slist})
sub_resp = checkResp(cmd.req, cmd())
row = session.query(Share).filter(Share.description == desc).one_or_none()
assert row is not None

shares = sub_resp.find("{http://subsonic.org/restapi}shares")
share = shares.find("{http://subsonic.org/restapi}share")
sid = share.get("id")

cmd = buildCmd(session, GetShares, {"id": sid})
checkResp(cmd.req, cmd())
22 changes: 22 additions & 0 deletions test/tests/rest/testupdateshare.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
from unsonic.models import Share
from unsonic.views.rest.createshare import CreateShare
from unsonic.views.rest.updateshare import UpdateShare
from . import buildCmd, checkResp


def testUpdateShare(session):
desc = "share1 description"
slist = ["tr-1", "al-2", "tr-3"]
cmd = buildCmd(session, CreateShare, {"description": desc, "id": slist})
sub_resp = checkResp(cmd.req, cmd())

shares = sub_resp.find("{http://subsonic.org/restapi}shares")
share = shares.find("{http://subsonic.org/restapi}share")
sid = share.get("id")

ndesc = "new share1 description"
cmd = buildCmd(session, UpdateShare, {"description": ndesc, "id": sid})
checkResp(cmd.req, cmd())

row = session.query(Share).filter(Share.description == ndesc).one_or_none()
assert row is not None
2 changes: 1 addition & 1 deletion unsonic/views/rest/getshares.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@


@registerCmd
class CreateShare(Command):
class GetShares(Command):
name = "getShares.view"
param_defs = {}
dbsess = True
Expand Down

0 comments on commit f9fbefd

Please sign in to comment.