Skip to content

Commit 8bf7514

Browse files
Adding test to verify the onUpgrade function of SQLiteOpenHelper is called.
1 parent ce1296b commit 8bf7514

File tree

3 files changed

+97
-65
lines changed

3 files changed

+97
-65
lines changed

net.zetetic.sqlcipher.test.iws

Lines changed: 50 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -87,46 +87,21 @@
8787
</component>
8888
<component name="FileEditorManager">
8989
<leaf>
90-
<file leaf-file-name="TestSuiteRunner.java" pinned="false" current="false" current-in-tab="false">
91-
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/TestSuiteRunner.java">
90+
<file leaf-file-name="VerifyOnUpgradeIsCalledTest.java" pinned="false" current="true" current-in-tab="true">
91+
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/VerifyOnUpgradeIsCalledTest.java">
9292
<provider selected="true" editor-type-id="text-editor">
93-
<state line="59" column="35" selection-start="1998" selection-end="1998" vertical-scroll-proportion="0.0">
94-
<folding />
95-
</state>
96-
</provider>
97-
</entry>
98-
</file>
99-
<file leaf-file-name="PragmaCipherVersionTest.java" pinned="false" current="false" current-in-tab="false">
100-
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/PragmaCipherVersionTest.java">
101-
<provider selected="true" editor-type-id="text-editor">
102-
<state line="18" column="21" selection-start="595" selection-end="595" vertical-scroll-proportion="0.0">
103-
<folding />
104-
</state>
105-
</provider>
106-
</entry>
107-
</file>
108-
<file leaf-file-name="pom.xml" pinned="false" current="false" current-in-tab="false">
109-
<entry file="file://$PROJECT_DIR$/pom.xml">
110-
<provider selected="true" editor-type-id="text-editor">
111-
<state line="17" column="0" selection-start="717" selection-end="717" vertical-scroll-proportion="0.0">
112-
<folding />
113-
</state>
114-
</provider>
115-
</entry>
116-
</file>
117-
<file leaf-file-name="ReadableWritableAccessTest.java" pinned="false" current="true" current-in-tab="true">
118-
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/ReadableWritableAccessTest.java">
119-
<provider selected="true" editor-type-id="text-editor">
120-
<state line="10" column="13" selection-start="261" selection-end="261" vertical-scroll-proportion="0.08108108">
121-
<folding />
93+
<state line="24" column="34" selection-start="980" selection-end="980" vertical-scroll-proportion="0.6940171">
94+
<folding>
95+
<element signature="imports" expanded="true" />
96+
</folding>
12297
</state>
12398
</provider>
12499
</entry>
125100
</file>
126101
<file leaf-file-name="SQLCipherTest.java" pinned="false" current="false" current-in-tab="false">
127102
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/SQLCipherTest.java">
128103
<provider selected="true" editor-type-id="text-editor">
129-
<state line="17" column="70" selection-start="498" selection-end="498" vertical-scroll-proportion="0.0">
104+
<state line="28" column="0" selection-start="820" selection-end="820" vertical-scroll-proportion="0.0">
130105
<folding />
131106
</state>
132107
</provider>
@@ -187,7 +162,6 @@
187162
<component name="IdeDocumentHistory">
188163
<option name="changedFiles">
189164
<list>
190-
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/AttachExistingDatabaseTest.java" />
191165
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/MigrationFromDatabaseFormat1To2.java" />
192166
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/ImportUnencryptedDatabaseTest.java" />
193167
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/FullTextSearchTest.java" />
@@ -201,8 +175,9 @@
201175
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/AutoVacuumOverReadTest.java" />
202176
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/ZeteticApplication.java" />
203177
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/ReadableWritableAccessTest.java" />
204-
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/TestSuiteRunner.java" />
205178
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/PragmaCipherVersionTest.java" />
179+
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/VerifyOnUpgradeIsCalledTest.java" />
180+
<option value="$PROJECT_DIR$/src/main/java/net/zetetic/tests/TestSuiteRunner.java" />
206181
</list>
207182
</option>
208183
</component>
@@ -284,16 +259,6 @@
284259
<sortByType />
285260
</navigator>
286261
<panes>
287-
<pane id="Scope">
288-
<subPane subId="Project Files">
289-
<PATH>
290-
<PATH_ELEMENT USER_OBJECT="Root">
291-
<option name="myItemId" value="" />
292-
<option name="myItemType" value="" />
293-
</PATH_ELEMENT>
294-
</PATH>
295-
</subPane>
296-
</pane>
297262
<pane id="ProjectPane">
298263
<subPane>
299264
<PATH>
@@ -462,6 +427,16 @@
462427
</PATH>
463428
</subPane>
464429
</pane>
430+
<pane id="Scope">
431+
<subPane subId="Project Files">
432+
<PATH>
433+
<PATH_ELEMENT USER_OBJECT="Root">
434+
<option name="myItemId" value="" />
435+
<option name="myItemType" value="" />
436+
</PATH_ELEMENT>
437+
</PATH>
438+
</subPane>
439+
</pane>
465440
<pane id="Favorites" />
466441
</panes>
467442
</component>
@@ -860,10 +835,11 @@
860835
<window_info id="JetGradle" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
861836
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
862837
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
863-
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.34685165" sideWeight="0.0" order="3" side_tool="false" content_ui="tabs" />
838+
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.34685165" sideWeight="0.0" order="3" side_tool="false" content_ui="tabs" />
864839
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.6307364" sideWeight="0.07692308" order="13" side_tool="true" content_ui="tabs" />
865840
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
866841
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
842+
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32230523" sideWeight="0.46650276" order="10" side_tool="false" content_ui="tabs" />
867843
<window_info id="Android" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.6307364" sideWeight="0.91933763" order="8" side_tool="false" content_ui="tabs" />
868844
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32800853" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
869845
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="true" content_ui="tabs" />
@@ -875,7 +851,6 @@
875851
<window_info id="Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32959402" sideWeight="0.4909285" order="3" side_tool="false" content_ui="tabs" />
876852
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
877853
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32977587" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
878-
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32230523" sideWeight="0.46650276" order="10" side_tool="false" content_ui="tabs" />
879854
<window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
880855
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
881856
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
@@ -941,21 +916,11 @@
941916
<option name="FILTER_TARGETS" value="false" />
942917
</component>
943918
<component name="editorHistoryManager">
944-
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/ImportUnencryptedDatabaseTest.java">
945-
<provider selected="true" editor-type-id="text-editor">
946-
<state line="18" column="0" selection-start="550" selection-end="550" vertical-scroll-proportion="0.14864865" />
947-
</provider>
948-
</entry>
949919
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/LoopingQueryTest.java">
950920
<provider selected="true" editor-type-id="text-editor">
951921
<state line="15" column="14" selection-start="517" selection-end="517" vertical-scroll-proportion="0.2769231" />
952922
</provider>
953923
</entry>
954-
<entry file="jar://$PROJECT_DIR$/libs/sqlcipher.jar!/net/sqlcipher/database/SQLiteOpenHelper.class">
955-
<provider selected="true" editor-type-id="text-editor">
956-
<state line="19" column="62" selection-start="1000" selection-end="1000" vertical-scroll-proportion="1.2509652" />
957-
</provider>
958-
</entry>
959924
<entry file="file://$PROJECT_DIR$/AndroidManifest.xml">
960925
<provider selected="true" editor-type-id="text-editor">
961926
<state line="16" column="0" selection-start="814" selection-end="814" vertical-scroll-proportion="0.66512704" />
@@ -971,14 +936,25 @@
971936
<state line="4" column="35" selection-start="88" selection-end="110" vertical-scroll-proportion="0.0" />
972937
</provider>
973938
</entry>
939+
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/ReadableWritableAccessTest.java">
940+
<provider selected="true" editor-type-id="text-editor">
941+
<state line="15" column="25" selection-start="407" selection-end="407" vertical-scroll-proportion="0.02027027">
942+
<folding />
943+
</state>
944+
</provider>
945+
</entry>
974946
<entry file="file://$PROJECT_DIR$/pom.xml">
975947
<provider selected="true" editor-type-id="text-editor">
976-
<state line="17" column="0" selection-start="717" selection-end="717" vertical-scroll-proportion="0.0" />
948+
<state line="17" column="0" selection-start="717" selection-end="717" vertical-scroll-proportion="0.02027027">
949+
<folding />
950+
</state>
977951
</provider>
978952
</entry>
979-
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/SQLCipherTest.java">
953+
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/PragmaCipherVersionTest.java">
980954
<provider selected="true" editor-type-id="text-editor">
981-
<state line="17" column="70" selection-start="498" selection-end="498" vertical-scroll-proportion="0.0" />
955+
<state line="18" column="21" selection-start="595" selection-end="595" vertical-scroll-proportion="0.3445946">
956+
<folding />
957+
</state>
982958
</provider>
983959
</entry>
984960
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/ZeteticApplication.java">
@@ -1006,27 +982,36 @@
1006982
<state line="15" column="112" selection-start="456" selection-end="456" vertical-scroll-proportion="0.0" />
1007983
</provider>
1008984
</entry>
1009-
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/PragmaCipherVersionTest.java">
985+
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/SQLCipherTest.java">
1010986
<provider selected="true" editor-type-id="text-editor">
1011-
<state line="18" column="21" selection-start="595" selection-end="595" vertical-scroll-proportion="0.0">
987+
<state line="28" column="0" selection-start="820" selection-end="820" vertical-scroll-proportion="0.0">
1012988
<folding />
1013989
</state>
1014990
</provider>
1015991
</entry>
1016-
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/TestSuiteRunner.java">
992+
<entry file="jar://$PROJECT_DIR$/libs/sqlcipher.jar!/net/sqlcipher/database/SQLiteOpenHelper.class">
1017993
<provider selected="true" editor-type-id="text-editor">
1018-
<state line="59" column="35" selection-start="1998" selection-end="1998" vertical-scroll-proportion="0.0">
994+
<state line="18" column="62" selection-start="935" selection-end="935" vertical-scroll-proportion="0.4857143">
1019995
<folding />
1020996
</state>
1021997
</provider>
1022998
</entry>
1023-
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/ReadableWritableAccessTest.java">
999+
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/TestSuiteRunner.java">
10241000
<provider selected="true" editor-type-id="text-editor">
1025-
<state line="10" column="13" selection-start="261" selection-end="261" vertical-scroll-proportion="0.08108108">
1001+
<state line="42" column="5" selection-start="1136" selection-end="1136" vertical-scroll-proportion="0.43243244">
10261002
<folding />
10271003
</state>
10281004
</provider>
10291005
</entry>
1006+
<entry file="file://$PROJECT_DIR$/src/main/java/net/zetetic/tests/VerifyOnUpgradeIsCalledTest.java">
1007+
<provider selected="true" editor-type-id="text-editor">
1008+
<state line="24" column="34" selection-start="980" selection-end="980" vertical-scroll-proportion="0.6940171">
1009+
<folding>
1010+
<element signature="imports" expanded="true" />
1011+
</folding>
1012+
</state>
1013+
</provider>
1014+
</entry>
10301015
</component>
10311016
<component name="masterDetails">
10321017
<states>

src/main/java/net/zetetic/tests/TestSuiteRunner.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ private List<SQLCipherTest> getTestsToRun(){
5858
tests.add(new ReadableDatabaseTest());
5959
tests.add(new AutoVacuumOverReadTest());
6060
tests.add(new ReadableWritableAccessTest());
61+
tests.add(new VerifyOnUpgradeIsCalledTest());
6162
return tests;
6263
}
6364
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package net.zetetic.tests;
2+
3+
import android.content.Context;
4+
import net.sqlcipher.database.SQLiteDatabase;
5+
import net.sqlcipher.database.SQLiteOpenHelper;
6+
import net.zetetic.ZeteticApplication;
7+
8+
public class VerifyOnUpgradeIsCalledTest extends SQLCipherTest {
9+
10+
@Override
11+
public boolean execute(SQLiteDatabase database) {
12+
13+
ZeteticApplication.getInstance().deleteDatabaseFileAndSiblings(ZeteticApplication.DATABASE_NAME);
14+
DatabaseHelper firstRun = new DatabaseHelper(ZeteticApplication.getInstance(), 1);
15+
SQLiteDatabase db = firstRun.getWritableDatabase(ZeteticApplication.DATABASE_PASSWORD);
16+
db.close();
17+
DatabaseHelper secondRun = new DatabaseHelper(ZeteticApplication.getInstance(), 2);
18+
SQLiteDatabase db2 = secondRun.getWritableDatabase(ZeteticApplication.DATABASE_PASSWORD);
19+
db2.close();
20+
return secondRun.OnUpgradeCalled;
21+
}
22+
23+
@Override
24+
public String getName() {
25+
return "Verify onUpgrade Is Called Test";
26+
}
27+
28+
class DatabaseHelper extends SQLiteOpenHelper {
29+
30+
public boolean OnUpgradeCalled;
31+
32+
public DatabaseHelper(Context context, int version) {
33+
super(context, ZeteticApplication.DATABASE_NAME, null, version);
34+
}
35+
36+
@Override
37+
public void onCreate(SQLiteDatabase database) {
38+
database.execSQL("create table t1(a,b)");
39+
}
40+
41+
@Override
42+
public void onUpgrade(SQLiteDatabase database, int oldVersion, int newVersion) {
43+
OnUpgradeCalled = true;
44+
}
45+
}
46+
}

0 commit comments

Comments
 (0)