Nagappan Alagappan 3548ddadc6 2007-06-07 Nagappan A <[email protected]> 18 years ago
..
Common 48c392c9a8 2007-05-30 Nagappan A <[email protected]> 18 years ago
ProviderIndependant 3548ddadc6 2007-06-07 Nagappan A <[email protected]> 18 years ago
System.Data.Odbc 9bb6ac4a14 2007-06-07 Amit Biswas <[email protected]> 18 years ago
System.Data.OleDb.jvm e3aa2df43f Refactoring: ensure proper cleanup 18 years ago
System.Data.SqlClient 90182882da 2007-06-07 Nagappan A <[email protected]> 18 years ago
System.Data.SqlClient.jvm f41fbd667c ExecuteXmlReader() implementation 19 years ago
sql db8ea6e71f 2007-06-06 Nagappan A <[email protected]> 18 years ago
ChangeLog b845ad69c9 2006-12-05 Nagappan A <[email protected]> 19 years ago
Makefile 369a8174d1 2006-12-05 Nagappan A <[email protected]> 19 years ago
README cce8383f1e added a new framework for testing data providers using nunit and mono.data's provider 20 years ago
System.Data.Connected.Tests.dll.sources b845ad69c9 2006-12-05 Nagappan A <[email protected]> 19 years ago
System.Data.OleDb.J2EE.config a71dec2fd6 Fixes for TARGET_JVM tests. 19 years ago
System.Data.OleDb.J2EE.sln 09c093f910 Added automated testing support for TARGET_JVM. 20 years ago
System.Data.OleDb.Tests.J2EE.vmwcsproj 0ec383c797 Added SqlClient automated tests for TARGET_JVM 20 years ago
System.Data.OleDb.Tests20.J2EE.csproj 45e41e884d Convert jgac to java_refs, and jre6 to jre 19 years ago
System.Data.OleDb.Tests20.J2EE.sln 821e657ebf Grasshopper project system now uses csproj extension 19 years ago
app-default.config cce8383f1e added a new framework for testing data providers using nunit and mono.data's provider 20 years ago
app-net_2_0.config e36848f82d Updated runtime version to v2.0.50727 (2.0 RTM). Use Consts.MonoVersion, Consts.FxFileVersion and Consts.VsFileVersion in assembly attributes. Use Consts.RuntimeVersion as Environment.Version that makes maintenance easier. 20 years ago
odbc.config cce8383f1e added a new framework for testing data providers using nunit and mono.data's provider 20 years ago
sqlserver.config 27fbd0ccd5 2006-12-05 Nagappan A <[email protected]> 19 years ago

README

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=
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.