require 'spec_helper_acceptance'
-
require 'beaker/i18n_helper'
PUPPETLABS_GPG_KEY_LONG_ID = '7F438280EF8D349F'.freeze
PUPPETLABS_LONG_FINGERPRINT = '123456781274D2C8A956789A456789A456789A9A'.freeze
id_doesnt_match_fingerprint_pp = <<-MANIFEST
- apt_key { '#{PUPPETLABS_LONG_FINGERPRINT}':
- ensure => 'present',
- content => '123456781274D2C8A956789A456789A456789A9B',
- }
- MANIFEST
+ apt_key { '#{PUPPETLABS_LONG_FINGERPRINT}':
+ ensure => 'present',
+ content => '123456781274D2C8A956789A456789A456789A9B',
+ }
+MANIFEST
location_not_specified_fail_pp = <<-MANIFEST
- apt::source { 'puppetlabs':
- ensure => 'present',
- repos => 'main',
- key => {
- id => '6F6B15509CF8E59E6E469F327F438280EF8D349F',
- server => 'hkps.pool.sks-keyservers.net',
- },
- }
- MANIFEST
+ apt::source { 'puppetlabs':
+ ensure => 'present',
+ repos => 'main',
+ key => {
+ id => '6F6B15509CF8E59E6E469F327F438280EF8D349F',
+ server => 'hkps.pool.sks-keyservers.net',
+ },
+ }
+MANIFEST
+
+invalid_title_pp = <<-MANIFEST
+ apt::setting { 'test':
+ ensure => 'present',
+ content => 'test'
+ }
+MANIFEST
- no_content_param = <<-MANIFEST
- apt_key { '#{123456781274D2C8A956789A456789A456789A9A}':
- ensure => 'present',
- }
- MANIFEST
+no_content_param_pp = <<-MANIFEST
+ apt::conf { 'test':
+ ensure => 'present',
+ }
+MANIFEST
describe 'localization', if: (fact('osfamily') == 'Debian' || fact('osfamily') == 'RedHat') && (Gem::Version.new(puppet_version) >= Gem::Version.new('4.10.5')) do
before :all do
end
describe 'ruby translations' do
- it 'fails with interpolated string' do
+ it 'translates an interpolated string' do
apply_manifest(id_doesnt_match_fingerprint_pp, expect_failures: true) do |r|
- expect(r.stderr).to match(%r{を設定できませんでした: マニフェスト123456781274D2C8A956789A456789A456789A9Aに含まれるidと、content/sourceのフィンガープリントが一致しません。idに間違いがないか、content/sourceが正当であるかを確認してください})
+ expect(r.stderr).to match(%r{content/sourceが正当であるかを確認してください})
end
end
- it 'fails with simple string' do
+ it 'translates a simple string' do
apply_manifest(location_not_specified_fail_pp, expect_failures: true) do |r|
- expect(r.stderr).to match(%r{の検証中にエラーが生じました。Evaluation Error: a Function Callの検証中にエラーが生じました。場所を指定せずにソースエントリを作成することはできません})
+ expect(r.stderr).to match(%r{場所を指定せずにソースエントリを作成することはできません})
end
end
end
describe 'puppet translations' do
- it 'fails with interpolated string' do
- apply_manifest(no_content_param, expect_failures: true) do |r|
- expect(r.stderr).to match(%r{contentパラメータを渡す必要があります})
+ it 'translates a concatenated string' do
+ apply_manifest(invalid_title_pp, expect_failures: true) do |r|
+ expect(r.stderr).to match(%r{apt::settingのリソース名/タイトルの先頭は、'conf-'、'pref-'、'list-'にする必要があります})
end
end
- it 'fails with simple string' do
- apply_manifest(no_content_param, expect_failures: true) do |r|
- expect(r.stderr).to match(%r{need a test})
+ it 'translates a simple string' do
+ apply_manifest(no_content_param_pp, expect_failures: true) do |r|
+ expect(r.stderr).to match(%r{contentパラメータを渡す必要があります})
end
end
end