FileImport fileImport = new FileImport(file, applicationId); fileImport = rootEM.create(fileImport);
@Test public void testSuccess() throws Exception { final EntityManagerFactory emf = mock( EntityManagerFactory.class ); final EntityManager em = mock( EntityManager.class ); when( emf.getEntityManager( emf.getManagementAppId() ) ).thenReturn( em ); final UUID importFileId = UUIDGenerator.newTimeUUID(); final FileImport fileImport = new FileImport(); fileImport.setUuid( importFileId ); when( em.get( importFileId, FileImport.class ) ).thenReturn( fileImport ); final FileImportTracker fileImportTracker = new FileImportTracker( emf, fileImport, 1000 ); final long expectedCount = 100; for ( long i = 0; i < expectedCount; i++ ) { fileImportTracker.entityWritten(); } fileImportTracker.complete(); ArgumentCaptor<FileImport> savedFileImport = ArgumentCaptor.forClass( FileImport.class ); verify( em ).update( savedFileImport.capture() ); final FileImport updated = savedFileImport.getValue(); assertSame( "Same instance should be updated", fileImport, updated ); assertEquals( "Same count expected", expectedCount, updated.getImportedEntityCount() ); assertNull( updated.getErrorMessage() ); }
final FileImport fileImport = new FileImport(); final UUID importFileId = UUIDGenerator.newTimeUUID(); fileImport.setUuid(importFileId);
@Test public void explicitFail() throws Exception { final EntityManagerFactory emf = mock( EntityManagerFactory.class ); final EntityManager em = mock( EntityManager.class ); when( emf.getEntityManager( emf.getManagementAppId() ) ).thenReturn( em ); final UUID importFileId = UUIDGenerator.newTimeUUID(); final FileImport fileImport = new FileImport(); fileImport.setUuid( importFileId ); when( em.get( importFileId, FileImport.class ) ).thenReturn( fileImport ); final FileImportTracker fileImportTracker = new FileImportTracker( emf, fileImport, 1000 ); final long expectedCount = 100; for ( long i = 0; i < expectedCount; i++ ) { fileImportTracker.entityWritten(); } fileImportTracker.fatal( "Something bad happened" ); ArgumentCaptor<FileImport> savedFileImport = ArgumentCaptor.forClass( FileImport.class ); verify( em ).update( savedFileImport.capture() ); final FileImport updated = savedFileImport.getValue(); assertSame( "Same instance should be updated", fileImport, updated ); assertEquals( "Same count expected", expectedCount, updated.getImportedEntityCount() ); assertEquals( "Fail count is 0", 0, updated.getFailedEntityCount() ); assertEquals( "Correct expected message", "Something bad happened", updated.getErrorMessage() ); assertEquals( "Expected failed state", FileImport.State.FAILED, updated.getState() ); }
final FileImport fileImport = new FileImport();
final FileImport fileImport = new FileImport(); fileImport.setUuid( importFileId );
FileImport fileImport = new FileImport("dummyFileName" + i, applicationId); fileImport = emMgmtApp.create(fileImport); emMgmtApp.createConnection(importEntity, "includes", fileImport);
@Test public void loadingExistingState() throws Exception { final EntityManagerFactory emf = mock( EntityManagerFactory.class ); final EntityManager em = mock( EntityManager.class ); when( emf.getEntityManager( emf.getManagementAppId() ) ).thenReturn( em ); final UUID importFileId = UUIDGenerator.newTimeUUID(); final FileImport fileImport = new FileImport(); fileImport.setUuid( importFileId ); fileImport.setImportedEntityCount( 1 ); fileImport.setFailedEntityCount( 2 ); fileImport.setImportedConnectionCount( 3 ); fileImport.setFailedConnectionCount( 4 ); when( em.get( importFileId, FileImport.class ) ).thenReturn( fileImport ); //mock up returning the FailedEntityImport instance after save is invoked. FileImportTracker statistics = new FileImportTracker( emf, fileImport, 100 ); assertEquals( 1, statistics.getEntitiesWritten() ); assertEquals( 2, statistics.getEntitiesFailed() ); assertEquals( 3, statistics.getTotalEntityCount() ); assertEquals( 3, statistics.getConnectionsWritten() ); assertEquals( 4, statistics.getConnectionsFailed() ); assertEquals( 7, statistics.getTotalConnectionCount() ); }