Skip to content

Commit a8118ec

Browse files
committed
additional test coverage
1 parent 76f67ba commit a8118ec

4 files changed

Lines changed: 43 additions & 2 deletions

File tree

canvasapi/course.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -459,7 +459,7 @@ def create_lti_resource_link(self, url, title=None, custom=None, **kwargs):
459459
"""
460460

461461
if not url:
462-
raise RequiredFieldMissing("The 'url' paramter is required.")
462+
raise RequiredFieldMissing("url is required as a str.")
463463

464464
kwargs["url"] = url
465465
if title:

tests/fixtures/lti_resource_link.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@
2222
"endpoint": "courses/1/lti_resource_links/45",
2323
"data": {
2424
"id": 45,
25-
"title": "Test LTI Resource Link"
25+
"title": "Test LTI Resource Link",
26+
"url": "https://example.com/lti/launch/content_item/123"
2627
},
2728
"status_code": 200
2829
},

tests/test_course.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1894,14 +1894,22 @@ def test_resolve_path_null(self, m):
18941894
# create_lti_resource_link()
18951895
def test_create_lti_resource_link(self, m):
18961896
register_uris({"lti_resource_link": ["create_lti_resource_link"]}, m)
1897+
custom_dict = {"hello": "world"}
1898+
18971899
evnt = self.course.create_lti_resource_link(
18981900
url="https://example.com/lti/launch/content_item/123",
18991901
title="Test LTI Resource Link",
1902+
custom=custom_dict,
19001903
)
19011904
self.assertIsInstance(evnt, LTIResourceLink)
1905+
19021906
self.assertEqual(evnt.title, "Test LTI Resource Link")
19031907
self.assertEqual(evnt.url, "https://example.com/lti/launch/content_item/123")
19041908

1909+
def test_create_lti_resource_link_fail(self, m):
1910+
with self.assertRaises(RequiredFieldMissing):
1911+
self.course.create_lti_resource_link({})
1912+
19051913
# get_lti_resource_links()
19061914
def test_get_lti_resource_links(self, m):
19071915
register_uris({"lti_resource_link": ["list_lti_resource_links"]}, m)
@@ -1916,6 +1924,7 @@ def test_get_lti_resource_link(self, m):
19161924
register_uris({"lti_resource_link": ["get_lti_resource_link"]}, m)
19171925

19181926
lti_resource_link_by_id = self.course.get_lti_resource_link(45)
1927+
19191928
self.assertIsInstance(lti_resource_link_by_id, LTIResourceLink)
19201929
self.assertEqual(lti_resource_link_by_id.title, "Test LTI Resource Link")
19211930
lti_resource_link_by_obj = self.course.get_lti_resource_link(

tests/test_lti_resource_link.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import unittest
2+
3+
import requests_mock
4+
5+
from canvasapi import Canvas
6+
from canvasapi.exceptions import RequiredFieldMissing
7+
from tests import settings
8+
from tests.util import register_uris
9+
10+
11+
@requests_mock.Mocker()
12+
class TestLTIResourceLink(unittest.TestCase):
13+
def setUp(self):
14+
self.canvas = Canvas(settings.BASE_URL, settings.API_KEY)
15+
16+
with requests_mock.Mocker() as m:
17+
register_uris(
18+
{
19+
"course": ["get_by_id"],
20+
"lti_resource_link": ["get_lti_resource_link"],
21+
},
22+
m,
23+
)
24+
25+
self.course = self.canvas.get_course(1)
26+
self.resource_link = self.course.get_lti_resource_link(45)
27+
28+
# __str__()
29+
def test__str__(self, m):
30+
string = str(self.resource_link)
31+
self.assertIsInstance(string, str)

0 commit comments

Comments
 (0)