| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- RUN
- ===
- Do this Once before running tests
- ---------------------------------
- * edit the connection string (app setting entry "ConnString")
- - if you want to run odbc test cases, edit odbc.config
- and edit the entry with "ConnString" with appropriate
- DSN, User Id and Password.
- * run the sql schema and test pool data under directory sql to
- the respective databases, using a appropriate client.
- eg.
- tsql -S server -U user -P pwd < sql/sqlserver.sql
- mysql -u user -p < sql/mysql.sql
- To run the tests
- ----------------
- * make clean
- * make run-test DATABASE=<ur-database>
- valid database strings are :
- sqlserver, odbc
- GUIDELINES for test-case developers
- ----------------------------------
- general
- =======
-
- * Provider specific test case to go into their specific
- subfolders named after their namespaces. All odbc specific
- test-cases to go into System.Data.Odbc, etc.
- * all tables to have a unique id column
- * if you modify any data from a test case make sure, you
- revert it at the end of test case, either through
- try..finally block or using transactions
- * if you intend to insert from code, insert value above 6000
- (randomly chosen)
- * if you create a stored procedure from code, create with a
- prefix 'tmp_'.
- * if you create a table from code, create with a prefix
- 'tmp_'.
- sqlserver
- =========
- * for temporary per-test-case tables/stored-procedures, prefix
- the name with "#" so that mssql removes the object
- automatically.
- Extending to a new database
- ---------------------------
- * All new databases can run the tests provided in
- ProviderIndependant tests. Include your category in each of
- the test cases. Say, if you want to extend these test cases
- to a database provider 'xyz', include a line [Category
- ("xyz")] with each of the test cases.
- * add a sql script file for you database to generate the test
- data with same name you have given to the category with an
- extension ".sql". For example, write a script file "xyz.sql"
- under the sub-directory "sql".
-
- The test pool data can be obtained from either of the
- existing sql script files say "mysql.sql".
- If your database does not support a datatype that are
- used in other database script files, do *not* remove the
- datatype instead, add a datatype nearly matching your local
- type. For example, if your database does not support bigint,
- add a column named type_bigint, but with type as "numeric
- (19,0)".
- * Add a subdirectory with the name of the your provider's
- namespace. If your provider is, say, XYZ, with namespace
- System.Data.XYZ, Add a sub-directory System.Data.XYZ. Add
- your provider specific tests to this directory with each
- test case assigned to your category.
- * Add an application config file named after your database
- name, same as the category name. Add an application key
- called ConnString with the correct Connection String to your
- database. This entry will be changed by the user when he
- wants to run test on a different physical database.
- IMPORTANT:
- * Do *not* move any of the test cases to generic until you are
- sure that they will run in all databases that are categorized.
|