The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#===============================================================================
#
#  DESCRIPTION:  Test published attr
#
#       AUTHOR:  Aliaksandr P. Zahatski, <zahatski@gmail.com>
#===============================================================================

package main;
use strict;
use warnings;
use Test::More tests => 14;                      # last test to print
#use Test::More 'no_plan';                      # last test to print

use Data::Dumper;
use WriteAt;
use utf8;
use_ok('WriteAt');
my $t = <<T;
=begin pod
=for CHAPTER :published<'2012-11-27T09:39:19Z'> :tag<intro>
Test chapter
=head1 Test name
test
=head2 test

yes

=for head2 :published<'2013-11-27T09:35:00Z'>

Test

=end pod
T



#test Writeat::UtilCTX
my $c = new WriteAt::UtilCTX:: (filter_time=>&WriteAt::get_time_stamp_from_string('2012-11-27T09:40:19Z'));
 $c->switch_head_level( 0, 4);
 is $c->get_current_level_time(), 4, 'level time for =h1';
 is $c->switch_head_level( 1, 5),0, '0->1 level';
 is $c->get_current_level_time(), 5, 'level time for =h2';
 is $c->switch_head_level( 0),1, '1->0 level';
 is $c->get_current_level_time(), 4, 'level time for =h1';
 is $c->switch_head_level( 1, 7),0, '0->1 level';
 is $c->switch_head_level( 2, 6 ),1, '1->2 level';

 is $c->switch_head_level( 1, 8 ),2, '2->1 level';
 is $c->get_current_level_time(), 8, 'level time for =h1';

 my $tree = Perl6::Pod::Utl::parse_pod( $t, default_pod =>0 )
  || die "Can't parse ";
 $tree = &WriteAt::filter_published($tree,'2013-10-27T09:40:19Z' );
 is scalar(@{ $tree->[0]->{content} }), 4, 'filter =head2';
my $t2 = <<TXT;
=CHAPTER Test chapter
=for head1 :published<'2013-04-27T09:35:00Z'>
Test name

test
=head2 test

yes

=for head1 :published<'2013-04-28T09:35:00Z'>

Test

TXT
 my $tree2 = Perl6::Pod::Utl::parse_pod( $t2, default_pod =>1 )
  || die "Can't parse ";

 my $t21 = &WriteAt::filter_published($tree2,'2010-04-28T09:30:00Z' );
 is scalar(@{$t21}), 0, "empty"; 

 my $t22 = &WriteAt::filter_published($tree2,'2013-04-27T09:35:01Z' );
 is scalar(@$t22),4, 'head1+para';

 my $t23 = &WriteAt::filter_published($tree2,'2015-04-26T09:35:01Z' );
 is scalar(@$t23),6, 'head1+head1+para';