def test_router_put(self): """Test that putting a resource via a router works.""" router = ModelResourceRouter(session=self.db_session, context={}) track = { "album": "/tracks/1/album", "bytes": 11170334, "composer": "Angus Young, Malcolm Young, Brian Johnson", "genre": "/tracks/1/genre", "media_type": "/tracks/1/media_type", "milliseconds": 4000000, "name": "For Those About To Rock (We Salute You)", "playlists": "/tracks/1/playlists", "self": "/tracks/1", "track_id": 1, "unit_price": 0.99 } result = router.put("/tracks/1", data=track) self.assertTrue( result["milliseconds"] == 4000000 )
def test_router_put(db_session): """Test that putting a resource via a router works.""" router = ModelResourceRouter(session=db_session, context={}) track = { "album": "/tracks/1/album", "bytes": 11170334, "composer": "Angus Young, Malcolm Young, Brian Johnson", "genre": { "genre_id": 1 }, "media_type": { "media_type_id": 1 }, "milliseconds": 4000000, "name": "For Those About To Rock (We Salute You)", "playlists": "/tracks/1/playlists", "self": "/tracks/1", "track_id": 1, "unit_price": 0.99 } result = router.put("/tracks/1", data=track) assert result["milliseconds"] == 4000000
def test_router_child_put_collection(db_session): """Test putting a child collection via a router fails.""" router = ModelResourceRouter(session=db_session, context={}) with raises(MethodNotAllowedError): router.put("/albums/1/tracks", data=[])
def test_router_put_attr(db_session): """Test that putting a resource attr via a router works.""" router = ModelResourceRouter(session=db_session, context={}) result = router.put("/tracks/14/bytes", data=1) assert result == 1