[Bast-commits] r9278 - in trunk/DBIx-Class-EncodedColumn: . etc
lib/DBIx/Class t t/lib t/var
groditi at dev.catalyst.perl.org
groditi at dev.catalyst.perl.org
Fri Apr 30 00:10:34 GMT 2010
Author: groditi
Date: 2010-04-30 01:10:34 +0100 (Fri, 30 Apr 2010)
New Revision: 9278
Added:
trunk/DBIx-Class-EncodedColumn/etc/
trunk/DBIx-Class-EncodedColumn/etc/make_test_ddl_dir.pl
trunk/DBIx-Class-EncodedColumn/t/var/DigestTest-Schema-1.x-SQLite.sql
Removed:
trunk/DBIx-Class-EncodedColumn/t/lib/DigestTest.pm
Modified:
trunk/DBIx-Class-EncodedColumn/Makefile.PL
trunk/DBIx-Class-EncodedColumn/lib/DBIx/Class/EncodedColumn.pm
trunk/DBIx-Class-EncodedColumn/t/02digest.t
trunk/DBIx-Class-EncodedColumn/t/03crosstable_leak.t
Log:
refactor test suite. stop requiring sqlt to test. include ddl
Modified: trunk/DBIx-Class-EncodedColumn/Makefile.PL
===================================================================
--- trunk/DBIx-Class-EncodedColumn/Makefile.PL 2010-04-29 23:02:48 UTC (rev 9277)
+++ trunk/DBIx-Class-EncodedColumn/Makefile.PL 2010-04-30 00:10:34 UTC (rev 9278)
@@ -15,11 +15,12 @@
requires 'Sub::Name' => '0.04';
#build dependencies
-build_requires 'Test::More';
-build_requires 'DBD::SQLite';
-build_requires 'SQL::Translator' => '0.11002';
-build_requires 'Digest::SHA';
-build_requires 'File::Spec';
+test_requires 'Test::More';
+test_requires 'DBD::SQLite';
+test_requires 'Dir::Self';
+test_requires 'File::Temp';
+test_requires 'Digest::SHA';
+test_requires 'File::Spec';
#recommended modules
feature 'Digest::MD5 Support?',
Added: trunk/DBIx-Class-EncodedColumn/etc/make_test_ddl_dir.pl
===================================================================
--- trunk/DBIx-Class-EncodedColumn/etc/make_test_ddl_dir.pl (rev 0)
+++ trunk/DBIx-Class-EncodedColumn/etc/make_test_ddl_dir.pl 2010-04-30 00:10:34 UTC (rev 9278)
@@ -0,0 +1,12 @@
+#! /usr/bin/perl -w
+
+use strict;
+use warnings;
+use Dir::Self;
+
+use lib File::Spec->catdir(__DIR__, '../', 't', 'lib');
+use DigestTest::Schema;
+
+my $var = File::Spec->catdir(__DIR__, '../', 't', 'var');
+my $schema = DigestTest::Schema->connect("dbi:SQLite:");
+$schema->create_ddl_dir(['SQLite',], undef, $var, undef, {add_drop_table => 0});
Modified: trunk/DBIx-Class-EncodedColumn/lib/DBIx/Class/EncodedColumn.pm
===================================================================
--- trunk/DBIx-Class-EncodedColumn/lib/DBIx/Class/EncodedColumn.pm 2010-04-29 23:02:48 UTC (rev 9277)
+++ trunk/DBIx-Class-EncodedColumn/lib/DBIx/Class/EncodedColumn.pm 2010-04-30 00:10:34 UTC (rev 9278)
@@ -9,7 +9,7 @@
__PACKAGE__->mk_classdata( '_column_encoders' );
-our $VERSION = '0.00006';
+our $VERSION = '0.00007';
sub register_column {
my $self = shift;
Modified: trunk/DBIx-Class-EncodedColumn/t/02digest.t
===================================================================
--- trunk/DBIx-Class-EncodedColumn/t/02digest.t 2010-04-29 23:02:48 UTC (rev 9277)
+++ trunk/DBIx-Class-EncodedColumn/t/02digest.t 2010-04-30 00:10:34 UTC (rev 9278)
@@ -3,12 +3,13 @@
use strict;
use warnings;
use Test::More;
-use Digest;
+use Dir::Self;
use File::Spec;
-use FindBin '$Bin';
-use lib File::Spec->catdir($Bin, 'lib');
+use File::Temp 'tempdir';
+use lib File::Spec->catdir(__DIR__, 'lib');
+
my ($sha_ok, $bcrypt_ok, $pgp_ok, $whirlpool_ok);
BEGIN {
@@ -27,11 +28,15 @@
plan tests => $tests;
#1
-use_ok("DigestTest");
+use_ok('DigestTest::Schema');
-my $schema = DigestTest->init_schema;
-my $rs = $schema->resultset('Test');
+my $tmp = tempdir( CLEANUP => 1 );
+my $db_file = File::Spec->catfile($tmp, 'testdb.sqlite');
+my $schema = DigestTest::Schema->connect("dbi:SQLite:dbname=${db_file}");
+$schema->deploy({}, File::Spec->catdir(__DIR__, 'var'));
+my $rs = $schema->resultset('Test');
+
my $checks = {};
if( $sha_ok ){
for my $algorithm( qw/SHA-1 SHA-256/){
@@ -223,11 +228,6 @@
is($row->sha1_hex, undef, 'Check undef is passed through');
}
-END {
- # In the END section so that the test DB file gets closed before we attempt to unlink it
- DigestTest::clear($schema);
-}
-
#TODO
# -- dies_ok tests when using invalid cyphers and encodings
Modified: trunk/DBIx-Class-EncodedColumn/t/03crosstable_leak.t
===================================================================
--- trunk/DBIx-Class-EncodedColumn/t/03crosstable_leak.t 2010-04-29 23:02:48 UTC (rev 9277)
+++ trunk/DBIx-Class-EncodedColumn/t/03crosstable_leak.t 2010-04-30 00:10:34 UTC (rev 9278)
@@ -3,14 +3,15 @@
use strict;
use warnings;
use Test::More tests => 5;
-use Digest;
+use Dir::Self;
use File::Spec;
-use FindBin '$Bin';
-use lib File::Spec->catdir( $Bin, 'lib' );
+use File::Temp 'tempdir';
+use lib File::Spec->catdir(__DIR__, 'lib');
+
#1
-use_ok("DigestTest");
+BEGIN { use_ok("DigestTest::Schema"); }
# ABOUT THIS TEST;
#
@@ -22,7 +23,11 @@
# This test is to demonstrate, that one is inheriting the encoding options wrongly from the other.
#
-my $schema = DigestTest->init_schema;
+my $tmp = tempdir( CLEANUP => 1 );
+my $db_file = File::Spec->catfile($tmp, 'testdb.sqlite');
+my $schema = DigestTest::Schema->connect("dbi:SQLite:dbname=${db_file}");
+$schema->deploy({}, File::Spec->catdir(__DIR__, 'var'));
+
my $tablea = $schema->resultset('TableA');
my $tableb = $schema->resultset('TableB');
@@ -35,10 +40,4 @@
is( $objecta->can('check_conflict'), undef, 'Table that is requested to not be encoded has no check_conflict method' );
ok( $objectb->can('check_conflict'), 'Table that is requested encoded has check_conflict method' );
-END {
-
- # In the END section so that the test DB file gets closed before we attempt to unlink it
- DigestTest::clear($schema);
-}
-
1;
Deleted: trunk/DBIx-Class-EncodedColumn/t/lib/DigestTest.pm
===================================================================
--- trunk/DBIx-Class-EncodedColumn/t/lib/DigestTest.pm 2010-04-29 23:02:48 UTC (rev 9277)
+++ trunk/DBIx-Class-EncodedColumn/t/lib/DigestTest.pm 2010-04-30 00:10:34 UTC (rev 9278)
@@ -1,34 +0,0 @@
-package # hide from PAUSE
- DigestTest;
-
-use strict;
-use warnings;
-use DigestTest::Schema;
-
-use FindBin '$Bin';
-
-
-sub init_schema {
- my $self = shift;
- my $db_dir = File::Spec->catdir($Bin, "var");
- my $db_file = File::Spec->catfile($db_dir, "Test.db");
-
- unlink($db_file) if -e $db_file;
- unlink($db_file . "-journal") if -e $db_file . "-journal";
- mkdir($db_dir) unless -d $db_dir;
-
- my $dsn = "dbi:SQLite:dbname=${db_file}";
- my $schema = DigestTest::Schema->connect($dsn);
- $schema->deploy();
- return $schema;
-}
-
-sub clear {
- my $db_dir = File::Spec->catdir($Bin, "var");
- my $db_file = File::Spec->catfile($db_dir, "Test.db");
- return unless -e $db_file;
- $_[0]->storage->disconnect;
- unlink($db_file) or die "Failed to clear test db $db_file";
-}
-
-1;
Added: trunk/DBIx-Class-EncodedColumn/t/var/DigestTest-Schema-1.x-SQLite.sql
===================================================================
--- trunk/DBIx-Class-EncodedColumn/t/var/DigestTest-Schema-1.x-SQLite.sql (rev 0)
+++ trunk/DBIx-Class-EncodedColumn/t/var/DigestTest-Schema-1.x-SQLite.sql 2010-04-30 00:10:34 UTC (rev 9278)
@@ -0,0 +1,40 @@
+--
+-- Created by SQL::Translator::Producer::SQLite
+-- Created on Thu Apr 29 20:08:54 2010
+--
+
+
+BEGIN TRANSACTION;
+
+--
+-- Table: tablea
+--
+CREATE TABLE tablea (
+ id INTEGER PRIMARY KEY NOT NULL,
+ conflicting_name char(43) NOT NULL
+);
+
+--
+-- Table: tableb
+--
+CREATE TABLE tableb (
+ id INTEGER PRIMARY KEY NOT NULL,
+ conflicting_name char(43) NOT NULL
+);
+
+--
+-- Table: test
+--
+CREATE TABLE test (
+ id INTEGER PRIMARY KEY NOT NULL,
+ dummy_col char(43) NOT NULL,
+ sha1_hex char(40),
+ sha1_b64 char(27),
+ sha256_hex char(64),
+ sha256_b64 char(43),
+ sha256_b64_salted char(57),
+ bcrypt_1 text,
+ bcrypt_2 text
+);
+
+COMMIT;
More information about the Bast-commits
mailing list