public void testClassWhere() throws Exception { Session s = openSession(); Transaction t = s.beginTransaction(); Baz baz = new Baz(); baz.setParts( new ArrayList() ); Part p1 = new Part(); p1.setDescription("xyz"); Part p2 = new Part(); p2.setDescription("abc"); baz.getParts().add(p1); baz.getParts().add(p2); s.save(baz); t.commit(); s.close(); s = openSession(); t = s.beginTransaction(); assertTrue( s.createCriteria(Part.class).list().size()==1 ); //there is a where condition on Part mapping assertTrue( s.createCriteria(Part.class).add( Restrictions.eq( "id", p1.getId() ) ).list().size()==1 ); assertTrue( s.createQuery("from Part").list().size()==1 ); assertTrue( s.createQuery("from Baz baz join baz.parts").list().size()==2 ); baz = (Baz) s.createCriteria(Baz.class).uniqueResult(); assertTrue( s.createFilter( baz.getParts(), "" ).list().size()==2 ); //assertTrue( baz.getParts().size()==1 ); s.delete( s.get( Part.class, p1.getId() )); s.delete( s.get( Part.class, p2.getId() )); s.delete(baz); t.commit(); s.close();
public void testClassWhereManyToMany() throws Exception { Session s = openSession(); Transaction t = s.beginTransaction(); Baz baz = new Baz(); baz.setMoreParts( new ArrayList() ); Part p1 = new Part(); p1.setDescription("xyz"); Part p2 = new Part(); p2.setDescription("abc"); baz.getMoreParts().add(p1); baz.getMoreParts().add(p2); s.save(baz); t.commit(); s.close(); s = openSession(); t = s.beginTransaction(); assertTrue( s.createCriteria(Part.class).list().size()==1 ); //there is a where condition on Part mapping assertTrue( s.createCriteria(Part.class).add( Restrictions.eq( "id", p1.getId() ) ).list().size()==1 ); assertTrue( s.createQuery("from Part").list().size()==1 ); assertTrue( s.createQuery("from Baz baz join baz.moreParts").list().size()==2 ); baz = (Baz) s.createCriteria(Baz.class).uniqueResult(); assertTrue( s.createFilter( baz.getMoreParts(), "" ).list().size()==2 ); //assertTrue( baz.getParts().size()==1 ); s.delete( s.get( Part.class, p1.getId() )); s.delete( s.get( Part.class, p2.getId() )); s.delete(baz); t.commit(); s.close();
Clone fragments detected by clone detection tool
File path: /hibernate-distribution-3.3.2.GA/project/testsuite/src/test/java/org/hibernate/test/legacy/ParentChildTest.java File path: /hibernate-distribution-3.3.2.GA/project/testsuite/src/test/java/org/hibernate/test/legacy/ParentChildTest.java
Method name: Method name:
Number of AST nodes: 0 Number of AST nodes: 0
1
public void testClassWhere() throws Exception {
1
public void testClassWhereManyToMany() throws Exception {
2
		Session s = openSession();
2
		Session s = openSession();
3
		Transaction t = s.beginTransaction();
3
		Transaction t = s.beginTransaction();
4
		Baz baz = new Baz();
4
		Baz baz = new Baz();
5
		baz.setParts( new ArrayList() );
5
		baz.setMoreParts( new ArrayList() );
6
		Part p1 = new Part();
6
		Part p1 = new Part();
7
		p1.setDescription("xyz");
7
		p1.setDescription("xyz");
8
		Part p2 = new Part();
8
		Part p2 = new Part();
9
		p2.setDescription("abc");
9
		p2.setDescription("abc");
10
		baz.getParts().add(p1);
10
		baz.getMoreParts().add(p1);
11
		baz.getParts().add(p2);
11
		baz.getMoreParts().add(p2);
12
		s.save(baz);
12
		s.save(baz);
13
		t.commit();
13
		t.commit();
14
		s.close();
14
		s.close();
15
		s = openSession();
15
		s = openSession();
16
		t = s.beginTransaction();
16
		t = s.beginTransaction();
17
		assertTrue( s.createCriteria(Part.class).list().size()==1 ); //there is a where condition on Part mapping
17
		assertTrue( s.createCriteria(Part.class).list().size()==1 ); //there is a where condition on Part mapping
18
		assertTrue( s.createCriteria(Part.class).add( Restrictions.eq( "id", p1.getId() ) ).list().size()==1 );
18
		assertTrue( s.createCriteria(Part.class).add( Restrictions.eq( "id", p1.getId() ) ).list().size()==1 );
19
		assertTrue( s.createQuery("from Part").list().size()==1 );
19
		assertTrue( s.createQuery("from Part").list().size()==1 );
20
		assertTrue( s.createQuery("from Baz baz join baz.parts").list().size()==2 );
20
		assertTrue( s.createQuery("from Baz baz join baz.moreParts").list().size()==2 );
21
		baz = (Baz) s.createCriteria(Baz.class).uniqueResult();
21
		baz = (Baz) s.createCriteria(Baz.class).uniqueResult();
22
		assertTrue( s.createFilter( baz.getParts(), "" ).list().size()==2 );
22
		assertTrue( s.createFilter( baz.getMoreParts(), "" ).list().size()==2 );
23
		//assertTrue( baz.getParts().size()==1 );
23
		//assertTrue( baz.getParts().size()==1 );
24
		s.delete( s.get( Part.class, p1.getId() ));
24
		s.delete( s.get( Part.class, p1.getId() ));
25
		s.delete( s.get( Part.class, p2.getId() ));
25
		s.delete( s.get( Part.class, p2.getId() ));
26
		s.delete(baz);
26
		s.delete(baz);
27
		t.commit();
27
		t.commit();
28
		s.close();
28
		s.close();
29
	
29
	
Summary
Number of common nesting structure subtrees0
Number of refactorable cases0
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones location
Number of node comparisons0