Github user yjhyjhyjh0 commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/3107#discussion_r234407245
  
    --- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestExecuteSQLRecord.java
 ---
    @@ -350,6 +357,37 @@ public void invokeOnTriggerRecords(final Integer 
queryTimeout, final String quer
             assertEquals(durationTime, fetchTime + executionTime);
         }
     
    +    @SuppressWarnings("unchecked")
    +    @Test
    +    public void testWithSqlExceptionErrorProcessingResultSet() throws 
Exception {
    +        DBCPService dbcp = mock(DBCPService.class);
    +        Connection conn = mock(Connection.class);
    +        when(dbcp.getConnection(any(Map.class))).thenReturn(conn);
    +        when(dbcp.getIdentifier()).thenReturn("mockdbcp");
    +        PreparedStatement statement = mock(PreparedStatement.class);
    +        when(conn.prepareStatement(anyString())).thenReturn(statement);
    +        when(statement.execute()).thenReturn(true);
    +        ResultSet rs = mock(ResultSet.class);
    +        when(statement.getResultSet()).thenReturn(rs);
    +        // Throw an exception the first time you access the ResultSet, 
this is after the flow file to hold the results has been created.
    +        when(rs.getMetaData()).thenThrow(new SQLException("test execute 
statement failed"));
    +
    --- End diff --
    
    You're right, thanks for point out and suggestion.
    I should be more cautious while resolving commit.
    I've add lines of mock record writer back and test successfully.
    Squashed and pushed.


---

Reply via email to