From c7bd7fb45cf5aaf93842bc716244375f46d7ed22 Mon Sep 17 00:00:00 2001 From: Yaroslav Date: Thu, 28 Sep 2023 22:54:35 +0300 Subject: [PATCH] Add spec and devise lang RO --- config/locales/devise.ro.yml | 147 +++++++++++++++++++++++++++++++++++ spec/factories/cars.rb | 1 + spec/models/car_spec.rb | 25 +++--- spec/models/user_spec.rb | 1 + spec/requests/cars_spec.rb | 13 +++- 5 files changed, 177 insertions(+), 10 deletions(-) create mode 100644 config/locales/devise.ro.yml diff --git a/config/locales/devise.ro.yml b/config/locales/devise.ro.yml new file mode 100644 index 00000000..7768d24b --- /dev/null +++ b/config/locales/devise.ro.yml @@ -0,0 +1,147 @@ +ro: + activerecord: + attributes: + user: + confirmation_sent_at: Confirmare trimisă la + confirmation_token: Cod de confirmare + confirmed_at: Confirmat la + created_at: Creat la + current_password: Parola curentă + current_sign_in_at: Autentificarea curentă la + current_sign_in_ip: IP-ul sesiunii curente + email: Email + encrypted_password: Parolă criptată + failed_attempts: Încercări eșuate + last_sign_in_at: Ultima autentificare la + last_sign_in_ip: IP-ul ultimei autentificări + locked_at: Blocat la + password: Parolă + password_confirmation: Confirmare parolă + remember_created_at: Ține minte creat la + remember_me: Ține-mă minte + reset_password_sent_at: Resetarea parolei trimisă la + reset_password_token: Resetează jetonul parolei + sign_in_count: Contor autentificări + unconfirmed_email: Email neconfirmat + unlock_token: Deblochează jetonul + updated_at: Actualizat la + models: + user: Utilizator + devise: + confirmations: + confirmed: Contul dvs. a fost confirmat cu succes. + new: + resend_confirmation_instructions: Retrimite instrucțiunile de confirmare + send_instructions: Veţi primi un e-mail cu instrucţiuni despre cum să confirmați contul dvs. în câteva minute. + send_paranoid_instructions: Dacă e-mailul dvs. există în baza noastră de date, veţi primi un e-mail cu instrucţiuni despre cum să vă confirmaţi contul în câteva minute. + failure: + already_authenticated: Sunteţi deja autentificat + inactive: Contul dvs. nu a fost activat încă. + invalid: Parolă sau %{authentication_keys} invalid. + last_attempt: Mai aveți o șansă până când accountul vă va fi blocat. + locked: Contul dvs. este blocat. + not_found_in_database: Parolă sau %{authentication_keys} invalid. + timeout: Sesiunea dvs. a expirat, vă rugăm să vă autentificaţi din nou pentru a continua. + unauthenticated: Trebuie să vă conectaţi sau să vă înscrieţi înainte de a continua. + unconfirmed: Trebuie să confirmaţi contul dvs. înainte de a continua. + mailer: + confirmation_instructions: + action: Confirmă accontul meu + greeting: Bine ați venit %{recipient}! + instruction: 'Vă puteți confirma emailul prin link-ul de mai jos:' + subject: Instrucţiuni de confirmare + email_changed: + greeting: Bună %{recipient}! + message: Te contactăm pentru a te informa că adresa ta de email va fi înlocuită cu %{email}. + message_unconfirmed: + subject: Adresă de email actualizată + password_change: + greeting: Bună %{recipient}! + message: Vă contactăm pentru a vă anunța ca parola dvs. a fost modificată. + subject: Parolă Schimbată + reset_password_instructions: + action: Schimbă parola + greeting: Bună %{recipient}! + instruction: Cineva a cerut un link pentru a schimba parola, puteți să faceți acest lucru prin link-ul de mai jos. + instruction_2: Dacă nu ați cerut acest lucru, vă rugăm să ignorați acest email. + instruction_3: Parola dvs. nu se v-a schimba până când nu accesați link-ul de mai sus și setați una nouă. + subject: Instrucțiuni pentru resetarea parolei + unlock_instructions: + action: Deblochează-mi contul + greeting: Bună %{recipient}! + instruction: 'Apăsați pe link-ul de mai jos pentru a vă debloca contul:' + message: Contul dumneavoastră a fost blocat din cauza unui număr ridicat de încercări de autentificare eșuate. + subject: Instrucțiuni pentru deblocarea contului + omniauth_callbacks: + failure: Nu te-am putut autoriza de pe contul de %{kind} pentru că "%{reason}". + success: Autorizat cu success din contul de %{kind}. + passwords: + edit: + change_my_password: Schimbă parola mea + change_your_password: Schimbați parola dvs. + confirm_new_password: Confirmați parola nouă + new_password: Parolă nouă + new: + forgot_your_password: Ați uitat parola? + send_me_reset_password_instructions: Trimiteți instrucțiuni de resetare a parolei + no_token: Nu puteți accesa această pagină dacă nu veniți de la un email de resetare a parolei. Dacă veniți de la un astfel de email, vă rugăm asigurați-vă că aţi utiliz at URL-ul complet furnizat către dumneavoastră. + send_instructions: Veţi primi un e-mail cu instrucţiuni pentru resetarea parolei dvs. în câteva minute. + send_paranoid_instructions: Dacă e-mailul dvs. există în baza noastră de date, veţi primi un link de recuperare a parolei pe adresa de e-mail. + updated: Parola dvs. a fost schimbată cu succes. Sunteţi autentificat. + updated_not_active: Parola dvs. a fost schimbată cu succes. + registrations: + destroyed: Adio! Contul dvs. a fost anulat cu succes. Sperăm să vă vedem din nou în curând. + edit: + are_you_sure: Sunteți sigur? + cancel_my_account: Anulează contul + currently_waiting_confirmation_for_email: 'Se asteaptă confirmare pentru: %{email}' + leave_blank_if_you_don_t_want_to_change_it: lăsați gol dacă nu doriți să schimbați + title: Editează %{resource} + unhappy: Nefericit + update: Actualizați + we_need_your_current_password_to_confirm_your_changes: avem nevoie de parola curentă pentru a confirma schimbările + new: + sign_up: Înregistrare + signed_up: Bine ai venit! V-aţi înscris cu succes. + signed_up_but_inactive: V-aţi înscris cu succes. Cu toate acestea, nu am putut să vă autentificăm, deoarece contul dvs. nu este încă activată. + signed_up_but_locked: V-aţi înscris cu succes. Cu toate acestea, nu am putut să vă autentificăm, deoarece contul dvs. este blocat. + signed_up_but_unconfirmed: Un mesaj cu un link de confirmare a fost trimis la adresa dvs. de e-mail. Vă rugăm sa deschideți link-ul pentru a activa contul. + update_needs_confirmation: Aţi actualizat contul dvs. de succes, dar avem nevoie să verificăm adresa dvs. de e-mail. Vă rugăm să verificați adresa de email şi faceţi clic pe link-ul de confirmă pentru a finaliza confirmarea adresei dvs. de e-mail. + updated: Aţi actualizat contul dvs. cu succes. + updated_but_not_signed_in: + sessions: + already_signed_out: Deautentificarea s-a efectuat cu success. + new: + sign_in: Autentificare + signed_in: Autentificat cu succes. + signed_out: Deautentificarea s-a efectuat cu success. + shared: + links: + back: Înapoi + didn_t_receive_confirmation_instructions: Nu ați primit instrucțiuni de confirmare? + didn_t_receive_unlock_instructions: Nu ați primit instrucțiuni pentru deblocare? + forgot_your_password: Ați uitat parola? + sign_in: Autentificare + sign_in_with_provider: Autentificat cu %{provider} + sign_up: Înregistrare + minimum_password_length: + few: "(minim %{count} caractere)" + one: "(minim %{count} caracter)" + other: "(minim %{count} caractere)" + unlocks: + new: + resend_unlock_instructions: Retrimite instrucțiuni pentru deblocare + send_instructions: Veţi primi un e-mail cu instrucţiuni despre cum să deblocați contul dvs. în câteva minute. + send_paranoid_instructions: În cazul în care contul dvs. există, veţi primi un e-mail cu instrucţiuni despre cum să-l deblocați în câteva minute. + unlocked: Contul dvs. a fost deblocat cu succes. Vă rugăm autentificați pentru a continua. + errors: + messages: + already_confirmed: a fost deja confirmat, vă rugăm să încercaţi să vă autentificați + confirmation_period_expired: trebuie să fie confirmat în %{period}, vă rugăm să solicitaţi unul nou + expired: a expirat, vă rugăm să solicitaţi unul nou + not_found: nu există + not_locked: nu este blocat + not_saved: + few: "%{count} erori nu au permis %{resource} să fie salvat:" + one: '1 eroare nu a permis %{resource} să fie salvat:' + other: "%{count} erori nu au permis %{resource} să fie salvat:" diff --git a/spec/factories/cars.rb b/spec/factories/cars.rb index cbfcc4e2..62e420d4 100644 --- a/spec/factories/cars.rb +++ b/spec/factories/cars.rb @@ -8,6 +8,7 @@ odometer { FFaker::Random.rand(1..300_000) } price { FFaker::Random.rand(1000..500_00) } description { FFaker::Lorem.characters(300) } + user end trait :honda_civic do diff --git a/spec/models/car_spec.rb b/spec/models/car_spec.rb index a3732883..7be761f1 100644 --- a/spec/models/car_spec.rb +++ b/spec/models/car_spec.rb @@ -5,6 +5,22 @@ RSpec.describe Car do let(:car) { build(:car) } + describe 'associations' do + it { is_expected.to belong_to(:user) } + end + + describe 'columns' do + it { is_expected.to have_db_column(:make) } + it { is_expected.to have_db_column(:model) } + it { is_expected.to have_db_column(:year) } + it { is_expected.to have_db_column(:odometer) } + it { is_expected.to have_db_column(:price) } + it { is_expected.to have_db_column(:description) } + it { is_expected.to have_db_column(:created_at) } + it { is_expected.to have_db_column(:updated_at) } + it { is_expected.to have_db_column(:user_id) } + end + context 'when presence validation' do it 'is valid with valid attributes' do expect(car).to be_valid @@ -215,15 +231,6 @@ end end - describe 'columns' do - it { is_expected.to have_db_column(:make) } - it { is_expected.to have_db_column(:model) } - it { is_expected.to have_db_column(:year) } - it { is_expected.to have_db_column(:odometer) } - it { is_expected.to have_db_column(:price) } - it { is_expected.to have_db_column(:description) } - end - describe 'scopes' do let!(:opel_kadett) do create(:car, :opel_kadett) diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index 8d28c3b9..2d0e7b66 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -7,6 +7,7 @@ describe 'ActiveRecord matchers' do it { is_expected.to have_many(:searches).dependent(:delete_all) } + it { is_expected.to have_many(:cars) } end describe 'User is correctly created' do diff --git a/spec/requests/cars_spec.rb b/spec/requests/cars_spec.rb index a327311b..3e0b6f09 100644 --- a/spec/requests/cars_spec.rb +++ b/spec/requests/cars_spec.rb @@ -1,8 +1,8 @@ # frozen_string_literal: true require 'rails_helper' - RSpec.describe '/cars' do + include Devise::Test::IntegrationHelpers describe 'GET /index' do it 'returns http success' do get '/cars' @@ -18,4 +18,15 @@ expect(response).to have_http_status(:success) end end + + describe 'GET /new' do + let(:user) { create(:user) } + + it 'returns http success' do + sign_in user + + get '/cars/new' + expect(response).to have_http_status(:success) + end + end end