Как использовать именованные чертежи машиниста в огурце с маринованным огурцом - PullRequest
2 голосов
/ 19 июля 2010

Я заметил этот маленький бит в readme для pickle :

(Последняя версия pickle поддерживает несколько чертежи , для более ранних версий машинистом использовать рассол

Я сталкиваюсь с ситуацией, когда хочу создать пользователя с правами администратора. У меня есть два чертежа машиниста:

User.blueprint do
  first_name
  last_name
  email
  password { "password" }
  password_confirmation { "password" }
  state "active"
end

User.blueprint(:super_admin) do
  roles { ["super-admin", "moderator"] }
end

Вместо того, чтобы создавать собственный шаг для создания пользователя с правами администратора, мне было интересно, есть ли способ сделать это с помощью Pickle.

При использовании следующего шага будет использован обычный шаг маринования и ссылка на базовую схему работы машиниста:

Given a user exists with first_name: "Test", last_name: "Man"

Вопрос в том, как мне сказать, что я хочу пользователя с супер-правами администратора?

Ответы [ 2 ]

2 голосов
/ 25 июля 2010

Не уверен, как это будет сделано в Pickle, с очень похожим гемом Фабрика огурцов вы можете создать пользователя с супер-правами администратора, как это:

Given there is a user (super admin) with the first name "Test" and the last name "Man"
1 голос
/ 28 июля 2010

Получается, что создание именованных чертежей машинистов в Pickle довольно просто:

Given a super admin user exists with first_name: "Test", last_name: "Man"

Эта строка будет вызывать один и тот же шаг рассола, но Pickle достаточно умен, чтобы отобразить текст "супер администратор"к фабрике User.blueprint (: super_admin).

Это такой очевидный метод, что мне действительно следовало бы просто попробовать его, прежде чем спрашивать.В документации для Pickle явно не упоминается синтаксис для выполнения этого где-либо, только то, что это возможно сделать.Итак, теперь мы знаем.

...