about summary refs log tree commit homepage
path: root/test/test_mlib.rb
blob: b16ea15240abbb6db647ebddfe1881768dbee3a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# Copyright (C) 2013-2019 all contributors <dtas-all@nongnu.org>
# License: GPL-3.0+ <https://www.gnu.org/licenses/gpl-3.0.txt>
# frozen_string_literal: true
require_relative 'helper'
begin
  require 'dtas/mlib'
  require 'sequel'
  require 'sqlite3'
rescue LoadError => err
  warn "skipping mlib test: #{err.message}"
  exit 0
end

class TestMlib < Testcase
  def setup
    @db = Sequel.sqlite(':memory:', case_sensitive_like: false)
  end

  def test_migrate
    ml = DTAS::Mlib.new(@db)
    begin
      $-w = false
      ml.migrate
      tables = @db.tables
    ensure
      $-w = true
    end
    [ :nodes, :tags, :vals, :comments ].each do |t|
      assert tables.include?(t), "missing #{t}"
    end
  end
end