Sha256: ee8da461d9d7fb2e52418381b3e02c66d55d7e940b510b1182585030e0058cff

Contents?: true

Size: 1 KB

Versions: 3

Compression:

Stored size: 1 KB

Contents

require File.join(File.dirname(__FILE__), 'CONFIG.rb')

$DBG = true

require 'test/unit'

require 'og'

$og1 = Og.setup($og_config1)
$og2 = Og.setup($og_config2)

class TestMultiple < Test::Unit::TestCase # :nodoc: all
  include Og

  class User
    property :name, String, :uniq => true
    has_many Article
    
    def initialize(name)
      @name = name
    end
  end

  class Article
    property :title, String
    belongs_to User
    
    def initialize(title)
      @title = title
    end
  end
  
  def test_all
    $og1.manage_class Article
    $og2.manage_class User

    assert Article.ogmanager.store.is_a?(Og::MysqlStore) 
    assert User.ogmanager.store.is_a?(Og::PsqlStore) 
    
    a1 = Article.create('hello')
    a2 = Article.create('world')
    
    u = User.create('gmosx')
    
    assert_equal 2, Article.count
    
    u.articles << a1
    u.articles << a2
    
    gmosx = User.find_by_name('gmosx')
    assert_equal 2, gmosx.articles.size
    assert_equal 'hello', gmosx.articles[0].title
  end
  
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
og-0.24.0 test/og/tc_multiple.rb
og-0.25.0 test/og/tc_multiple.rb
og-0.26.0 test/og/tc_multiple.rb