Sha256: fc2fadaff824e51082c4ea3d80c69a96b7dcdfdcbf359fc7722ae4d7b14db384

Contents?: true

Size: 1013 Bytes

Versions: 4

Compression:

Stored size: 1013 Bytes

Contents

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

# $DBG = true

require 'rubygems'
require 'facets'
require 'test/unit'

require 'og'

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?($og1.store.class) 
    assert User.ogmanager.store.is_a?($og2.store.class) 
    
    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

4 entries across 4 versions & 1 rubygems

Version Path
og-0.28.0 test/og/tc_multiple.rb
og-0.29.0 test/og/tc_multiple.rb
og-0.30.0 test/og/tc_multiple.rb
og-0.31.0 test/og/tc_multiple.rb