Ejemplo n.º 1
0
    def test01_split_url(self):
        """Test split_url() method.

        For everything except the handling of extension type on
        info.json requests (where v1.0 allows XML), the behavior
        of split_url() is version independent.
        """
        # mismatching baseurl
        r = IIIFRequest()
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFRequestError, r.split_url, 'http://other.base.url/')
        # matching baseurl, but bad request
        r = IIIFRequest()
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFRequestBaseURI, r.split_url, 'http://ex.org/a/b')
        # matching baseurl, good request
        r = IIIFRequest(baseurl='http://ex.org/a/')
        r.identifier = None
        r.split_url('http://ex.org/a/b/full/full/0/native')
        self.assertEqual(r.identifier, 'b')
        self.assertEqual(r.region, 'full')
        self.assertEqual(r.size, 'full')
        # matching baseurl, insert id, good request
        r = IIIFRequest(baseurl='http://ex.org/a/')
        r.identifier = 'b'
        r.split_url('http://ex.org/a/full/full/0/native')
        self.assertEqual(r.identifier, 'b')
        self.assertEqual(r.region, 'full')
        self.assertEqual(r.size, 'full')
        # matching baseurl, too many segments
        r = IIIFRequest(baseurl='http://ex.org/a/')
        self.assertRaises(IIIFRequestError, r.split_url,
                          'http://ex.org/a/1/2/3/4/5/6')
Ejemplo n.º 2
0
    def test01_split_url(self):
        """Test split_url() method.

        For everything except the handling of extension type on
        info.json requests (where v1.0 allows XML), the behavior
        of split_url() is version independent.
        """
        # mismatching baseurl
        r = IIIFRequest()
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFRequestError, r.split_url,
                          'http://other.base.url/')
        # matching baseurl, but bad request
        r = IIIFRequest()
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFRequestBaseURI, r.split_url, 'http://ex.org/a/b')
        # matching baseurl, good request
        r = IIIFRequest(baseurl='http://ex.org/a/')
        r.identifier = None
        r.split_url('http://ex.org/a/b/full/full/0/native')
        self.assertEqual(r.identifier, 'b')
        self.assertEqual(r.region, 'full')
        self.assertEqual(r.size, 'full')
        # matching baseurl, insert id, good request
        r = IIIFRequest(baseurl='http://ex.org/a/')
        r.identifier = 'b'
        r.split_url('http://ex.org/a/full/full/0/native')
        self.assertEqual(r.identifier, 'b')
        self.assertEqual(r.region, 'full')
        self.assertEqual(r.size, 'full')
        # matching baseurl, too many segments
        r = IIIFRequest(baseurl='http://ex.org/a/')
        self.assertRaises(IIIFRequestError, r.split_url,
                          'http://ex.org/a/1/2/3/4/5/6')
Ejemplo n.º 3
0
    def test19_split_url(self):
        """Test split_url() method.

        Most parts are common to all versions, except handling
        of info.json extensions.
        """
        # api_version=1.0, format=xyz -> bad
        r = IIIFRequest(api_version='1.0')
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFError, r.split_url, 'http://ex.org/a/b/info.xyz')
        # api_version=2.1, format=xml -> bad
        r = IIIFRequest(api_version='2.1')
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFError, r.split_url, 'http://ex.org/a/b/info.xml')
        # api_version=2.1, format=xyz -> bad
        r = IIIFRequest(api_version='2.1')
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFError, r.split_url, 'http://ex.org/a/b/info.xyz')
Ejemplo n.º 4
0
    def test19_split_url(self):
        """Test split_url() method.

        Most parts are common to all versions, except handling
        of info.json extensions.
        """
        # api_version=1.0, format=xyz -> bad
        r = IIIFRequest(api_version='1.0')
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFError, r.split_url,
                          'http://ex.org/a/b/info.xyz')
        # api_version=2.1, format=xml -> bad
        r = IIIFRequest(api_version='2.1')
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFError, r.split_url,
                          'http://ex.org/a/b/info.xml')
        # api_version=2.1, format=xyz -> bad
        r = IIIFRequest(api_version='2.1')
        r.baseurl = 'http://ex.org/a/'
        self.assertRaises(IIIFError, r.split_url,
                          'http://ex.org/a/b/info.xyz')
Ejemplo n.º 5
0
 def test19_split_url(self):
     # mismatching baseurl
     r = IIIFRequest()
     r.baseurl = 'http://ex.org/a/'
     self.assertRaises( IIIFError, r.split_url, 'http://other.base.url/' )
     # matching baseurl, but bad request
     r = IIIFRequest()
     r.baseurl = 'http://ex.org/a/'
     self.assertRaises( IIIFRequestBaseURI , r.split_url, 'http://ex.org/a/b' )
     # matching baseurl, good request
     r = IIIFRequest()
     r.baseurl = 'http://ex.org/a/'
     r.identifier = None
     r.split_url('http://ex.org/a/b/full/full/0/native')
     self.assertEqual( r.identifier, 'b' )
     self.assertEqual( r.region, 'full' )
     self.assertEqual( r.size, 'full' )
     # matching baseurl, insert id, good request
     r = IIIFRequest()
     r.baseurl = 'http://ex.org/a/'
     r.identifier = 'b'
     r.split_url('http://ex.org/a/full/full/0/native')
     self.assertEqual( r.identifier, 'b' )
     self.assertEqual( r.region, 'full' )
     self.assertEqual( r.size, 'full' )
     # matching baseurl, too many segments
     r = IIIFRequest()
     r.baseurl = 'http://ex.org/a/'
     self.assertRaises( IIIFError, r.split_url, 'http://ex.org/a/1/2/3/4/5/6' )
     # api_version=1.0, format=xyz -> bad
     r = IIIFRequest(api_version='1.0')
     r.baseurl = 'http://ex.org/a/'
     self.assertRaises( IIIFError, r.split_url, 'http://ex.org/a/b/info.xyz' )
     # api_version=2.1, format=xml -> bad
     r = IIIFRequest(api_version='2.1')
     r.baseurl = 'http://ex.org/a/'
     self.assertRaises( IIIFError, r.split_url, 'http://ex.org/a/b/info.xml' )
     # api_version=2.1, format=xyz -> bad
     r = IIIFRequest(api_version='2.1')
     r.baseurl = 'http://ex.org/a/'
     self.assertRaises( IIIFError, r.split_url, 'http://ex.org/a/b/info.xyz' )
Ejemplo n.º 6
0
 def test03_str(self):
     """Simple tests of str() method."""
     r = IIIFRequest()
     r.baseurl = 'http://ex.org/'
     r.identifier = 'abc'
     # info
     r.info = True
     r.format = 'json'
     self.assertTrue(re.search(r'INFO request', str(r)))
     self.assertTrue(re.search(r'format=json', str(r)))
     # non-info
     r.info = False
     r.region = 'R'
     r.size = 'S'
     r.rotation = 'X'
     r.quality = 'Q'
     r.format = 'jpg'
     self.assertFalse(re.search(r'INFO request', str(r)))
     self.assertTrue(re.search(r'region=R', str(r)))
     self.assertTrue(re.search(r'format=jpg', str(r)))
Ejemplo n.º 7
0
 def test03_str(self):
     """Simple tests of str() method."""
     r = IIIFRequest()
     r.baseurl = 'http://ex.org/'
     r.identifier = 'abc'
     # info
     r.info = True
     r.format = 'json'
     self.assertTrue(re.search(r'INFO request', str(r)))
     self.assertTrue(re.search(r'format=json', str(r)))
     # non-info
     r.info = False
     r.region = 'R'
     r.size = 'S'
     r.rotation = 'X'
     r.quality = 'Q'
     r.format = 'jpg'
     self.assertFalse(re.search(r'INFO request', str(r)))
     self.assertTrue(re.search(r'region=R', str(r)))
     self.assertTrue(re.search(r'format=jpg', str(r)))