Skip to content

Instantly share code, notes, and snippets.

@realdm
Created March 30, 2015 22:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save realdm/5cdf3fe5f9490150aec6 to your computer and use it in GitHub Desktop.
Save realdm/5cdf3fe5f9490150aec6 to your computer and use it in GitHub Desktop.
package maputo.gdg.listaeadapters;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.test.AndroidTestCase;
import maputo.gdg.listaeadapters.data.WeatherContract;
import maputo.gdg.listaeadapters.data.WeatherOpenHelper;
/**
* Created by Mac on 3/30/2015.
*/
public class TesteDB extends AndroidTestCase{
SQLiteDatabase bd;
public void testCreateDb()
{
/**TESTAR SE A BD ESTA A SER CRIADA
* ESTADO : N/A
* DATa: 7/03/2015*/
mContext.deleteDatabase(WeatherOpenHelper.NOME_DA_BD);
bd = new WeatherOpenHelper(mContext).getWritableDatabase();
assertTrue(bd.isOpen());
}
public void testInsertDb()
{
//pega uma instancia da bd. o metodo getWritableDatabase permite que possamos ter uma instancia de leitura e escrita a base de dados
bd = new WeatherOpenHelper(mContext).getWritableDatabase();
//cria um content values, objecto que ira mapear as colunas da nossa tabela aos valores
ContentValues localizacaoValues = new ContentValues();
localizacaoValues.put(WeatherContract.Localizacao.NOME_CIDADE,"Maputo");
localizacaoValues.put(WeatherContract.Localizacao.ZIP_CODE, 1103);
//insere uma linha na tabela de localizacao e recebe de volta o id da linha inserida. o resultado e -1 se ocorrer algum erro
long linhasInseridas = bd.insert(WeatherOpenHelper.Tabelas.TBL_LOCALIZACAO,null,localizacaoValues);
//verificamos se o id e maior que 0 utilizando o metodo assertTrue da classe AndroidTestCase
assertTrue(linhasInseridas>0);
//criamos um cursor para ler as localizacoes apartir da bd
/* O metodo query do SQLiteDatabase recebe como parametros
* @param String: nome da tabela que desejamos fazer a query
* @param - String[]: array de strings representando as colunas que queremos projectar
* @param - String : campos utilizados na selecao
* @param - String[]: valor dos campos utilizados na selecao
* @param - String : criterio de Agrupamento
* @Param - String : having
* @Param - String : Ordenacao
* */
Cursor cursor = bd.query(WeatherOpenHelper.Tabelas.TBL_LOCALIZACAO,null,null,null,null,null,null);
//vamos so verficar o tamanho do cursor para ver se temos algum dado la
assertTrue(cursor.getCount()>0);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment