Changing the endpoint used to delete a skill settings block
parent
ad1bd532a0
commit
942244cd77
|
@ -42,7 +42,7 @@ public.register_blueprint(selene_api)
|
|||
_log = configure_logger('public_api')
|
||||
|
||||
public.add_url_rule(
|
||||
'/v1/device/<string:device_id>/skill/<string:skill_id>',
|
||||
'/v1/device/<string:device_id>/skill/<string:skill_gid>',
|
||||
view_func=DeviceSkillsEndpoint.as_view('device_skill_delete_api'),
|
||||
methods=['DELETE']
|
||||
)
|
||||
|
|
|
@ -96,7 +96,7 @@ class DeviceSkillsEndpoint(PublicEndpoint):
|
|||
skill_id = SkillRepository(self.db).add(device_id, payload)
|
||||
return {'uuid': skill_id}, HTTPStatus.OK
|
||||
|
||||
def delete(self, device_id, skill_id):
|
||||
def delete(self, device_id, skill_gid):
|
||||
self._authenticate(device_id)
|
||||
DeviceSkillRepository(self.db).delete(device_id, skill_id)
|
||||
DeviceSkillRepository(self.db).delete(device_id, skill_gid)
|
||||
return '', HTTPStatus.OK
|
||||
|
|
|
@ -9,8 +9,8 @@ from selene.data.skill import AccountSkillSetting, SkillSettingRepository
|
|||
from selene.util.db import connect_to_db
|
||||
|
||||
skill = {
|
||||
'skill_gid': 'wolfram-alpha|19.02',
|
||||
'identifier': 'wolfram-alpha-123456',
|
||||
'skill_gid': '@6e1533c1-0040-41e7-a29f-4832320a2360|wolfram-alpha|19.02',
|
||||
'identifier': '@6e1533c1-0040-41e7-a29f-4832320a2360|wolfram-alpha-123456',
|
||||
"skillMetadata": {
|
||||
"sections": [
|
||||
{
|
||||
|
@ -50,7 +50,7 @@ new_settings = {
|
|||
}
|
||||
|
||||
skill_updated = {
|
||||
'skill_gid': 'wolfram-alpha|19.02',
|
||||
'skill_gid': '@6e1533c1-0040-41e7-a29f-4832320a2360|wolfram-alpha|19.02',
|
||||
"skillMetadata": {
|
||||
"sections": [
|
||||
{
|
||||
|
@ -237,13 +237,12 @@ def validate_empty_skill_uploading(context):
|
|||
def delete_skill(context):
|
||||
skills = json.loads(context.get_skill_response.data)
|
||||
skill_fetched = skills[0]
|
||||
skill_uuid = skill_fetched['uuid']
|
||||
login = context.device_login
|
||||
device_id = login['uuid']
|
||||
access_token = login['accessToken']
|
||||
headers = dict(Authorization='Bearer {token}'.format(token=access_token))
|
||||
context.delete_skill_response = context.client.delete(
|
||||
'/v1/device/{device_uuid}/skill/{skill_uuid}'.format(device_uuid=device_id, skill_uuid=skill_uuid),
|
||||
'/v1/device/{device_uuid}/skill/{skill_gid}'.format(device_uuid=device_id, skill_gid=skill['skill_gid']),
|
||||
headers=headers
|
||||
)
|
||||
context.get_skill_after_delete_response = context.client.get(
|
||||
|
|
|
@ -18,12 +18,12 @@ class DeviceSkillRepository(RepositoryBase):
|
|||
)
|
||||
self.cursor.insert(db_request)
|
||||
|
||||
def delete(self, device_id, skill_id):
|
||||
def delete(self, device_id, skill_gid):
|
||||
db_request = self._build_db_request(
|
||||
sql_file_name='delete_device_skill.sql',
|
||||
args=dict(
|
||||
device_id=device_id,
|
||||
skill_id=skill_id
|
||||
skill_gid=skill_gid
|
||||
)
|
||||
)
|
||||
self.cursor.delete(db_request)
|
||||
|
|
|
@ -1,4 +1,13 @@
|
|||
DELETE FROM
|
||||
device.device_skill
|
||||
WHERE
|
||||
device_id = %(device_id)s AND skill_id = %(skill_id)s
|
||||
id = (
|
||||
SELECT
|
||||
ds.id
|
||||
FROM
|
||||
device.device_skill ds
|
||||
INNER JOIN
|
||||
skill.skill s ON ds.skill_id = s.id
|
||||
WHERE
|
||||
ds.device_id = %(device_id)s AND s.skill_gid = %(skill_gid)s
|
||||
)
|
Loading…
Reference in New Issue