test_class.file: DbSetup-core/src/test/java/com/ninja_squad/dbsetup/DbSetupTest.java
test_class.identifier: DbSetupTest
test_case.body: @Test
      public void launchWorksWithCustomConfiguration() throws SQLException {
          Destination destination = mock(Destination.class);
          Connection connection = mock(Connection.class);
          when(destination.getConnection()).thenReturn(connection);
          Operation operation = mock(Operation.class);
          BinderConfiguration config = mock(BinderConfiguration.class);
  
          DbSetup setup = new DbSetup(destination, operation, config);
          setup.launch();
          InOrder inOrder = inOrder(destination, connection, operation);
          inOrder.verify(destination).getConnection();
          inOrder.verify(operation).execute(connection, config);
          inOrder.verify(connection).commit();
      }
test_case.class_method_signature: DbSetupTest.launchWorksWithCustomConfiguration()
test_case.full_signature: @Test public void launchWorksWithCustomConfiguration()
test_case.identifier: launchWorksWithCustomConfiguration
test_case.invocations: mock mock thenReturn when getConnection mock mock launch inOrder getConnection verify execute verify commit verify
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void launchWorksWithCustomConfiguration()
focal_class.declarator: destination
focal_class.modifier: private final
focal_class.original_string: private final Destination destination;
focal_class.type: Destination
focal_class.var_name: destination
focal_class.declarator: operation
focal_class.modifier: private final
focal_class.original_string: private final Operation operation;
focal_class.type: Operation
focal_class.var_name: operation
focal_class.declarator: binderConfiguration
focal_class.modifier: private final
focal_class.original_string: private final BinderConfiguration binderConfiguration;
focal_class.type: BinderConfiguration
focal_class.var_name: binderConfiguration
focal_class.file: DbSetup-core/src/main/java/com/ninja_squad/dbsetup/DbSetup.java
focal_class.identifier: DbSetup
focal_class.class_method_signature: DbSetup.DbSetup(@Nonnull Destination destination, @Nonnull Operation operation)
focal_class.full_signature: public  DbSetup(@Nonnull Destination destination, @Nonnull Operation operation)
focal_class.identifier: DbSetup
focal_class.modifiers: public
focal_class.parameters: (@Nonnull Destination destination, @Nonnull Operation operation)
focal_class.signature:  DbSetup(@Nonnull Destination destination, @Nonnull Operation operation)
focal_class.class_method_signature: DbSetup.DbSetup(@Nonnull Destination destination,
                     @Nonnull Operation operation,
                     @Nonnull BinderConfiguration binderConfiguration)
focal_class.full_signature: public  DbSetup(@Nonnull Destination destination,
                     @Nonnull Operation operation,
                     @Nonnull BinderConfiguration binderConfiguration)
focal_class.identifier: DbSetup
focal_class.modifiers: public
focal_class.parameters: (@Nonnull Destination destination,
                     @Nonnull Operation operation,
                     @Nonnull BinderConfiguration binderConfiguration)
focal_class.signature:  DbSetup(@Nonnull Destination destination,
                     @Nonnull Operation operation,
                     @Nonnull BinderConfiguration binderConfiguration)
focal_class.class_method_signature: DbSetup.launch()
focal_class.full_signature: public void launch()
focal_class.identifier: launch
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void launch()
focal_class.class_method_signature: DbSetup.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.class_method_signature: DbSetup.hashCode()
focal_class.full_signature: @Override public int hashCode()
focal_class.identifier: hashCode
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int hashCode()
focal_class.class_method_signature: DbSetup.equals(Object obj)
focal_class.full_signature: @Override public boolean equals(Object obj)
focal_class.identifier: equals
focal_class.modifiers: @Override public
focal_class.parameters: (Object obj)
focal_class.return: boolean
focal_class.signature: boolean equals(Object obj)
focal_method.body: public void launch() {
          try {
              Connection connection = destination.getConnection();
              try {
                  connection.setAutoCommit(false);
                  operation.execute(connection, binderConfiguration);
                  connection.commit();
              }
              catch (SQLException e) {
                  connection.rollback();
                  throw e;
              }
              catch (RuntimeException e) {
                  connection.rollback();
                  throw e;
              }
              finally {
                  connection.close();
              }
          }
          catch (SQLException e) {
              throw new DbSetupRuntimeException(e);
          }
      }
focal_method.class_method_signature: DbSetup.launch()
focal_method.full_signature: public void launch()
focal_method.identifier: launch
focal_method.invocations: getConnection setAutoCommit execute commit rollback rollback close
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: void
focal_method.signature: void launch()