mirror of
				https://github.com/open-metadata/OpenMetadata.git
				synced 2025-10-31 10:39:30 +00:00 
			
		
		
		
	* Fix #10164: Check any name voilations during the import dryrun * Fix test * fix test * Fix checkstyle
This commit is contained in:
		
							parent
							
								
									8e52c9bd24
								
							
						
					
					
						commit
						a60af7c019
					
				| @ -341,15 +341,15 @@ public abstract class EntityCsv<T extends EntityInterface> { | ||||
|     entity.setUpdatedAt(System.currentTimeMillis()); | ||||
|     EntityRepository<T> repository = (EntityRepository<T>) Entity.getEntityRepository(entityType); | ||||
|     Response.Status responseStatus; | ||||
|     String violations = ValidatorUtil.validate(entity); | ||||
|     if (violations != null) { | ||||
|       // JSON schema based validation failed for the entity | ||||
|       importFailure(resultsPrinter, violations, csvRecord); | ||||
|       return; | ||||
|     } | ||||
|     if (Boolean.FALSE.equals(importResult.getDryRun())) { | ||||
|       try { | ||||
|         repository.prepareInternal(entity); | ||||
|         String violations = ValidatorUtil.validate(entity); | ||||
|         if (violations != null) { | ||||
|           // JSON schema based validation failed for the entity | ||||
|           importFailure(resultsPrinter, violations, csvRecord); | ||||
|           return; | ||||
|         } | ||||
|         PutResponse<T> response = repository.createOrUpdate(null, entity); | ||||
|         responseStatus = response.getStatus(); | ||||
|       } catch (Exception ex) { | ||||
|  | ||||
| @ -2,7 +2,6 @@ package org.openmetadata.csv; | ||||
| 
 | ||||
| import static org.junit.jupiter.api.Assertions.assertEquals; | ||||
| import static org.junit.jupiter.api.Assertions.assertNull; | ||||
| import static org.openmetadata.common.utils.CommonUtil.listOf; | ||||
| import static org.openmetadata.common.utils.CommonUtil.nullOrEmpty; | ||||
| import static org.openmetadata.csv.CsvUtil.LINE_SEPARATOR; | ||||
| import static org.openmetadata.csv.CsvUtil.recordToString; | ||||
| @ -62,27 +61,6 @@ public class EntityCsvTest { | ||||
|     assertEquals(TestCsv.invalidHeader("h1*,h2,h3", ",h2,h3"), importResult.getAbortReason()); | ||||
|   } | ||||
| 
 | ||||
|   @Test | ||||
|   void test_validateCsvInvalidRecords() throws IOException { | ||||
|     // Invalid record 2 - Missing required value in h1 | ||||
|     // Invalid record 3 - Record with only two fields instead of 3 | ||||
|     List<String> records = listOf(",2,3", "1,2", "1,2,3"); | ||||
|     String csv = createCsv(CSV_HEADERS, records); | ||||
| 
 | ||||
|     TestCsv testCsv = new TestCsv(); | ||||
|     CsvImportResult importResult = testCsv.importCsv(csv, true); | ||||
|     assertSummary(importResult, Status.PARTIAL_SUCCESS, 4, 2, 2); | ||||
| 
 | ||||
|     String[] expectedRecords = { | ||||
|       CsvUtil.recordToString(EntityCsv.getResultHeaders(CSV_HEADERS)), | ||||
|       getFailedRecord(",2,3", TestCsv.fieldRequired(0)), | ||||
|       getFailedRecord("1,2", TestCsv.invalidFieldCount(3, 2)), | ||||
|       getSuccessRecord("1,2,3", ENTITY_CREATED) | ||||
|     }; | ||||
| 
 | ||||
|     assertRows(importResult, expectedRecords); | ||||
|   } | ||||
| 
 | ||||
|   public static void assertSummary( | ||||
|       CsvImportResult importResult, | ||||
|       Status expectedStatus, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Sriharsha Chintalapani
						Sriharsha Chintalapani