Sha256: cbd63294f72ff73d3e2d258c2c5d91fa93f33ff480fa7839eefb8a217f93cb5c

Contents?: true

Size: 1.7 KB

Versions: 1

Compression:

Stored size: 1.7 KB

Contents

require 'helper'
require 'kvm'
require 'kvm/archive'

class IntTestGenerateSql < KVM::KVMTest
  RICE_VERSION = "rice-1.0.3.1"
  
  def test_generate_sql
    do_with_svn(REAL_SVN_ROOT) do
      assert_generate_sql(TEST_RICE_VERSION) do
        p "TEST RICE: " + TEST_RICE_VERSION
        release = KVM::RiceRelease.new(TEST_RICE_VERSION) # don't get it yet! just use full name
        p "RELEASE NAME: " + release.name
        dataset = KVM::RiceReleaseGeneratedDataset.new(release.name, "bootstrap-server", "oracle")
        p "TEST DATASET"
        p dataset
        p dataset.project
        p dataset.ds_name
        p dataset.db_type
        p dataset.path
        dataset.get
      end
    end
  end

  def test_generate_sql_via_thor_app
    do_with_svn(REAL_SVN_ROOT) do
      assert_generate_sql(RICE_VERSION) do
        # this should download the release archive, unpack it, and generate sql for the dataset
        KVM::App.start([ "generate_datasets", RICE_VERSION ], { :datasets => "bootstrap-server" })
      end
    end
  end
  
  protected
  
  def assert_generate_sql(rice_version) 
    src = KVM::Source.new(KVM::Subversion::IMPEX_TOOL_REPO_PATH)
    assert !src.exists?
 
    yield     
    
    assert src.exists?
    
    archive = KVM::Archive.new(rice_version)
    assert archive.exists?
    
    release = KVM::RiceRelease.new(rice_version)
    assert release.exists?
    
    dataset = KVM::RiceReleaseGeneratedDataset.new(release.name, "bootstrap-server", "oracle")
    assert dataset.exists?
    
    # check that the SQL was actually generated in the dataset
    assert File.file?(File.join(dataset.path, 'sql', 'schema.sql'))
    assert File.file?(File.join(dataset.path, 'datasql', 'KREW_DOC_TYP_T.sql'))
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
kvm-0.0.1.pre test/int_test_generate_sql.rb