Пример #1
0
 def test03_level(self):
     """Test level handling."""
     i = IIIFInfo()
     i.compliance_prefix = 'prefix/'
     i.compliance_suffix = '/suffix'
     # and good
     i.compliance = 'prefix/2/suffix'
     self.assertEqual(i.level, 2)
     i.compliance = 'prefix/3/suffix'
     self.assertEqual(i.level, 3)
     # and bad
     i.compliance = ''
     # FIXME: how to avoid wrapping @property call in lamda?
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = 'prefix//suffix'
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = 'prefix/22/suffix'
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = 'prefix/junk/suffix'
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = 'extra/prefix/2/suffix'
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = '...2/suffix'
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = 'prefix/2...'
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = 'prefix/2/suffix/extra'
     self.assertRaises(IIIFInfoError, lambda: i.level)
Пример #2
0
 def test03_level(self):
     """Test level handling."""
     i = IIIFInfo()
     i.compliance_prefix = "prefix/"
     i.compliance_suffix = "/suffix"
     # and good
     i.compliance = "prefix/2/suffix"
     self.assertEqual(i.level, 2)
     i.compliance = "prefix/3/suffix"
     self.assertEqual(i.level, 3)
     # and bad
     i.compliance = ""
     # FIXME: how to avoid wrapping @property call in lamda?
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = "prefix//suffix"
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = "prefix/22/suffix"
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = "prefix/junk/suffix"
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = "extra/prefix/2/suffix"
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = "...2/suffix"
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = "prefix/2..."
     self.assertRaises(IIIFInfoError, lambda: i.level)
     i.compliance = "prefix/2/suffix/extra"
     self.assertRaises(IIIFInfoError, lambda: i.level)
Пример #3
0
 def test05_level_and_profile(self):
     """Test level and profile setting."""
     i = IIIFInfo(api_version='2.1')
     i.level = 0
     self.assertEqual(i.level, 0)
     self.assertEqual(i.compliance, "http://iiif.io/api/image/2/level0.json")
     i.level = 2
     self.assertEqual(i.level, 2)
     self.assertEqual(i.compliance, "http://iiif.io/api/image/2/level2.json")
     # Set via compliance
     i.compliance = "http://iiif.io/api/image/2/level1.json"
     self.assertEqual(i.level, 1)
     # Set via profile
     i.profile = ["http://iiif.io/api/image/2/level1.json"]
     self.assertEqual(i.level, 1)
     # Set new via compliance
     i = IIIFInfo(api_version='2.1')
     i.compliance = "http://iiif.io/api/image/2/level1.json"
     self.assertEqual(i.level, 1)
Пример #4
0
 def test05_level_and_profile(self):
     """Test level and profile setting."""
     i = IIIFInfo(api_version='3.0')
     i.level = 0
     self.assertEqual(i.level, 0)
     self.assertEqual(i.compliance, "level0")
     i.level = 2
     self.assertEqual(i.level, 2)
     self.assertEqual(i.compliance, "level2")
     # Set via compliance
     i.compliance = "level1"
     self.assertEqual(i.level, 1)
     # Set via profile
     i.profile = "level2"
     self.assertEqual(i.level, 2)
     # Set new via compliance
     i = IIIFInfo(api_version='3.0')
     i.compliance = "level1"
     self.assertEqual(i.level, 1)