class TestBerkeleyDB

Public Instance Methods

test_bdb() click to toggle source
# File vendor/qwik/lib/qwik/db-berkeley.rb, line 227
    def test_bdb
      @pagedb = @site.db

      ok_eq(false, @pagedb.exist?('1'))

      @pagedb.create('1')
      ok_eq(true, @pagedb.exist?('1'))
      ok_eq('', @pagedb.get('1'))

      @pagedb.put('1', 't')
      ok_eq('t', @pagedb.get('1'))

      assert_instance_of(Time, @pagedb.mtime('1'))

      @pagedb.add('1', 's')
      ok_eq('ts', @pagedb.get('1'))

      assert_instance_of(Time, @pagedb.last_page_time)

      assert_instance_of(Time, @pagedb.last_article_time)

      @pagedb.each {|f|
        assert_instance_of(String, f)
      }

      @pagedb.touch('1')

      @pagedb.delete('1')
      ok_eq(false, @pagedb.exist?('1'))

#      page = @pagedb.db_get('1') # db_get should be private.
#      ok_eq(nil, page)
#      page = @pagedb.get('1')
#      ok_eq('', page)

      @pagedb.touch('1')
      ok_eq(true, @pagedb.exist?('1'))

      @pagedb.delete('1')
      ok_eq(false, @pagedb.exist?('1'))

      ok_eq(true,  @pagedb.exist?('_SideMenu'))
      ok_eq(false, @pagedb.baseexist?('_SideMenu'))

      # test_not_exist
      @pagedb = @site.db

      ok_eq(false, @pagedb.exist?('1'))

      @pagedb.put('1', 't')
      ok_eq(true, @pagedb.exist?('1'))

      # test_super_files
      @pagedb = @site.db

      page = @site['_SiteConfig']
      assert_match(/theme/, page.get)

      @dir.erase_all_for_test

      page = @site['_SiteConfig']
      assert_match(/theme/, page.get)
    end