Skip to content

Commit

Permalink
Add test for --auto-escape-percent option
Browse files Browse the repository at this point in the history
  • Loading branch information
alexandre-pod committed Aug 23, 2023
1 parent 0bd768e commit fc9cb0f
Show file tree
Hide file tree
Showing 6 changed files with 89 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
"key1" = "%1$@%% discount";
"key2" = "%d %@ %2$@";
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<plist>
<dict>
<key>plural_key</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@key@</string>
<key>key</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>other</key>
<string>%d %@ %2$@</string>
</dict>
</dict>
<key>adaptive_key</key>
<dict>
<key>NSStringVariableWidthRuleType</key>
<dict>
<key>20</key>
<string>%d %@ %2$@</string>
</dict>
</dict>
</dict>
</plist>
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
"key1" = "Réduction de %1$@%%";
"key2" = "%d %@ %2$@";
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<plist>
<dict>
<key>plural_key</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@key@</string>
<key>key</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>other</key>
<string>%d %@ %2$@</string>
</dict>
</dict>
<key>adaptive_key</key>
<dict>
<key>NSStringVariableWidthRuleType</key>
<dict>
<key>20</key>
<string>%d %@ %2$@</string>
</dict>
</dict>
</dict>
</plist>
8 changes: 8 additions & 0 deletions test/fixtures/reference_auto_escape_percent.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
,key,fr,comment fr,en,comment en
#Generic actions,,,,,
,key1,Réduction de %1$@%,,%1$@% discount,
,key2,%d %@ %2$@,,%d %@ %2$@,
#Plurals,,,,,
,plural_key##{other},%d %@ %2$@,,%d %@ %2$@,
#Adaptive,,,,,
,adaptive_key##{20},%d %@ %2$@,,%d %@ %2$@,
23 changes: 23 additions & 0 deletions test/interactors/process_export_request_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,29 @@ def teardown
assert_empty(diff.to_s, "File #{generated_file} do not match reference. Diff: \n\n#{diff}\n")
end
end

test 'it should escape percent characters' do
# Given
csv_files = %w[test/fixtures/reference_auto_escape_percent.csv]
csv_files.each { |file| assert(File.exist?(file), "File does not exists #{file}") }
reference_dir = "test/fixtures/exports_auto_escape_percent"
assert(File.exist?(reference_dir), "File does not exists #{reference_dir}")

# When
export_request = Requests::ExportRequest.new
export_request.csv_paths = csv_files
export_request.auto_escape_percent = true
ProcessExportRequest.new.call(export_request: export_request)

# Then
ios_files(files: ["Localizable.strings", "Localizable.stringsdict"]).each do |file|
reference_file = "#{reference_dir}/#{file}"
generated_file = "exports/#{file}"
assert(File.exist?(generated_file), "File does not exists #{generated_file}")
diff = Diffy::Diff.new(reference_file, generated_file, :source => 'files')
assert_empty(diff.to_s, "File #{generated_file} do not match reference. Diff: \n\n#{diff}\n")
end
end
end
end
end

0 comments on commit fc9cb0f

Please sign in to comment.