save Ternary data type to graphml too
[scpubgit/stemmatology.git] / base / t / text_tradition_parser_self.t
index f53b16f..df36d06 100644 (file)
@@ -8,11 +8,9 @@ $| = 1;
 
 # =begin testing
 {
-use File::Temp;
 use Safe::Isa;
 use Test::Warn;
 use Text::Tradition;
-use Text::Tradition::Directory;
 use TryCatch;
 binmode STDOUT, ":utf8";
 binmode STDERR, ":utf8";
@@ -34,7 +32,10 @@ if( $t ) {
 
 # TODO add a relationship, add a stemma, write graphml, reparse it, check that 
 # the new data is there
-$t->language('Greek');
+my $language_enabled = $t->can('language');
+if( $language_enabled ) {
+       $t->language('Greek');
+}
 my $stemma_enabled = $t->can('add_stemma');
 if( $stemma_enabled ) {
        $t->add_stemma( 'dotfile' => 't/data/florilegium.dot' );
@@ -52,7 +53,9 @@ if( $newt ) {
     is( scalar $newt->collation->paths, 376, "Collation has all paths" );
     is( scalar $newt->witnesses, 13, "Collation has all witnesses" );
     is( scalar $newt->collation->relationships, 1, "Collation has added relationship" );
-    is( $newt->language, 'Greek', "Tradition has correct language setting" );
+    if( $language_enabled ) {
+           is( $newt->language, 'Greek', "Tradition has correct language setting" );
+       }
     my $rel = $newt->collation->get_relationship( 'w12', 'w13' );
     ok( $rel, "Found set relationship" );
     is( $rel->annotation, 'This is some note', "Relationship has its properties" );
@@ -62,28 +65,6 @@ if( $newt ) {
     }
 }
 
-# Test user save / restore
-my $fh = File::Temp->new();
-my $file = $fh->filename;
-$fh->close;
-my $dsn = "dbi:SQLite:dbname=$file";
-my $userstore = Text::Tradition::Directory->new( { dsn => $dsn,
-       extra_args => { create => 1 } } );
-my $scope = $userstore->new_scope();
-my $testuser = $userstore->create_user( { url => 'http://example.com' } );
-ok( $testuser->$_isa('Text::Tradition::User'), "Created test user via userstore" );
-$testuser->add_tradition( $newt );
-is( $newt->user->id, $testuser->id, "Assigned tradition to test user" );
-$graphml_str = $newt->collation->as_graphml;
-my $usert;
-warning_is {
-       $usert = Text::Tradition->new( 'input' => 'Self', 'string' => $graphml_str );
-} 'DROPPING user assignment without a specified userstore',
-       "Got expected user drop warning on parse";
-$usert = Text::Tradition->new( 'input' => 'Self', 'string' => $graphml_str,
-       'userstore' => $userstore );
-is( $usert->user->id, $testuser->id, "Parsed tradition with userstore points to correct user" );
-
 # Test warning if we can
 unless( $stemma_enabled ) {
        my $nst;