package com.android.example.leanback.search; import android.test.AndroidTestCase; public class DdlTest extends AndroidTestCase { public void testViewDdl() { final String required = "CREATE VIEW search AS SELECT video.*,FTS_title FROM video JOIN fts ON video._id=fts.docid"; final String sql = AbstractContract.Ddl.builder() .create(AbstractContract.Ddl.Type.VIEW, UniversalSearchContract.SearchView.NAME) .columnList(UniversalSearchContract.Video.TABLE_NAME + ".*", UniversalSearchContract.VideoFts.FTS_TITLE) .from(UniversalSearchContract.Video.TABLE_NAME) .join(UniversalSearchContract.VideoFts.TABLE_NAME, UniversalSearchContract.Video.TABLE_NAME + "." + UniversalSearchContract.Video.ID + "=" + UniversalSearchContract.VideoFts.TABLE_NAME + "." + UniversalSearchContract.VideoFts.ID) .build(); System.out.println(sql); assertEquals(required.toLowerCase(), sql.toLowerCase()); } public void testBasicDdl() { final String sql1 = AbstractContract.Ddl.builder() .create(AbstractContract.Ddl.Type.TABLE, "test1") .columnDef("one", "text", "two", "integer") .build(); assertEquals("create table test1(one text,two integer)", sql1.toLowerCase()); final String sql2 = AbstractContract.Ddl.builder() .create(AbstractContract.Ddl.Type.VIEW, "v") .columnList("*") .from("test1") .join("test1", "id=_id") .build(); assertEquals("create view v as select * from test1 join test1 on id=_id", sql2.toLowerCase()); } } // EOF