autoprefixer-rails (10.4.16.0)
execjs (~> 2)
aws-eventstream (1.3.0)
- aws-partitions (1.859.0)
- aws-sdk-core (3.188.0)
- aws-eventstream (~> 1, >= 1.0.2)
+ aws-partitions (1.863.0)
+ aws-sdk-core (3.190.0)
+ aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.651.0)
- aws-sigv4 (~> 1.5)
+ aws-sigv4 (~> 1.8)
jmespath (~> 1, >= 1.6.1)
- aws-sdk-kms (1.73.0)
+ aws-sdk-kms (1.74.0)
aws-sdk-core (~> 3, >= 3.188.0)
aws-sigv4 (~> 1.1)
- aws-sdk-s3 (1.140.0)
- aws-sdk-core (~> 3, >= 3.188.0)
+ aws-sdk-s3 (1.141.0)
+ aws-sdk-core (~> 3, >= 3.189.0)
aws-sdk-kms (~> 1)
- aws-sigv4 (~> 1.6)
- aws-sigv4 (1.7.0)
+ aws-sigv4 (~> 1.8)
+ aws-sigv4 (1.8.0)
aws-eventstream (~> 1, >= 1.0.2)
base64 (0.2.0)
better_errors (2.10.1)
bootstrap_form (5.4.0)
actionpack (>= 6.1)
activemodel (>= 6.1)
- brakeman (6.0.1)
+ brakeman (6.1.0)
brotli (0.4.0)
browser (5.3.1)
builder (3.2.4)
activerecord (>= 3.0, < 8.0)
delayed_job (>= 3.0, < 5)
docile (1.4.0)
- doorkeeper (5.6.7)
+ doorkeeper (5.6.8)
railties (>= 5)
doorkeeper-i18n (5.2.7)
doorkeeper (>= 5.2)
image_size (3.3.0)
in_threads (1.6.0)
io-console (0.6.0)
- irb (1.9.1)
+ irb (1.10.1)
rdoc
reline (>= 0.3.8)
jbuilder (2.11.5)
rails-dom-testing (>= 1, < 3)
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
- json (2.6.3)
+ json (2.7.1)
jwt (2.7.1)
kgio (2.11.4)
kramdown (2.4.0)
multi_json (1.15.0)
multi_xml (0.6.0)
mutex_m (0.2.0)
- net-imap (0.4.6)
+ net-imap (0.4.7)
date
net-protocol
net-pop (0.1.2)
timeout
net-smtp (0.4.0)
net-protocol
- nio4r (2.6.1)
+ nio4r (2.7.0)
nokogiri (1.15.5)
mini_portile2 (~> 2.8.2)
racc (~> 1.4)
ruby-openid (>= 2.1.8)
rack-protection (3.1.0)
rack (~> 2.2, >= 2.2.4)
- rack-session (1.0.1)
+ rack-session (1.0.2)
rack (< 3)
rack-test (2.1.0)
rack (>= 1.3)
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
ffi (~> 1.0)
- rdoc (6.6.0)
+ rdoc (6.6.1)
psych (>= 4.0.0)
- regexp_parser (2.8.2)
+ regexp_parser (2.8.3)
reline (0.4.1)
io-console (~> 0.5)
request_store (1.5.1)
rouge (4.2.0)
rtlcss (0.2.1)
mini_racer (>= 0.6.3)
- rubocop (1.57.2)
+ rubocop (1.58.0)
json (~> 2.3)
language_server-protocol (>= 3.17.0)
parallel (~> 1.10)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
- rubocop-ast (>= 1.28.1, < 2.0)
+ rubocop-ast (>= 1.30.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.30.0)
# note that this may not be a hard limit - due to timing changes and
# concurrency it is possible that some changesets may be slightly
# longer than strictly allowed or have slightly more changes in them.
- ((closed_at > Time.now.utc) && (num_changes <= MAX_ELEMENTS))
+ (closed_at > Time.now.utc) && (num_changes <= MAX_ELEMENTS)
end
def set_closed_time_now
module OpenStreetMap
class Cors < Rack::Cors
def call(env)
- status, headers, body = super env
+ status, headers, body = super(env)
headers["Cache-Control"] = "no-cache" if headers["Access-Control-Allow-Origin"]
[status, headers, body]
end
def render(options = {})
text = options.delete(:text)
if text
- super options.merge(:plain => text)
+ super(options.merge(:plain => text))
elsif options.delete(:nothing)
status = options.delete(:status) || :ok
head status, options
else
- super options
+ super(options)
end
end
end
end
- super controller
+ super(controller)
end
end
end
embankment: Ανάχωμα
flagpole: Ιστός σημαίας
gasometer: Αεριόμετρο
- groyne: ΦÏ\81άγμα
+ groyne: Î\9aÏ\85μαÏ\84οθÏ\81αÏ\8dÏ\83Ï\84ηÏ\82
kiln: Καμίνι
lighthouse: Φάρος
manhole: Ανθρωποθυρίδα
remember: Jäta mind meelde
lost password link: Kas unustasid parooli?
login_button: Logi sisse
- register now: 'Registreeru:'
+ register now: Registreeru nüüd
with external: 'Teise võimalusena võid sisse logida kolmanda osapoole kaudu:'
no account: Sa ei ole veel registreerinud kasutajaks?
auth failure: Kahjuks ei õnnestu nende andmetega sisse logida.
Meie kaastöölised on tuhanded üksikisikud. Samuti oleme kaasanud
vabalt litsentseeritud andmeid riiklikest kaardistusteenistustest
ja muudest allikatest, sealhulgas:
- contributors_at_credit_html: '%{austria}: Sisaldab andmeid %{stadt_wien_link}
- (%{cc_by_link} tingimustel), %{land_vorarlberg_link} ja Tirooli liidumaast
- (%{cc_by_at_with_amendments_link}).'
- contributors_at_stadt_wien: Viini linnast
- contributors_at_land_vorarlberg: Vorarlbergi liidumaast
+ contributors_at_credit_html: '%{austria}: Sisaldab %{stadt_wien_link} (%{cc_by_link}
+ tingimustel), %{land_vorarlberg_link} ja Tirooli liidumaa andmeid (%{cc_by_at_with_amendments_link}).'
+ contributors_at_stadt_wien: Viini linna
+ contributors_at_land_vorarlberg: Vorarlbergi liidumaa
contributors_at_cc_by_at_with_amendments: CC BY AT tingimustel koos õiendustega
contributors_au_credit_html: '%{australia}: Sisaldab halduspiire või on tuletatud
halduspiiridest, mille allikas on © %{geoscape_australia_link} ja mille
contributors_nz_credit_html: '%{new_zealand}: Sisaldab teenuse %{linz_data_service_link}
andmeid, mis on kasutatavad litsentsi %{cc_by_link} tingimustel.'
contributors_nz_new_zealand: Uus-Meremaa
+ contributors_rs_credit_html: |-
+ %{serbia}: Sisaldab andmeid, mis on pärit %{rgz_link} ja %{open_data_portal}
+ (Serbia avalik teave), 2018.
+ contributors_rs_rgz: Serbia geodeesiaametist
+ contributors_rs_open_data_portal: riigi avaandmete portaalist
contributors_si_credit_html: '%{slovenia}: Sisaldab %{gu_link} ning %{mkgp_link}
andmeid (Sloveenia avalik informatsioon).'
contributors_si_slovenia: Sloveenia
revoke:
flash: Oled tühistanud rakenduse %{application} loa.
scopes:
+ openid: Sisse logida kasutades OpenStreetMapi
read_prefs: Lugeda kasutajaeelistusi
write_prefs: Muuta kasutajaeelistusi
write_diary: Luua päeviku sissekandeid, kommenteerida ja lisada sõpru
automated_edits: Modifications automatisées
automated_edits_url: https://wiki.openstreetmap.org/wiki/FR:Code_de_conduite_des_modifications_automatis%C3%A9es
start_mapping: Commencer à cartographier
+ continue_authorization: Continuer l'autorisation
add_a_note:
title: Pas le temps d’effectuer les modifications ? Ajoutez une note !
para_1: Si vous voulez juste une petite correction et n’avez pas le temps
imports: importacións
automated_edits: edicións automáticas
start_mapping: Comezar a cartografar
+ continue_authorization: Continuar coa autorización
add_a_note:
title: Non tes tempo para editar? Engade unha nota!
para_1: Se soamente queres corrixir unha pequena cousa e non tes tempo de
imports: מחזורי יבוא
automated_edits: עריכות אוטומטית
start_mapping: להתחיל למפות
+ continue_authorization: המשך האישור
add_a_note:
title: אין לך זמן לערוך? אפשר להוסיף הערה!
para_1: אם רק רצית לתקן משהו קטן ואין לך זמן להירשם וללמוד איך לערוך, קל להוסיף
map_data_zoom_in_tooltip: יש לקרב את המפה כדי לראות נתוני מפה
queryfeature_tooltip: שאילתת ישויות
queryfeature_disabled_tooltip: תקריב כדי להריץ שאילתת ישויות
+ embed_html_disabled: הטבעת HTML אינה זמינה בשכבת המפה הזאת
changesets:
show:
comment: להגיב
prompt: Seleccionatz un fichier
submit:
diary_comment:
- create: Sauvar
+ create: Comentari
diary_entry:
create: Publicar
update: Actualizar
diary_entry:
user: Utilizaire
title: Subjècte
+ body: Còrs
latitude: Latitud
longitude: Longitud
language_code: Lenga
openid: OpenID
google: Google
facebook: Facebook
+ microsoft: Microsoft
github: GitHub
wikipedia: Wikipèdia
api:
reopened_at_by_html: Reactivat fa %{when} per %{user}
rss:
title: Nòtas d'OpenStreetMap
+ description_all: Una lista de nòtas denonciadas, comentadas o barradas
description_area: Una lista de nòtas, reportadas, comentadas o serradas dins
vòstra zòna [(%{min_lat}|%{min_lon}) -- (%{max_lat}|%{max_lon})]
description_item: Un fiu rss per la nòta %{id}
retain_changeset_discussions: Lei discussions sus lei cambiaments, se n'i
a, se conservaràn.
retain_email: L'adreiça e-mail sarà conservada.
+ recent_editing_html: Coma avètz recentament modificat vòstre compte se pòt
+ pas suprimir per ara. La supression serà possibla en %{time}.
confirm_delete: Siatz segur ?
cancel: Anullar
accounts:
hardware: Quicalhariá
health_food: Botiga d'alimentacion naturala
hearing_aids: Aparelhs auditius
- herbalist: Erboristeria
+ herbalist: Erbolariá
hifi: Botiga Hi-Fi
houseware: Venda d’articles per l'ostau
ice_cream: Glacier
openid: OpenID
google: Google
facebook: Facebook
+ microsoft: Microsoft
github: GitHub
wikipedia: Wikipedija
api:
opened_at_html: Ustvarjeno %{when}
opened_at_by_html: Ustvaril_a %{user} %{when}
commented_at_html: Posodobljeno %{when}
- commented_at_by_html: Posodobil_a %{user} %{when}
+ commented_at_by_html: Posodobil/a %{user} %{when}
closed_at_html: Razrešeno %{when}
closed_at_by_html: Razrešil_a %{user} %{when}
reopened_at_html: Znova aktivirano %{when}
retain_changeset_discussions: Ohranjeni bodo vaši pogovori o naborih sprememb,
če obstajajo.
retain_email: Ohranjen bo vaš e-poštni naslov.
+ recent_editing_html: Pred kratkim ste urejali, zato vašega računa trenutno
+ ni mogoče izbrisati. Brisanje bo mogoče čez %{time}.
confirm_delete: Ali ste prepričani?
cancel: Prekliči
accounts:
index:
title: Sklopi sprememb
title_user: Sklopi sprememb od %{user}
- title_user_link_html: Sklopi sprememb uporabnika_ce %{user_link}
+ title_user_link_html: Sklopi sprememb uporabnika/ce %{user_link}
title_friend: Množice sprememb mojih prijateljev
title_nearby: Sklopi sprememb bližnjih uporabnikov
empty: Ni najdenih množic sprememb.
changeset_comments:
comment:
comment: 'Nov komentar o naboru sprememb #%{changeset_id} uporabnika %{author}'
- commented_at_by_html: Posodobil_a %{user} %{when}
+ commented_at_by_html: Posodobil/a %{user} %{when}
comments:
comment: 'Nov komentar o naboru sprememb #%{changeset_id} uporabnika %{author}'
index:
no_reports: Ni prijav
report_created_at: Prvič prijavljeno %{datetime}
last_resolved_at: Zadnjič razrešeno %{datetime}
- last_updated_at: Zadnjič %{datetime} posodobil_a %{displayname}
+ last_updated_at: Zadnjič %{datetime} posodobil/a %{displayname}
resolve: Razreši
ignore: Prezri
reopen: Znova odpri
imports_url: https://wiki.openstreetmap.org/wiki/SL:Import/Guidelines
automated_edits: Avtomatizirana urejanja
start_mapping: Začnite kartirati
+ continue_authorization: Nadaljuj avtorizacijo
add_a_note:
title: Nimate časa za urejanje? Dodajte opombo!
para_1: Če si želite popraviti kakšno majhno napako in nimate časa za prijavo
role:
administrator: Ta uporabnik je administrator
moderator: Ta uporabnik je moderator
+ importer: Ta uporabnik je uvoznik
grant:
administrator: Podeli administratorski dostop
moderator: Podeli moderatorski dostop
+ importer: Podeli dostop uvoznika
revoke:
administrator: Odvzemi administratorski dostop
moderator: Odvzemi moderatorski dostop
+ importer: Odvzemi dostop uvoznika
block_history: Aktivna blokiranja
moderator_history: Izvedena blokiranja
comments: Komentarji
blocks_on:
title: Blokiranja uporabnika %{name}
heading_html: Seznam blokiranj uporabnika %{name}
- empty: Uporabnik_ca %{name} še ni bil_a blokiran_a.
+ empty: Uporabnik/ca %{name} še ni bil/a blokiran/a.
blocks_by:
- title: Dana blokiranja uporabnika_ce %{name}
+ title: Dana blokiranja uporabnika/ce %{name}
heading_html: Seznam izvedenih blokiranj uporabnika %{name}
- empty: Uporabnik_ca %{name} ni blokiral_a še nikogar.
+ empty: Uporabnik/ca %{name} ni blokiral/a še nikogar.
show:
title: '%{block_by} je blokiral uporabnika %{block_on}'
heading_html: '%{block_by} je blokiral uporabnika %{block_on}'
map_data_zoom_in_tooltip: Približajte za ogled podatkov zemljevida
queryfeature_tooltip: Preveri značilnosti
queryfeature_disabled_tooltip: Približajte za preverjanje značilnosti
+ embed_html_disabled: Za ta sloj zemljevida vdelava HTML ni na voljo
changesets:
show:
comment: Komentiraj
imports: Aktarımlar
automated_edits: Otomatik Düzenlemeler
start_mapping: Haritacılığa Başla
+ continue_authorization: Yetkilendirmeye Devam Et
add_a_note:
title: Düzenlemek için vaktin yok mu? O zaman bir not ekle!
para_1: |-
role:
administrator: Bu kullanıcı, bir yöneticidir.
moderator: Bu kullanıcı, bir moderatördür.
+ importer: Bu kullanıcı bir ithalatçıdır
grant:
administrator: Yönetici erişim hakkı
moderator: Moderatör erişim izni
+ importer: İthalatçıya erişim izni ver
revoke:
administrator: Yönetici erişimini iptal etme
moderator: Moderatör erişimini iptal etme
+ importer: İthalatçı erişimini iptal et
block_history: Etkin Engellemeler
moderator_history: Verilen Engellemeler
comments: Yorumlar
imports: імпортів
automated_edits: автоматизованих змін
start_mapping: Розпочати мапити
+ continue_authorization: Продовжити авторизацію
add_a_note:
title: Немаєте часу, щоб виправити мапу? Додайте нотатку!
para_1: Якщо потрібно внести дрібне уточнення, заради якого немає потреби
notes: Нотатки
remove as friend: Вилучити зі списку друзів
add as friend: Додати до списку друзів
- mapper since: 'Ð\97аÑ\80еÑ\94Ñ\81Ñ\82Ñ\80ований:'
+ mapper since: 'Ð\9eблÑ\96ковий запиÑ\81 Ñ\81Ñ\82воÑ\80ено:'
uid: 'id учасника:'
ct status: 'Умови співпраці:'
ct undecided: Не визначились
showing:
one: Сторінка %{page} (%{first_item} з %{items})
other: Сторінка %{page} (%{first_item}-%{last_item} з %{items})
- summary_html: '%{name} заÑ\80еÑ\94Ñ\81Ñ\82Ñ\80ований з %{ip_address}, %{date}'
- summary_no_ip_html: '%{name} заÑ\80еÑ\94Ñ\81Ñ\82Ñ\80ований %{date}'
+ summary_html: '%{name} заÑ\80еÑ\94Ñ\81Ñ\82Ñ\80овано з %{ip_address}, %{date}'
+ summary_no_ip_html: '%{name} заÑ\80еÑ\94Ñ\81Ñ\82Ñ\80овано %{date}'
confirm: Підтвердити вибір учасників
hide: Сховати вибраних учасників
empty: Не знайдено учасників відповідно до критеріїв пошуку
prefix = 0
while netmask != "0.0.0.0"
- netmask = netmask << 1
+ netmask <<= 1
prefix += 1
end
# The base class for API Errors.
class APIError < RuntimeError
def initialize(message = "Generic API Error")
- super message
+ super(message)
end
def status
# Raised when access is denied.
class APIAccessDenied < APIError
def initialize
- super "Access denied"
+ super("Access denied")
end
def status
# Raised when an API object is not found.
class APINotFoundError < APIError
def initialize
- super "Object not found"
+ super("Object not found")
end
def status
# Raised when a precondition to an API action fails sanity check.
class APIPreconditionFailedError < APIError
def initialize(message = "")
- super "Precondition failed: #{message}"
+ super("Precondition failed: #{message}")
end
def status
@object = object
@object_id = object_id
- super "The #{object} with the id #{object_id} has already been deleted"
+ super("The #{object} with the id #{object_id} has already been deleted")
end
attr_reader :object, :object_id
# Raised when the user logged in isn't the same as the changeset
class APIUserChangesetMismatchError < APIError
def initialize
- super "The user doesn't own that changeset"
+ super("The user doesn't own that changeset")
end
def status
def initialize(changeset)
@changeset = changeset
- super "The changeset #{changeset.id} was closed at #{changeset.closed_at}"
+ super("The changeset #{changeset.id} was closed at #{changeset.closed_at}")
end
attr_reader :changeset
def initialize(changeset)
@changeset = changeset
- super "The changeset #{changeset.id} is not yet closed."
+ super("The changeset #{changeset.id} is not yet closed.")
end
attr_reader :changeset
def initialize(changeset)
@changeset = changeset
- super "You are already subscribed to changeset #{changeset.id}."
+ super("You are already subscribed to changeset #{changeset.id}.")
end
attr_reader :changeset
def initialize(changeset)
@changeset = changeset
- super "You are not subscribed to changeset #{changeset.id}."
+ super("You are not subscribed to changeset #{changeset.id}.")
end
attr_reader :changeset
# Raised when a change is expecting a changeset, but the changeset doesn't exist
class APIChangesetMissingError < APIError
def initialize
- super "You need to supply a changeset to be able to make a change"
+ super("You need to supply a changeset to be able to make a change")
end
def status
# the changeset ID that the diff was uploaded to.
class APIChangesetMismatchError < APIError
def initialize(provided, allowed)
- super "Changeset mismatch: Provided #{provided} but only #{allowed} is allowed"
+ super("Changeset mismatch: Provided #{provided} but only #{allowed} is allowed")
end
def status
# modify, or delete
class APIChangesetActionInvalid < APIError
def initialize(provided)
- super "Unknown action #{provided}, choices are create, modify, delete"
+ super("Unknown action #{provided}, choices are create, modify, delete")
end
def status
# they should.
class APIBadXMLError < APIError
def initialize(model, xml, message = "")
- super "Cannot parse valid #{model} from xml string #{xml}. #{message}"
+ super("Cannot parse valid #{model} from xml string #{xml}. #{message}")
end
def status
@provided = provided
@latest = latest
- super "Version mismatch: Provided #{provided}, server had: #{latest} of #{type} #{id}"
+ super("Version mismatch: Provided #{provided}, server had: #{latest} of #{type} #{id}")
end
attr_reader :provided, :latest, :id, :type
@id = id
@tag_key = tag_key
- super "Element #{type}/#{id} has duplicate tags with key #{tag_key}"
+ super("Element #{type}/#{id} has duplicate tags with key #{tag_key}")
end
attr_reader :type, :id, :tag_key
# This prevents ways from being to long and difficult to work with
class APITooManyWayNodesError < APIError
def initialize(id, provided, max)
- super "You tried to add #{provided} nodes to way #{id}, however only #{max} are allowed"
+ super("You tried to add #{provided} nodes to way #{id}, however only #{max} are allowed")
@id = id
@provided = provided
# This prevents relations from being too complex and difficult to work with
class APITooManyRelationMembersError < APIError
def initialize(id, provided, max)
- super "You tried to add #{provided} members to relation #{id}, however only #{max} are allowed"
+ super("You tried to add #{provided} members to relation #{id}, however only #{max} are allowed")
@id = id
@provided = provided
# raised when an API call is made using a method not supported on that URI
class APIBadMethodError < APIError
def initialize(supported_method)
- super "Only method #{supported_method} is supported on this URI"
+ super("Only method #{supported_method} is supported on this URI")
end
def status
# raised when an API call takes too long
class APITimeoutError < APIError
def initialize
- super "Request timed out"
+ super("Request timed out")
end
def status
# an element - only historical versions can be redacted.
class APICannotRedactError < APIError
def initialize
- super "Cannot redact current version of element, only historical versions may be redacted."
+ super("Cannot redact current version of element, only historical versions may be redacted.")
end
def status
def initialize(note)
@note = note
- super "The note #{note.id} was closed at #{note.closed_at}"
+ super("The note #{note.id} was closed at #{note.closed_at}")
end
attr_reader :note
def initialize(note)
@note = note
- super "The note #{note.id} is already open"
+ super("The note #{note.id} is already open")
end
attr_reader :note
def initialize(key)
@key = key
- super "Duplicate preferences with key #{key}"
+ super("Duplicate preferences with key #{key}")
end
attr_reader :key
# Raised when a rate limit is exceeded
class APIRateLimitExceeded < APIError
def initialize
- super "Rate limit exceeded"
+ super("Rate limit exceeded")
end
def status
end
# Construct a random token of a given length
- def self.make_token(length = 30)
- chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
- token = ""
-
- length.times do
- token += chars[(rand * chars.length).to_i].chr
- end
-
- token
+ def self.make_token(length = 24)
+ SecureRandom.urlsafe_base64(length)
end
# Return an SQL fragment to select a given area of the globe
assert_select "> entry > content > xhtml|div > xhtml|table" do
assert_select "> xhtml|tr > xhtml|td > xhtml|table" do
- changeset.tags.each do |key, _|
+ changeset.tags.each_key do |key|
assert_select "> xhtml|tr > xhtml|td", :text => /^#{key} = /
end
end
assert_equal register_email.to.first, new_email
# Check that the confirm account url is correct
- confirm_regex = Regexp.new("/user/redirect_tester/confirm\\?confirm_string=([a-zA-Z0-9]*)")
+ confirm_regex = Regexp.new("/user/redirect_tester/confirm\\?confirm_string=([a-zA-Z0-9_-]*)")
email_text_parts(register_email).each do |part|
assert_match confirm_regex, part.body.to_s
end
assert_equal register_email.to.first, new_email
# Check that the confirm account url is correct
- confirm_regex = Regexp.new("/user/redirect_tester_openid/confirm\\?confirm_string=([a-zA-Z0-9]*)")
+ confirm_regex = Regexp.new("/user/redirect_tester_openid/confirm\\?confirm_string=([a-zA-Z0-9_-]*)")
email_text_parts(register_email).each do |part|
assert_match confirm_regex, part.body.to_s
end
assert_equal register_email.to.first, new_email
# Check that the confirm account url is correct
- confirm_regex = Regexp.new("/user/redirect_tester_google/confirm\\?confirm_string=([a-zA-Z0-9]*)")
+ confirm_regex = Regexp.new("/user/redirect_tester_google/confirm\\?confirm_string=([a-zA-Z0-9_-]*)")
email_text_parts(register_email).each do |part|
assert_match confirm_regex, part.body.to_s
end
assert_equal register_email.to.first, new_email
# Check that the confirm account url is correct
- confirm_regex = Regexp.new("/user/redirect_tester_facebook/confirm\\?confirm_string=([a-zA-Z0-9]*)")
+ confirm_regex = Regexp.new("/user/redirect_tester_facebook/confirm\\?confirm_string=([a-zA-Z0-9_-]*)")
email_text_parts(register_email).each do |part|
assert_match confirm_regex, part.body.to_s
end
assert_equal register_email.to.first, new_email
# Check that the confirm account url is correct
- confirm_regex = Regexp.new("/user/redirect_tester_microsoft/confirm\\?confirm_string=([a-zA-Z0-9]*)")
+ confirm_regex = Regexp.new("/user/redirect_tester_microsoft/confirm\\?confirm_string=([a-zA-Z0-9_-]*)")
email_text_parts(register_email).each do |part|
assert_match confirm_regex, part.body.to_s
end
assert_equal register_email.to.first, new_email
# Check that the confirm account url is correct
- confirm_regex = Regexp.new("/user/redirect_tester_github/confirm\\?confirm_string=([a-zA-Z0-9]*)")
+ confirm_regex = Regexp.new("/user/redirect_tester_github/confirm\\?confirm_string=([a-zA-Z0-9_-]*)")
email_text_parts(register_email).each do |part|
assert_match confirm_regex, part.body.to_s
end
assert_equal register_email.to.first, new_email
# Check that the confirm account url is correct
- confirm_regex = Regexp.new("/user/redirect_tester_wikipedia/confirm\\?confirm_string=([a-zA-Z0-9]*)")
+ confirm_regex = Regexp.new("/user/redirect_tester_wikipedia/confirm\\?confirm_string=([a-zA-Z0-9_-]*)")
email_text_parts(register_email).each do |part|
assert_match confirm_regex, part.body.to_s
end
class I18nTest < ActiveSupport::TestCase
I18n.available_locales.each do |locale|
- define_method("test_#{locale.to_s.underscore}".to_sym) do
+ define_method(:"test_#{locale.to_s.underscore}") do
without_i18n_exceptions do
# plural_keys = plural_keys(locale)
Rails.root.glob("config/locales/*.yml").each do |filename|
lang = File.basename(filename, ".yml")
- define_method("test_#{lang}_for_raw_html".to_sym) do
+ define_method(:"test_#{lang}_for_raw_html") do
yml = YAML.load_file(filename)
assert_nothing_raised do
check_values_for_raw_html(yml)