1package com.xtremelabs.robolectric.util; 2 3import android.content.ContentValues; 4import android.database.sqlite.SQLiteDatabase; 5import com.xtremelabs.robolectric.WithTestDefaultsRunner; 6import org.junit.Before; 7import org.junit.Test; 8import org.junit.runner.RunWith; 9 10import java.sql.SQLException; 11 12import static com.xtremelabs.robolectric.util.SQLite.buildInsertString; 13import static org.hamcrest.CoreMatchers.equalTo; 14import static org.junit.Assert.assertThat; 15 16@DatabaseConfig.UsingDatabaseMap(H2Map.class) 17@RunWith(WithTestDefaultsRunner.class) 18public class H2Test { 19 ContentValues values; 20 @Before 21 22 public void setUp() throws Exception { 23 String byteString = "byte_string"; 24 byte[] byteData = byteString.getBytes(); 25 26 values = new ContentValues(); 27 values.put("name", "Chuck"); 28 values.put("int_value", 33); 29 values.put("float_value", (float) 1.5); 30 values.put("byte_data", byteData); 31 } 32 33 @Test 34 public void testBuildInsertString() throws SQLException { 35 SQLite.SQLStringAndBindings insertString = buildInsertString("table_name", values, SQLiteDatabase.CONFLICT_REPLACE); 36 assertThat(insertString.sql, equalTo("INSERT INTO table_name (float_value, byte_data, name, int_value) VALUES (?, ?, ?, ?);")); 37 SQLiteTestHelper.verifyColumnValues(insertString.columnValues); 38 } 39} 40