0

私はこの宝石を見ています: https://github.com/stympy/faker

私はそれをかなり頻繁に使用しており、非常に優れていますが、すべてのメソッドがモジュールに編成されている理由がわかりません。

Faker::Code.isbn #=> "759021701-8"
Faker::Address.longitude #=> "-156.65548382095133"
Faker::Bitcoin.address #=> "1HUoGjmgChmnxxYhz87YytV4gVjfPaExmh"

私は自分の工場でこれをしなければなりません:

factory :person, class: Person do
    name { Faker::Lorem.word }
    account { Faker::Bitcoin.address } 
    address { Faker::Address.longitude }
    favourite_book { Faker::Code.isbn }
end

すべてのモジュールをテスト スイートに含めることができるので、これを行うだけで済みます。

factory :person, class: Person do
    name { word }
    account { address } 
    address { longitude }
    favourite_book { isbn }
end

私はrspecを使用しています:

RSpec.configure do |config|
  config.include FactoryGirl::Syntax::Methods
  # doesn't work: config.include Faker
end

なぜわざわざメソッドを別々のメソッドに分けたのでしょうか? 速くするには?非常に複雑なプロジェクトでない限り、これは無視できる量ではないでしょうか? BetterFaker.wordより良い宝石があれば、それができるのではないでしょうBetterFaker.addressか? 覚えやすくなります:)

4

1 に答える 1

0

gem の作成者がファイルを論理的な方法で整理し、さまざまな場所にさまざまなスコープを持つメソッドを保持することを好みます。

于 2014-06-27T20:03:31.067 に答える