rails - comment saisir des données de fixation de l'intérieur des tests

voix
2

J'ai regardé les rails de guidage pour les essais mais je peux sembler pour obtenir des données de fixation à l' intérieur de mon test. Je un dispositif de fixation:

one:
  pay_period: one
  employee: kent
  cpp: 50
  ei: 40
  tax: 100
  vacation_pay: 30

Ensuite, j'ai un test comme ci-dessous (où EmployeePayPeriod est un modèle)

require 'test_helper'
class EmployeePayPeriodTest < ActiveSupport::TestCase

  # Replace this with your real tests.
  test Calculate wages under 80 hours correctly do
    p = EmployeePayPeriod(:one)
    assert true
  end
end

Il est évident que ce qui précède ne fonctionne pas. Je l'ai regardé le guide. Dans le guide, il utilise un extrait de code pour illustrer comment vous obtenez des données de montage:

@user = users(:david).  

Il semble que les « utilisateurs » n'est pas un modèle (parce que la convention normale est qu'il singulier et capitalisé. Alors, d'où vient-il? « Utilisateurs » Si son autogenerated devrait y avoir un object 'employee_pay_periods de comparables disponibles pour moi? ( Je l'ai essayé, mais il ne semble pas fonctionner).

Merci

Créé 27/08/2009 à 05:58
source utilisateur
Dans d'autres langues...                            


2 réponses

voix
6

Le dispositif doit être dans un fichier .yml dont le nom correspond au nom de la table (et non le nom du modèle).

En supposant que le nom de la table EmployeePayPeriodest employee_pay_periods, votre appareil doit être test/fixtures/employee_pay_periods.yml, et vous devriez avoir une employee_pay_periods()méthode pour accéder aux autogénérés accessoires.

Assurez-vous que vos appareils sont effectivement chargés. Les derniers Rails ajouter la ligne suivante pour tester / test_helper.rb:

fixtures :all

Cette charge tous les appareils avant chaque test. Assurez-vous que cette ligne est là et pas commentée.

Créé 27/08/2009 à 16:55
source utilisateur

voix
3

Je crois que les utilisateurs est une convention fondée sur le nom du fichier de YML. Dans l'exemple, ils ont users.yml. Donc, pour répondre à votre question plus directement, essayez quel que soit le nom de votre fichier de fixation de .yml est.

Quelque chose qui pourrait être plus facile à long terme, cependant, est quelque chose comme factorygirl , Machiniste , ou fixjour

Créé 27/08/2009 à 06:04
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more