Sha256: 5d4a1b102e600b6ab9806e288f7ba37656eae22e021aa6eee231c1939c5fcc85
Contents?: true
Size: 1.14 KB
Versions: 5
Compression:
Stored size: 1.14 KB
Contents
require File.join(File.dirname(__FILE__), 'CONFIG.rb') require 'rubygems' require 'facets' require 'test/unit' require 'og' class TC_OgPolymorphic < Test::Unit::TestCase # :nodoc: all include Og # This class is a polymorphic parent. Ie' it acts as template # to generate customized versions of this class. class Comment property :body, String belongs_to :parent, Object # polymorphic marker ! def initialize(body) @body = body end end class Article property :title, String has_many Comment def initialize(title) @title = title end end class User property :name, String has_many Comment def initialize(name) @name = name end end $og1.manage_classes(Comment, Article, User) def test_all u = User.create('gmosx') u.comments << User::Comment.create('Hello') u.comments << User::Comment.create('World') assert_equal 2, u.comments.size a = Article.create('test') a.comments << Article::Comment.create('Hello2') a.comments << Article::Comment.create('World2') assert_equal 2, a.comments.size end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
og-0.28.0 | test/og/tc_polymorphic.rb |
og-0.29.0 | test/og/tc_polymorphic.rb |
og-0.30.0 | test/og/tc_polymorphic.rb |
og-0.31.0 | test/og/tc_polymorphic.rb |
og-0.40.0 | test/og/tc_polymorphic.rb |