2017-04-13 57 views
0

将来のクラスが継承する親クラスをテストしようとしています。 Rspecでこれをどうやってやりますか? dummy_child_classが、私はそれがdescribed_classから継承し作成してい単なるテストの子クラスである子がRspecで継承した親クラスをテストします。

let(:dummy_child_flow) do 
    class ChildFlow < described_class 
     operations TaxWorker, DiscountWorker 
     transitions RefundFlow, CancellationFlow 
    end 

    end 
    class TaxWorker; end 
    class DiscountWorker; end 
    class RefundFlow; end 
    class CancellationFlow; end 
end 

これまでのところ、私はこれを持っています。 described_classには、operationstransitionsというクラスメソッドがあり、他のクラスを取ります。私は要するに、これらのクラスメソッド(親に位置する)が子供にアクセス可能であることを知りたい。これは汚いと感じます。これを設定するより良い方法は何ですか?

+0

これはかなり混乱しているようです。私はすべてのコードを仕様の代わりにアプリの一部にする予定です。次に、 'DummyChildFlow'をテストできます。 –

答えて

1

チェックしたいのは、クラスメソッドに子がアクセスできることだけです。クラスが応答したい特定のメソッドに応答しているかどうかを確認できます。

class A 
    def self.grin! 
    ":D" 
    end 
end 

class B < A; end 

describe B do 
    it "should have A's class methods" 
    expect(described_class).to respond_to?(:grin!) 
    end 
end 
関連する問題