File path: /hibernate-distribution-3.3.2.GA/project/testsuite/src/test/java/org/hibernate/test/filter/DynamicFilterTest.java | File path: /hibernate-distribution-3.3.2.GA/project/testsuite/src/test/java/org/hibernate/test/filter/DynamicFilterTest.java | |||
Method name: void testFiltersOnMultiTableHqlDelete()
|
Method name: void testFiltersOnSimpleHqlDelete()
|
|||
Number of AST nodes: 20 | Number of AST nodes: 20 | |||
1 | Session session = openSession();↵ | 1 | Session session = openSession();↵ | |
2 | session.beginTransaction();↵ | 2 | session.beginTransaction();↵ | |
3 | Salesperson sp = new Salesperson();↵ | 3 | Salesperson sp = new Salesperson();↵ | |
4 | sp.setName( "steve" );↵ | 4 | sp.setName( "steve" );↵ | |
5 | sp.setRegion( "NA" );↵ | 5 | sp.setRegion( "NA" );↵ | |
6 | session.persist( sp );↵ | 6 | session.persist( sp );↵ | |
7 | Salesperson sp2 = new Salesperson();↵ | 7 | Salesperson sp2 = new Salesperson();↵ | |
8 | sp2.setName( "john" );↵ | 8 | sp2.setName( "john" );↵ | |
9 | sp2.setRegion( "APAC" );↵ | 9 | sp2.setRegion( "APAC" );↵ | |
10 | session.persist( sp2 );↵ | 10 | session.persist( sp2 );↵ | |
11 | session.getTransaction().commit();↵ | 11 | session.getTransaction().commit();↵ | |
12 | session.close();↵ | 12 | session.close();↵ | |
13 | session = openSession();↵ | 13 | session = openSession();↵ | |
14 | session.beginTransaction();↵ | 14 | session.beginTransaction();↵ | |
15 | session.enableFilter( "region" ).setParameter( "region", "NA" );↵ | 15 | session.enableFilter( "region" ).setParameter( "region", "NA" );↵ | |
16 | int count = session.createQuery( "delete from Salesperson" ).executeUpdate();↵ | 16 | int count = session.createQuery( "delete from Salesperson" ).executeUpdate();↵ | |
17 | assertEquals( 1, count );↵ | 17 | assertEquals( 1, count );↵ | |
18 | session.delete( sp2 );↵ | 18 | session.delete( sp2 );↵ | |
19 | session.getTransaction().commit();↵ | 19 | session.getTransaction().commit();↵ | |
20 | session.close(); | 20 |
| |
See real code fragment | See real code fragment |
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 1 |
Number of non-refactorable cases | 0 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 0.0 |
Clones location | Clones are declared in the same class |
Number of node comparisons | 103 |
Number of mapped statements | 20 |
Number of unmapped statements in the first code fragment | 0 |
Number of unmapped statements in the second code fragment | 0 |
Time elapsed for statement mapping (ms) | 0.0 |
Clone type | Type 1 |
ID | Statement | ID | Statement | |
---|---|---|---|---|
1 | Session session = openSession(); | 1 | Session session = openSession(); | |
2 | session.beginTransaction(); | 2 | session.beginTransaction(); | |
3 | Salesperson sp = new Salesperson(); | 3 | Salesperson sp = new Salesperson(); | |
4 | sp.setName("steve"); | 4 | sp.setName("steve"); | |
5 | sp.setRegion("NA"); | 5 | sp.setRegion("NA"); | |
6 | session.persist(sp); | 6 | session.persist(sp); | |
7 | Salesperson sp2 = new Salesperson(); | 7 | Salesperson sp2 = new Salesperson(); | |
8 | sp2.setName("john"); | 8 | sp2.setName("john"); | |
9 | sp2.setRegion("APAC"); | 9 | sp2.setRegion("APAC"); | |
10 | session.persist(sp2); | 10 | session.persist(sp2); | |
11 | session.getTransaction().commit(); | 11 | session.getTransaction().commit(); | |
12 | session.close(); | 12 | session.close(); | |
13 | session = openSession(); | 13 | session = openSession(); | |
14 | session.beginTransaction(); | 14 | session.beginTransaction(); | |
15 | session.enableFilter("region").setParameter("region", "NA"); | 15 | session.enableFilter("region").setParameter("region", "NA"); | |
16 | int count = session.createQuery("delete from Salesperson").executeUpdate(); | 16 | int count = session.createQuery("delete from Salesperson").executeUpdate(); | |
17 | assertEquals(1, count); | 17 | assertEquals(1, count); | |
18 | session.delete(sp2); | 18 | session.delete(sp2); | |
19 | session.getTransaction().commit(); | 19 | session.getTransaction().commit(); | |
20 | session.close(); | 20 | session.close(); |
Row | Violation |
---|