2017-04-14 1 views
0

Je méthode de classe suivantecomment appeler la méthode de classe rspec

module Abc 
    class Def 
    class << self 
     include Ghi::Lmn 
     def mymethod(*args) 
     puts 'class method' 

     def value 
     @value.nil? ? 'test' << name : @value 
     end 
     end 
    end 
end 

maintenant comment puis-je écrire des scénarios de test pour cette méthode afin qu'il appeler la méthode MyMethod?

Répondre

0

Vous pouvez appeler votre méthode comme ceci:

Abc::Def.mymethod(1, 2, 3, :foo, :bar, :baz) 
1

Here's un bon lien sur la façon d'appeler une méthode de classe avec rspec. Fondamentalement, vous créez un appel à la méthode de classe dans le rspec lui-même:

class FooBar 

    def initialize(foo, bar) 
    @foo = foo 
    @bar = bar 
    end 

    def output 
    puts @foo 
    puts @bar 
    end 

end 

describe Foo do 
    context bar do 
    subject { FooBar.new(<info>).output } # Create an instance of the class in the rspec 
    end 
end 
+0

C'est une méthode de classe, pas une méthode d'instance. – SteveTurczyn

+0

@SteveTurczyn Oups, merci, corrigé – 13aal

+0

Merci. est-il possible que je puisse aussi accéder au nom de Ghi :: Lmn? question mise à jour – User7354632781