Difference between revisions of "Import sqlite test suite"
(→To Do) |
(→Releases) |
||
(22 intermediate revisions by the same user not shown) | |||
Line 16: | Line 16: | ||
* IRC & Class | * IRC & Class | ||
**[http://zenit.senecac.on.ca/wiki/index.php/User:David.humphrey David Humphrey] | **[http://zenit.senecac.on.ca/wiki/index.php/User:David.humphrey David Humphrey] | ||
− | *[https://bugzilla.mozilla.org/show_bug.cgi?id=391756 Bugzilla] | + | *[https://bugzilla.mozilla.org/show_bug.cgi?id=391756 Bugzilla( Bug 391756 - import the sqlite test suite into our test suite. )] |
** Shawn Wilsher | ** Shawn Wilsher | ||
** Peter Weilbacher | ** Peter Weilbacher | ||
− | |||
== Project Details == | == Project Details == | ||
Line 25: | Line 24: | ||
[https://bugzilla.mozilla.org/show_bug.cgi?id=391756 bug 391756] <br /> | [https://bugzilla.mozilla.org/show_bug.cgi?id=391756 bug 391756] <br /> | ||
[http://www.0xdeadbeef.com/weblog/?p=368 http://www.0xdeadbeef.com/weblog/?p=368] | [http://www.0xdeadbeef.com/weblog/?p=368 http://www.0xdeadbeef.com/weblog/?p=368] | ||
+ | |||
+ | == Releases == | ||
+ | *<b>Releases 0.1</b>-2008/10/15 | ||
+ | **[https://bugzilla.mozilla.org/show_bug.cgi?id=391756 Mocha image] | ||
+ | ***Fail the connection test. | ||
+ | ***Shawn asks "version control" | ||
+ | *Releases 0.2 | ||
+ | **add new code into "Makefile" | ||
+ | ***<b>make test_c++:</b> it tests all c++ test code in the test folder | ||
+ | ***<b>make test_js:</b> it tests all .js files in the unit folder | ||
+ | ***<b>make test_js_file:</b> it tests a specific file in the unit folder | ||
+ | ****ex)make test_js_file f=test_like.js | ||
+ | {| | ||
+ | |width="15px"| | ||
+ | | | ||
+ | |||
+ | {|class="collapsible collapsed" style="border-style:solid;border-width:thin;border-color:black" | ||
+ | !align="left" style="background-color:#ffffff; font-weight:bold;border-style:solid;border-width:thin;padding: 2px 2px 2px 2px;"|new codes in Makefile (/src/storage/test/) | ||
+ | |- | ||
+ | | | ||
+ | <pre> | ||
+ | ####################################################################### | ||
+ | # SQLite Test Code | ||
+ | # C++ code test param : test_c++ or test_sqlite or TEST_SQLIITE | ||
+ | # .js code test : | ||
+ | test_js : testing all .js file in the unit folder | ||
+ | ex) make test_js | ||
+ | |||
+ | test_js_file: testing specific .js file in the unit folder | ||
+ | ex) make test_js_file f=test_like.js | ||
+ | ####################################################################### | ||
+ | |||
+ | TEST_C_URL = $(DEPTH)/../$(OBJ_SUFFIX)-$(target)/dist/bin | ||
+ | TEST_JS_URL = $(DEPTH)/../$(OBJ_SUFFIX)-$(target)/storage/test | ||
+ | TEST_JS_SINGLE_URL = $(DEPTH)/../src/storage/test/unit | ||
+ | |||
+ | # C++ code test | ||
+ | # label the same names: test_c++ / test_sqlite / TEST_SQLIITE | ||
+ | # it calls a sqlite test file in the "obj/dist/bin" folder | ||
+ | |||
+ | TEST_SQLIITE: | ||
+ | $(TEST_C_URL)/$(PROGRAM) | ||
+ | |||
+ | test_c++: TEST_SQLIITE | ||
+ | test_sqlite:TEST_SQLIITE | ||
+ | |||
+ | # | ||
+ | # .js code test | ||
+ | # TEST_JS: test all .js files in the test folder | ||
+ | # | ||
+ | |||
+ | TEST_JS: | ||
+ | make -C $(TEST_JS_URL) check | ||
+ | |||
+ | test_js: TEST_JS | ||
+ | |||
+ | |||
+ | # | ||
+ | # specific .js code test | ||
+ | # TEST_JS_FILE f=js_file_name_dot_js | ||
+ | # ex) make test_js_file f=js_file_name_dot_js | ||
+ | # | ||
+ | |||
+ | TEST_JS_FILE: | ||
+ | make SOLO_FILE="$(f)" -C $(TEST_JS_URL) check-interactive | ||
+ | |||
+ | test_js_file:TEST_JS_FILE | ||
+ | </pre> | ||
+ | |} | ||
+ | |||
+ | |||
+ | |} | ||
+ | |||
+ | *Releases 0.3 | ||
== Related Bug List == | == Related Bug List == | ||
Line 36: | Line 109: | ||
== To Do == | == To Do == | ||
− | + | *Makefile | |
+ | **<strike>c++ code auto testing</strike> | ||
+ | **<strike>.js files auto testing</strike> | ||
+ | **<strike>sepcific .js file auto testing</strike> | ||
*Research | *Research | ||
+ | ** <strike>Make file</strike> | ||
** SQLite itself | ** SQLite itself | ||
+ | ***<strike>Install SQLite</strike> | ||
+ | ***<strike>How to use SQLite</strike> | ||
***<strike>SQLite test suite [http://www.sqlite.org/faq.html here]</strike> | ***<strike>SQLite test suite [http://www.sqlite.org/faq.html here]</strike> | ||
** SQLite inside Firefox3 | ** SQLite inside Firefox3 | ||
***<strike>Find the default setting of SQLite files, tables, and values on Firefox 3</strike> | ***<strike>Find the default setting of SQLite files, tables, and values on Firefox 3</strike> | ||
***<strike>Find a relationship tree that which classes or functions talk with SQLite</strike> | ***<strike>Find a relationship tree that which classes or functions talk with SQLite</strike> | ||
− | *** | + | ***<strike>Run & understand the test program already built in the tests folder</strike> |
***<strike>[http://developer.mozilla.org/En/Storage Storage]</strike> | ***<strike>[http://developer.mozilla.org/En/Storage Storage]</strike> | ||
** ETC | ** ETC | ||
***<strike>TCL research [http://www.tcl.tk/ here]</strike> | ***<strike>TCL research [http://www.tcl.tk/ here]</strike> | ||
***[http://developer.mozilla.org/En/XPCOM XPCOM] | ***[http://developer.mozilla.org/En/XPCOM XPCOM] | ||
+ | ***mozstorage | ||
*Testing | *Testing | ||
− | **Function Test | + | **<strike>Function Test</strike> |
− | **working and performance tests | + | **<strike>working and performance tests</strike> |
**data testing | **data testing | ||
**<strike>TCL testing</strike> | **<strike>TCL testing</strike> | ||
Line 59: | Line 139: | ||
<b>Right Now,I am working on </b> | <b>Right Now,I am working on </b> | ||
− | + | the 0.2 make file makes working on .mozconf options, it should be 0.3 | |
− | |||
− | |||
<b>Working History</b> | <b>Working History</b> | ||
Line 88: | Line 166: | ||
**** File Name: places.sqlite | **** File Name: places.sqlite | ||
**** Summary: Sequence number is jumping | **** Summary: Sequence number is jumping | ||
− | **** OS: Win XP SP2 | + | **** OS: Win XP SP2 [http://zenit.senecac.on.ca/wiki/index.php/Image:Jump_SEQ_Num_20080823.gif image] |
− | |||
*<b>2008/9/24</b> | *<b>2008/9/24</b> | ||
Line 96: | Line 173: | ||
*<b>2008/9/25</b> | *<b>2008/9/25</b> | ||
**<b><i>My first testing</i></b> : showing the test messages when SQLite is connected. | **<b><i>My first testing</i></b> : showing the test messages when SQLite is connected. | ||
− | **it is called <b>over 20 times </b>, when Firefox is just opened. | + | **it is called <b>over 20 times </b>, when Firefox is just opened. [http://zenit.senecac.on.ca/wiki/index.php/Image:firstCompile.gif image] |
− | |||
*<b>2008/9/27</b> | *<b>2008/9/27</b> | ||
Line 114: | Line 190: | ||
*<b>2008/10/5</b> | *<b>2008/10/5</b> | ||
**SQLite test suite running test | **SQLite test suite running test | ||
+ | |||
+ | *<b>2008/10/15</b> | ||
+ | **Update Mocha image into Bugzilla and waiting Shawn Wilsher's review | ||
+ | **Test SQLite connection on Firefox(Fail) | ||
+ | ***it needs a permission | ||
+ | ****Fix by "netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');" | ||
+ | ***File access error | ||
+ | ****Find that "It is available to trusted callers, meaning extensions and Firefox components only" | ||
+ | ****I'm thinking that the test suite as a extension, thus, looking "XPCOM" | ||
+ | |||
+ | *<b>2008/10/16</b> | ||
+ | **Shawn asks "Update & version control" | ||
+ | ***i am thinking the "configure menu" | ||
+ | |||
+ | *<b>2008/10/17</b> | ||
+ | **Peter Weilbacher says "Why we need the test suite, it already there, so, we just use SQLite's" | ||
+ | |||
+ | *<b>2008/10/27</b> | ||
+ | **Shawn says version control, but i don't get the idea | ||
+ | |||
+ | *<b>2008/11/06</b> | ||
+ | **Ted and Dave give a new idea that "https://bugzilla.mozilla.org/show_bug.cgi?id=391756" | ||
+ | ** changing make file | ||
+ | |||
+ | *<b>2008/11/08</b> | ||
+ | **find new command that | ||
+ | ***perl obj/_test_testing/mochitest/runtests.py | ||
+ | ****it opens an new window and starts tests | ||
+ | ***the folder "_test" has our testing files | ||
+ | |||
+ | *<b>2008/11/09</b> | ||
+ | ** make -C test_folder check | ||
+ | *** it checks all .js files in the test/unit folder | ||
+ | ** make SOLO_FILE="test_like.js" -C JS_FILE_URL check-interactive | ||
+ | *** it checks a specific .js file | ||
+ | |||
+ | *<b>2008/11/11</b> | ||
+ | ** i hope to get a file name(.js) which wants to testing from console, | ||
+ | ** but it can not.. try to using Perl | ||
+ | ** ex) run_single_js.pl | ||
+ | |||
+ | *<b>2008/11/13</b> | ||
+ | ** perl can get the file list, and get values from console | ||
+ | ** but, it can not run "make" command | ||
+ | ** it can use the shell command such as cp, echo, mv | ||
+ | ** but, i can not find that how to use "make" in perl | ||
+ | |||
+ | *<b>2008/11/15</b> | ||
+ | ** go to easy way, | ||
+ | ** make file can get a value from console | ||
+ | ** ex) make file_name = test.js | ||
+ | ** echo $(file_name) : will print "test.js" |
Latest revision as of 09:27, 13 November 2008
Contents
Project: Import sqlite test suite
Import sqlite test suite
Project Description
Mozilla uses an embedded version of SQLite extensively to store data such as bookmarks, history, etc. To insure that it runs properly within Mozilla, it would be good to add the entire sqlite test suite to Mozilla's tests, so that testing the browser also means testing sqlite. The sqlite test suite is written in TCL and needs to be ported to JavaScript. Some work has already been done, but more is required to get full test coverage.
Project Leader(s)
Project Contributor(s)
- Aaron Train
- IRC & Class
- Bugzilla( Bug 391756 - import the sqlite test suite into our test suite. )
- Shawn Wilsher
- Peter Weilbacher
Project Details
bug 391756
http://www.0xdeadbeef.com/weblog/?p=368
Releases
- Releases 0.1-2008/10/15
- Mocha image
- Fail the connection test.
- Shawn asks "version control"
- Mocha image
- Releases 0.2
- add new code into "Makefile"
- make test_c++: it tests all c++ test code in the test folder
- make test_js: it tests all .js files in the unit folder
- make test_js_file: it tests a specific file in the unit folder
- ex)make test_js_file f=test_like.js
- add new code into "Makefile"
|
- Releases 0.3
Related Bug List
Bug 417037 - mozStorage chokes on databases over AFP
Bug 313553 - Move Session Storage to Database
Bug 403377 - add method for creating indices to mozIStorageConnection
Bug 385093 - --enable-storage comments in configure.in are misleading
To Do
- Makefile
c++ code auto testing.js files auto testingsepcific .js file auto testing
- Research
-
Make file - SQLite itself
Install SQLiteHow to use SQLiteSQLite test suite here
- SQLite inside Firefox3
Find the default setting of SQLite files, tables, and values on Firefox 3Find a relationship tree that which classes or functions talk with SQLiteRun & understand the test program already built in the tests folderStorage
- ETC
-
- Testing
Function Testworking and performance tests- data testing
TCL testing
Project News
Right Now,I am working on
the 0.2 make file makes working on .mozconf options, it should be 0.3
Working History
- 2008/9/15
- Create Project
- 2008/9/16
- Compile Firefox
- 2008/9/17
- Research web
- 2008/9/19
- Install SQLite manager 0.3.10 download
- 2008/9/20
- checking the .sqlite files and table structures
- SQLite in my computer:
- checking the .sqlite files and table structures
C:\Documents and Settings\user account name\Application Data\Mozilla\Firefox\Profiles\bulid name.default\
Files: signons.sqlite / search.sqlite / places.sqlite / permissions.sqlite / formhistory.sqlite / downloads.sqlite / cookies.sqlite / content-prefs.sqlite
- 2008/9/23
- Find a bug that Sequence number’s jumping
- I am searching that this is a reported bug or not, and when the numbers are jumping and why
- File Name: places.sqlite
- Summary: Sequence number is jumping
- OS: Win XP SP2 image
- I am searching that this is a reported bug or not, and when the numbers are jumping and why
- Find a bug that Sequence number’s jumping
- 2008/9/24
- Research SQLite bugs & features here
- 2008/9/25
- My first testing : showing the test messages when SQLite is connected.
- it is called over 20 times , when Firefox is just opened. image
- 2008/9/27
- SQLite Test Suite testing and searching
- 2008/9/29
- TCL install and testing
- SQLite test source ( suite ) code reading on SQLite site
- only inside "sqlite-3.6.3.tar.gz"(2.2M)
- Reading ".test" files
- 2008/10/1
- SQLite test sample source ( suite ) code reading on Firefox site
- mozilla/source/storage/test/unit
- SQLite test sample source ( suite ) code reading on Firefox site
- 2008/10/5
- SQLite test suite running test
- 2008/10/15
- Update Mocha image into Bugzilla and waiting Shawn Wilsher's review
- Test SQLite connection on Firefox(Fail)
- it needs a permission
- Fix by "netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');"
- File access error
- Find that "It is available to trusted callers, meaning extensions and Firefox components only"
- I'm thinking that the test suite as a extension, thus, looking "XPCOM"
- it needs a permission
- 2008/10/16
- Shawn asks "Update & version control"
- i am thinking the "configure menu"
- Shawn asks "Update & version control"
- 2008/10/17
- Peter Weilbacher says "Why we need the test suite, it already there, so, we just use SQLite's"
- 2008/10/27
- Shawn says version control, but i don't get the idea
- 2008/11/06
- Ted and Dave give a new idea that "https://bugzilla.mozilla.org/show_bug.cgi?id=391756"
- changing make file
- 2008/11/08
- find new command that
- perl obj/_test_testing/mochitest/runtests.py
- it opens an new window and starts tests
- the folder "_test" has our testing files
- perl obj/_test_testing/mochitest/runtests.py
- find new command that
- 2008/11/09
- make -C test_folder check
- it checks all .js files in the test/unit folder
- make SOLO_FILE="test_like.js" -C JS_FILE_URL check-interactive
- it checks a specific .js file
- make -C test_folder check
- 2008/11/11
- i hope to get a file name(.js) which wants to testing from console,
- but it can not.. try to using Perl
- ex) run_single_js.pl
- 2008/11/13
- perl can get the file list, and get values from console
- but, it can not run "make" command
- it can use the shell command such as cp, echo, mv
- but, i can not find that how to use "make" in perl
- 2008/11/15
- go to easy way,
- make file can get a value from console
- ex) make file_name = test.js
- echo $(file_name) : will print "test.js"