[Jifty-commit] r2258 - in Jifty-DBI/trunk: t
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Fri Dec 1 14:54:45 EST 2006
Author: falcone
Date: Fri Dec 1 14:54:45 2006
New Revision: 2258
Modified:
Jifty-DBI/trunk/ (props changed)
Jifty-DBI/trunk/t/10schema.t
Jifty-DBI/trunk/t/testmodels.pl
Log:
r14929 at ketch: falcone | 2006-12-01 14:44:48 -0500
* add sqlite sql so that these tests run without needing postgres configured
* reorganize the code so its easier to add more databases later, and uses util.pl more
Modified: Jifty-DBI/trunk/t/10schema.t
==============================================================================
--- Jifty-DBI/trunk/t/10schema.t (original)
+++ Jifty-DBI/trunk/t/10schema.t Fri Dec 1 14:54:45 2006
@@ -26,9 +26,10 @@
foreach my $d ( @available_drivers ) {
SKIP: {
-# unless ($d eq 'Pg' or $d eq 'SQLite' or $d eq 'mysql') {
- unless ($d eq 'Pg') {
- skip "first goal is to work on Pg", TESTS_PER_DRIVER;
+ my $address_schema = has_schema('Sample::Address',$d);
+ my $employee_schema = has_schema('Sample::Employee',$d);
+ unless ($address_schema && $employee_schema) {
+ skip "need to work on $d", TESTS_PER_DRIVER;
}
unless( should_test( $d ) ) {
@@ -61,22 +62,9 @@
ok($ret != 0, "added model from real class");
- if ($d eq 'Pg' ) { is_ignoring_space($SG->create_table_sql_text, <<END_SCHEMA, "got the right schema");
- CREATE TABLE addresses (
- id serial NOT NULL ,
- employee_id integer ,
- name varchar DEFAULT 'Frank' ,
- phone varchar ,
- PRIMARY KEY (id)
- ) ;
-END_SCHEMA
-
- } else {
- TODO: {
- local $TODO = "Need schema for $d";
- ok(0, "need db schema for $d");
- };
- }
+ is_ignoring_space($SG->create_table_sql_text,
+ Sample::Address->$address_schema,
+ "got the right Address schema for $d");
my $employee = Sample::Employee->new;
@@ -87,40 +75,14 @@
ok($ret != 0, "added model from an instantiated object");
- if ($d eq 'Pg') {
- is_ignoring_space($SG->create_table_sql_text, <<END_SCHEMA, "got the right schema");
- CREATE TABLE addresses (
- id serial NOT NULL ,
- employee_id integer ,
- name varchar DEFAULT 'Frank' ,
- phone varchar ,
- PRIMARY KEY (id)
- ) ;
- CREATE TABLE employees (
- id serial NOT NULL ,
- dexterity integer ,
- name varchar ,
- label varchar ,
- type varchar ,
- PRIMARY KEY (id)
- ) ;
-END_SCHEMA
- } else {
- TODO: {
- local $TODO = "Need schema for $d";
- ok(0, "need db schema for $d");
- };
- }
+ is_ignoring_space($SG->create_table_sql_text,
+ Sample::Address->$address_schema. Sample::Employee->$employee_schema,
+ "got the right Address+Employee schema for $d");
my $manually_make_text = join ' ', map { "$_;" } $SG->create_table_sql_statements;
- if ($d eq 'Pg') {
- is_ignoring_space($SG->create_table_sql_text, $manually_make_text, 'create_table_sql_text is the statements in create_table_sql_statements')
- } else {
- TODO: {
- local $TODO = "Need schema for $d";
- ok(0, "need db schema for $d");
- };
- }
+ is_ignoring_space($SG->create_table_sql_text,
+ $manually_make_text,
+ 'create_table_sql_text is the statements in create_table_sql_statements');
cleanup_schema( 'TestApp', $handle );
disconnect_handle( $handle );
Modified: Jifty-DBI/trunk/t/testmodels.pl
==============================================================================
--- Jifty-DBI/trunk/t/testmodels.pl (original)
+++ Jifty-DBI/trunk/t/testmodels.pl Fri Dec 1 14:54:45 2006
@@ -9,6 +9,32 @@
};
+sub schema_sqlite {
+ return q{
+ CREATE TABLE employees (
+ id INTEGER PRIMARY KEY NOT NULL ,
+ dexterity integer ,
+ name varchar ,
+ label varchar ,
+ type varchar
+ ) ;
+ };
+}
+
+sub schema_pg {
+ return q{
+ CREATE TABLE employees (
+ id serial NOT NULL ,
+ dexterity integer ,
+ name varchar ,
+ label varchar ,
+ type varchar ,
+ PRIMARY KEY (id)
+ ) ;
+ };
+
+}
+
package Sample::Address;
use Jifty::DBI::Schema;
use Jifty::DBI::Record schema {
@@ -25,4 +51,27 @@
};
+sub schema_sqlite {
+ return q{
+ CREATE TABLE addresses (
+ id INTEGER PRIMARY KEY NOT NULL ,
+ employee_id integer ,
+ name varchar DEFAULT 'Frank' ,
+ phone varchar
+ ) ;
+ }
+}
+
+sub schema_pg {
+ return q{
+ CREATE TABLE addresses (
+ id serial NOT NULL ,
+ employee_id integer ,
+ name varchar DEFAULT 'Frank' ,
+ phone varchar ,
+ PRIMARY KEY (id)
+ ) ;
+ };
+}
+
1;
More information about the Jifty-commit
mailing list