| 1 | use strict; |
|---|
| 2 | |
|---|
| 3 | use lib 't/lib', 'extlib', 'lib', '../lib', '../extlib'; |
|---|
| 4 | use Test::More tests => 9; |
|---|
| 5 | |
|---|
| 6 | use vars qw($T_CFG); |
|---|
| 7 | use MT::Test qw(:db :data); |
|---|
| 8 | |
|---|
| 9 | |
|---|
| 10 | $T_CFG = -r 't/mysql.cfg' ? 't/mysql.cfg' : $ENV{HOME} .'/mysql-test.cfg'; |
|---|
| 11 | $T_CFG = -r 't/mt.cfg' ? 't/mt.cfg' : $ENV{HOME} .'/mt-test.cfg'; |
|---|
| 12 | |
|---|
| 13 | use MT; |
|---|
| 14 | |
|---|
| 15 | require MT::Category; |
|---|
| 16 | my $cat_cache = MT::Category->cache(blog_id => 1); |
|---|
| 17 | ok($cat_cache); |
|---|
| 18 | |
|---|
| 19 | # make sure order is consistent |
|---|
| 20 | @$cat_cache = sort { $a->[1] cmp $b->[1] } @$cat_cache; |
|---|
| 21 | |
|---|
| 22 | # check one of the elements |
|---|
| 23 | is($cat_cache->[0][0], '2'); |
|---|
| 24 | is($cat_cache->[0][1], 'bar'); |
|---|
| 25 | is($cat_cache->[0][2], '0'); |
|---|
| 26 | |
|---|
| 27 | require MT::Tag; |
|---|
| 28 | my $tag_cache = MT::Tag->cache(blog_id => 1, class => 'MT::Entry'); |
|---|
| 29 | ok($tag_cache); |
|---|
| 30 | |
|---|
| 31 | is($tag_cache->{grandpa}, 1); |
|---|
| 32 | is($tag_cache->{verse}, MT::Object->driver->can('count_group_by') ? 5 : 1); |
|---|
| 33 | |
|---|
| 34 | my $entry = MT::Entry->load(1); |
|---|
| 35 | $entry->tags($entry->get_tags(), 'newtag'); |
|---|
| 36 | $entry->save; |
|---|
| 37 | |
|---|
| 38 | $tag_cache = MT::Tag->cache(blog_id => 1, class => 'MT::Entry'); |
|---|
| 39 | is($tag_cache->{newtag}, 1); |
|---|
| 40 | |
|---|
| 41 | my $cat = new MT::Category; |
|---|
| 42 | $cat->label("New category"); |
|---|
| 43 | $cat->blog_id(1); |
|---|
| 44 | $cat->save; |
|---|
| 45 | |
|---|
| 46 | my $new_cat_cache_count = (scalar @$cat_cache) + 1; |
|---|
| 47 | $cat_cache = MT::Category->cache(blog_id => 1); |
|---|
| 48 | is((scalar @$cat_cache), $new_cat_cache_count); |
|---|
| 49 | |
|---|
| 50 | 1; |
|---|