@@ -51,7 +51,7 @@ private QuickSqlTestData(DatasetRowsGenerator datasetRowsGenerator, DatabaseType
5151
5252 /**
5353 * Factory method to build an instance of <code>org.qstd.QuickSqlTestData</code> from a data source.
54- * The retrieval of database metadata, such as not null columns or primary keys, is cached for each table.
54+ * <em> The retrieval of database metadata, such as not null columns or primary keys, is cached for each table.</em>
5555 * @param dataSource A data source
5656 * @return An instance of <code>org.qstd.QuickSqlTestData</code>
5757 */
@@ -63,37 +63,85 @@ public static QuickSqlTestData buildFrom(DataSource dataSource) {
6363 return buildFrom (dataSource , dbType , databaseMetadataFinderWithCache );
6464 }
6565
66+ /**
67+ * Factory method to build an instance of <code>org.qstd.QuickSqlTestData</code> from a data source,
68+ * a database type and a database metadata finder.
69+ * @param dataSource A datasource
70+ * @param dbType A database type
71+ * @param databaseMetadataFinder A database metadata finder
72+ * @return An instance of <code>org.qstd.QuickSqlTestData</code>
73+ */
6674 public static QuickSqlTestData buildFrom (DataSource dataSource , DatabaseType dbType , DatabaseMetadataFinder databaseMetadataFinder ) {
6775 DatasetRowsGenerator datasetRowsGenerator = new DatasetRowsGenerator (dataSource , dbType , databaseMetadataFinder );
6876 return new QuickSqlTestData (datasetRowsGenerator , dbType );
6977 }
7078
79+ /**
80+ * Generates an SQL script allowing to test the SQL query given in parameter.
81+ * This script contains INSERT statements.
82+ * It takes into account the database integrity constraints.
83+ * @param sqlQuery An SQL query
84+ * @return An SQL script allowing to test the SQL query given in parameter
85+ */
7186 public String generateInsertScriptFor (String sqlQuery ) {
7287 return generateInsertScriptFor (sqlQuery , emptyList ());
7388 }
7489
90+ /**
91+ * Generates an SQL script allowing to test an SQL query with its bind parameter values.
92+ * This script contains INSERT statements.
93+ * It takes into account the database integrity constraints.
94+ * @param query An SQL query with bind parameters
95+ * @param parameters Bind parameter values
96+ * @return An SQL script allowing to test the SQL query with its bind parameter values
97+ */
7598 public String generateInsertScriptFor (String query , List <Object > parameters ) {
7699 List <SqlQuery > sqlQueries = singletonList (new SqlQuery (query , parameters ));
77100 return generateInsertScriptFor (sqlQueries );
78101 }
79102
103+ /**
104+ * Generates an SQL script allowing to test the list of SQL queries given in parameter.
105+ * This script contains INSERT statements.
106+ * It takes into account the database integrity constraints.
107+ * @param sqlQueries SQL queries
108+ * @return An SQL script allowing to test the SQL queries given in parameter
109+ */
80110 public String generateInsertScriptFor (List <SqlQuery > sqlQueries ) {
81111 List <DatasetRow > datasetRows = datasetRowsGenerator .generateDatasetRowsFor (sqlQueries );
82112 return insertStatementGenerator .generateInsertScriptFor (datasetRows );
83113 }
84114
115+ /**
116+ * Generates a list of INSERT statements allowing to test the list of SQL queries given in parameter.
117+ * These INSERT statements take into account the database integrity constraints.
118+ * @param sqlQueries SQL queries
119+ * @return An SQL script allowing to test the SQL queries given in parameter
120+ */
85121 public String generateInsertScriptFor (String ... sqlQueries ) {
86122 List <SqlQuery > queries = stream (sqlQueries )
87123 .map (SqlQuery ::new )
88124 .collect (toList ());
89125 return generateInsertScriptFor (queries );
90126 }
91127
128+ /**
129+ * Generates a list of INSERT statements allowing to create in database the dataset row given in parameter.
130+ * These INSERT statements take into account the database integrity constraints.
131+ * @param datasetRow A dataset row
132+ * @return A list of INSERT statements allowing to create in database the dataset row given in parameter
133+ */
92134 public List <String > generateInsertListFor (DatasetRow datasetRow ) {
93135 SqlQuery sqlQuery = SqlQuery .buildFromRow (datasetRow , dbType );
94136 return generateInsertListFor (sqlQuery .toString ());
95137 }
96138
139+ /**
140+ * Generates a list of INSERT statements allowing to test the SQL queries given in parameter.
141+ * These INSERT statements take into account the database integrity constraints.
142+ * @param sqlQueries SQL queries
143+ * @return A list of INSERT statements allowing to test the SQL queries given in parameter
144+ */
97145 public List <String > generateInsertListFor (String ... sqlQueries ) {
98146 List <SqlQuery > sqlQueryObjects = stream (sqlQueries )
99147 .map (SqlQuery ::new )
0 commit comments