aboutsummaryrefslogtreecommitdiff
path: root/v1/src/test/java/com/xtremelabs/robolectric/util/H2Test.java
blob: 6abac3b87b568c7b83c05fb5bd37c904bf05c689 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package com.xtremelabs.robolectric.util;

import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import com.xtremelabs.robolectric.WithTestDefaultsRunner;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;

import java.sql.SQLException;

import static com.xtremelabs.robolectric.util.SQLite.buildInsertString;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.junit.Assert.assertThat;

@DatabaseConfig.UsingDatabaseMap(H2Map.class)
@RunWith(WithTestDefaultsRunner.class)
public class H2Test {
    ContentValues values;
    @Before

    public void setUp() throws Exception {
        String byteString = "byte_string";
        byte[] byteData = byteString.getBytes();

        values = new ContentValues();
        values.put("name", "Chuck");
        values.put("int_value", 33);
        values.put("float_value", (float) 1.5);
        values.put("byte_data", byteData);
    }

    @Test
    public void testBuildInsertString() throws SQLException {
        SQLite.SQLStringAndBindings insertString = buildInsertString("table_name", values, SQLiteDatabase.CONFLICT_REPLACE);
        assertThat(insertString.sql, equalTo("INSERT INTO table_name (float_value, byte_data, name, int_value) VALUES (?, ?, ?, ?);"));
        SQLiteTestHelper.verifyColumnValues(insertString.columnValues);
    }
}