Ignore:
Timestamp:
11/19/14 17:21:25 (10 years ago)
Author:
olhsha@mpi.nl
Message:

units tests updating and adding (all-access)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/test/java/eu/dasish/annotation/backend/dao/impl/JdbcAnnotationDaoTest.java

    r5836 r5838  
    202202        System.out.println("test getAnnotationWithoutTargetsAndPermissions");
    203203        jdbcAnnotationDao.setResourcePath("/api/annotations/");
    204         final Annotation result = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissions(1);
     204        final Annotation result = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissionList(1);
    205205
    206206        assertEquals("Sagrada Famiglia", result.getHeadline());
     
    210210        assertEquals("/api/annotations/00000000-0000-0000-0000-000000000021", result.getHref());
    211211        assertEquals(DatatypeFactory.newInstance().newXMLGregorianCalendar("2013-08-12T09:25:00.383000Z"), result.getLastModified());
     212        assertEquals(Access.WRITE, result.getPermissions().getPublic());
    212213    }
    213214
     
    245246
    246247        // checking
    247         Annotation addedAnnotation = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissions(5);
     248        Annotation addedAnnotation = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissionList(5);
    248249        assertEquals(addedAnnotation.getHref(), "/api/annotations/"+addedAnnotation.getId());
    249250        assertFalse(null == addedAnnotation.getLastModified());
     
    251252        assertEquals(annotationToAdd.getBody().getTextBody().getBody(), addedAnnotation.getBody().getTextBody().getBody());
    252253        assertEquals(annotationToAdd.getHeadline(), addedAnnotation.getHeadline());
     254        assertEquals(annotationToAdd.getPermissions().getPublic(), addedAnnotation.getPermissions().getPublic());
    253255        System.out.println("creation time " + addedAnnotation.getLastModified());
    254256    }
     
    306308        assertEquals("read", result.get(1).get(3));
    307309        assertEquals("read", result.get(2).get(11));
    308 
     310       
     311        List<Map<Number, String>> result2 = jdbcAnnotationDao.getPermissions(4);
     312        assertEquals(4, result2.size());       
     313        assertEquals("all", result2.get(0).get(1));
     314        assertEquals("write", result2.get(1).get(2));
     315        assertEquals("none", result2.get(2).get(3));
     316        assertEquals("none", result2.get(3).get(11));
    309317    }
    310318
    311319    // getAnnotationIDsForPermission(Number principalID, Access access)
    312320    @Test
    313     public void testAnnotationIDsForPermission() {
    314         System.out.println("test getAnnotationIDsForPermission");
     321    public void testAnnotationIDsForPermissionAtLeast() {
     322        System.out.println("test getAnnotationIDsForPermissionAtLeast");
    315323        List<Number> result = jdbcAnnotationDao.getAnnotationIDsPermissionAtLeast(1, Access.READ);
    316324        assertEquals(3, result.size());
     
    319327        assertEquals(4, result.get(2));
    320328
    321         List<Number> resultTwo = jdbcAnnotationDao.getAnnotationIDsPermissionAtLeast(1, Access.WRITE);
    322         assertEquals(1, resultTwo.size());
    323         assertEquals(4, resultTwo.get(0));
    324 
    325         List<Number> resultThree = jdbcAnnotationDao.getAnnotationIDsPermissionAtLeast(1, Access.NONE);
    326         assertEquals(0, resultThree.size());
    327 
     329        List<Number> resultWrite = jdbcAnnotationDao.getAnnotationIDsPermissionAtLeast(1, Access.WRITE);
     330        assertEquals(1, resultWrite.size());
     331        assertEquals(4, resultWrite.get(0));
     332       
     333        List<Number> resultAll = jdbcAnnotationDao.getAnnotationIDsPermissionAtLeast(1, Access.ALL);
     334        assertEquals(1, resultAll.size());
     335        assertEquals(4, resultAll.get(0));
     336
     337        List<Number> resultNone= jdbcAnnotationDao.getAnnotationIDsPermissionAtLeast(1, Access.NONE);
     338        assertEquals(0, resultNone.size());
     339       
     340        List<Number> resultNone1 = jdbcAnnotationDao.getAnnotationIDsPermissionAtLeast(3, Access.NONE);
     341        assertEquals(1, resultNone1.size());
     342        assertEquals(4, resultWrite.get(0));
    328343    }
    329344
    330345    // getAnnotationIDsForPublicAccess
    331346    @Test
    332     public void testAnnotationIDsForPublicAccess() {
     347    public void testAnnotationIDsForPublicAtLeast() {
    333348        System.out.println("test getAnnotationIDsForPublicAccess");
    334349        List<Number> result = jdbcAnnotationDao.getAnnotationIDsPublicAtLeast(Access.READ);
    335         assertEquals(2, result.size());
     350        assertEquals(3, result.size());
    336351        assertTrue(result.contains(1));
    337352        assertTrue(result.contains(2));
    338 
     353        assertTrue(result.contains(3));
     354       
    339355        List<Number> resultTwo = jdbcAnnotationDao.getAnnotationIDsPublicAtLeast(Access.WRITE);
    340         assertEquals(1, resultTwo.size());
    341         assertEquals(1, resultTwo.get(0));
    342 
    343 
    344         List<Number> resultThree = jdbcAnnotationDao.getAnnotationIDsPublicAtLeast(Access.NONE);
    345         assertEquals(2, resultThree.size());
     356        assertEquals(2, resultTwo.size());
     357        assertTrue(result.contains(1));
     358        assertTrue(resultTwo.contains(3));
     359       
     360        List<Number> resultThree = jdbcAnnotationDao.getAnnotationIDsPublicAtLeast(Access.ALL);
     361        assertEquals(1, resultThree.size());
    346362        assertTrue(resultThree.contains(3));
    347         assertTrue(resultThree.contains(4));
     363
     364        List<Number> resultNone = jdbcAnnotationDao.getAnnotationIDsPublicAtLeast(Access.NONE);
     365        assertEquals(1, resultNone.size());
     366        assertTrue(resultNone.contains(4));
    348367
    349368    }
     
    354373        assertEquals(Access.WRITE, jdbcAnnotationDao.getPublicAttribute(1));
    355374        assertEquals(Access.READ, jdbcAnnotationDao.getPublicAttribute(2));
    356         assertEquals(Access.NONE, jdbcAnnotationDao.getPublicAttribute(3));
     375        assertEquals(Access.ALL, jdbcAnnotationDao.getPublicAttribute(3));
     376        assertEquals(Access.NONE, jdbcAnnotationDao.getPublicAttribute(4));
    357377    }
    358378
     
    363383        assertEquals(Access.WRITE, jdbcAnnotationDao.getAccess(2, 3));
    364384        assertEquals(Access.NONE, jdbcAnnotationDao.getAccess(3, 3));
     385        assertEquals(Access.NONE, jdbcAnnotationDao.getAccess(2, 2)); // implicit none, no row in the table
     386    }
     387   
     388    @Test
     389    public void testHasExplicitAccess() {
     390        System.out.println("test getAccess");
     391        assertTrue(jdbcAnnotationDao.hasExplicitAccess(1, 3));
     392        assertFalse(jdbcAnnotationDao.hasExplicitAccess(2, 2)); // implicit none, no row in the table
    365393    }
    366394
     
    422450        int result = jdbcAnnotationDao.updateAnnotationBody(1, "some html 1 updated", "text/plain", false);
    423451        assertEquals(1, result);
    424         Annotation check = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissions(1);
     452        Annotation check = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissionList(1);
    425453        assertEquals("some html 1 updated", check.getBody().getTextBody().getBody());
    426454        assertEquals("text/plain", check.getBody().getTextBody().getMimeType());
     
    429457        int result2 = jdbcAnnotationDao.updateAnnotationBody(1, testXml, "application/xml", true);
    430458        assertEquals(1, result2);
    431         Annotation check2 = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissions(1);
     459        Annotation check2 = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissionList(1);
    432460        assertEquals("xhtml:span", check2.getBody().getXmlBody().getAny().getNodeName());
    433461        assertTrue(check2.getBody().getXmlBody().getAny().hasAttribute("style"));
     
    441469        int result = jdbcAnnotationDao.updateAnnotationHeadline(1, "new Header");
    442470        assertEquals(1, result);
    443         Annotation check = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissions(1);
     471        Annotation check = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissionList(1);
    444472        assertEquals("new Header", check.getHeadline());
    445473    }
     
    509537        annotation.getBody().getTextBody().setBody("updated some html 1");
    510538        annotation.getBody().getTextBody().setMimeType("text/plain");
     539        annotation.getPermissions().setPublic(Access.ALL);
    511540
    512541       
     
    514543        assertEquals(1, result);
    515544        System.out.println(" annotation updated");
    516         Annotation check = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissions(1);
     545        Annotation check = jdbcAnnotationDao.getAnnotationWithoutTargetsAndPemissionList(1);
    517546        assertEquals("updated some html 1", check.getBody().getTextBody().getBody());
    518547        assertEquals("text/plain", check.getBody().getTextBody().getMimeType());
     
    520549        assertEquals("/api/annotations/00000000-0000-0000-0000-000000000021", check.getHref());
    521550        assertEquals("00000000-0000-0000-0000-000000000021", check.getId());
     551        assertEquals(Access.ALL, check.getPermissions().getPublic());
    522552    }
    523553   
Note: See TracChangeset for help on using the changeset viewer.