Skip to content

Commit 2df306d

Browse files
RCB-622: fix typecheck and tests
1 parent e589766 commit 2df306d

2 files changed

Lines changed: 25 additions & 25 deletions

File tree

rosette/api.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -463,14 +463,14 @@ def call(self, parameters, paramtype=None):
463463
raise RosetteException(
464464
"incompatible",
465465
"The parameters must be " + str(paramtype),
466-
self)
466+
self.suburl)
467467

468468
if type(parameters) == str:
469469
text = parameters
470470
parameters = DocumentParameters()
471471
parameters['content'] = text
472472

473-
if not isinstance(parameters, _RequestParametersBase):
473+
if not paramtype and not isinstance(parameters, DocumentParameters):
474474
raise RosetteException(
475475
"incompatible",
476476
"The parameters must be string or DocumentParameters",

tests/test_rosette_api.py

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -415,6 +415,29 @@ def test_the_multipart_operation(api, json_response, doc_params, tmpdir):
415415
httpretty.disable()
416416
httpretty.reset()
417417

418+
419+
def test_incompatible_type(api, json_response):
420+
"""Test the name translation endpoint"""
421+
httpretty.enable()
422+
httpretty.register_uri(httpretty.POST, "https://api.rosette.com/rest/v1/info",
423+
body=json_response, status=200, content_type="application/json")
424+
httpretty.register_uri(httpretty.POST, "https://api.rosette.com/rest/v1/sentences",
425+
body=json_response, status=200, content_type="application/json")
426+
427+
params = NameTranslationParameters()
428+
params["name"] = "some data to translate"
429+
params["entityType"] = "PERSON"
430+
params["targetLanguage"] = "eng"
431+
params["targetScript"] = "Latn"
432+
433+
# oops, called sentences
434+
with pytest.raises(RosetteException) as e_rosette:
435+
api.sentences(params)
436+
437+
httpretty.disable()
438+
httpretty.reset()
439+
440+
418441
# Test the name translation endpoint
419442

420443

@@ -465,29 +488,6 @@ def test_the_name_requests_with_text(api, json_response):
465488
httpretty.reset()
466489

467490

468-
469-
def test_the_name_similarity_single_parameters(api, json_response):
470-
"""Test the name similarity parameters"""
471-
httpretty.enable()
472-
httpretty.register_uri(httpretty.POST, "https://api.rosette.com/rest/v1/info",
473-
body=json_response, status=200, content_type="application/json")
474-
httpretty.register_uri(httpretty.POST, "https://api.rosette.com/rest/v1/name-similarity",
475-
body=json_response, status=200, content_type="application/json")
476-
477-
matched_name_data1 = "John Mike Smith"
478-
matched_name_data2 = "John Joe Smith"
479-
params = NameSimilarityParameters()
480-
params["name1"] = {"text": matched_name_data1}
481-
params["name2"] = {"text": matched_name_data2}
482-
params["parameters"] = {"conflictScore": "0.9"}
483-
484-
result = api.name_similarity(params)
485-
assert result["name"] == "Rosette"
486-
httpretty.disable()
487-
httpretty.reset()
488-
489-
490-
491491
def test_the_name_similarity_single_parameters(api, json_response):
492492
"""Test the name similarity parameters"""
493493
httpretty.enable()

0 commit comments

Comments
 (0)