Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/twine.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/twine/formatters/android.rb6
-rw-r--r--test/test_formatters.rb4
-rw-r--r--test/test_placeholders.rb8
3 files changed, 13 insertions, 5 deletions
diff --git a/lib/twine/formatters/android.rb b/lib/twine/formatters/android.rb
index 3575505..7996304 100644
--- a/lib/twine/formatters/android.rb
+++ b/lib/twine/formatters/android.rb
@@ -116,6 +116,9 @@ module Twine
def format_value(value)
value = value.dup
+ # convert placeholders (e.g. %@ -> %s)
+ value = convert_placeholders_from_twine_to_android(value)
+
# capture xliff tags and replace them with a placeholder
xliff_tags = []
value.gsub! /<xliff:g.+?<\/xliff:g>/ do
@@ -133,9 +136,6 @@ module Twine
value.sub! 'TWINE_XLIFF_TAG_PLACEHOLDER', xliff_tag
end
- # convert placeholders (e.g. %@ -> %s)
- value = convert_placeholders_from_twine_to_android(value)
-
# replace beginning and end spaces with \u0020. Otherwise Android strips them.
value.gsub(/\A *| *\z/) { |spaces| '\u0020' * spaces.length }
end
diff --git a/test/test_formatters.rb b/test/test_formatters.rb
index b25662a..e3700bc 100644
--- a/test/test_formatters.rb
+++ b/test/test_formatters.rb
@@ -122,6 +122,10 @@ class TestAndroidFormatter < FormatterTest
assert_equal "value\\u0020", @formatter.format_value('value ')
end
+ def test_format_value_string_placeholder
+ assert_equal "The file %s could not be found.", @formatter.format_value("The file %@ could not be found.")
+ end
+
def test_format_value_escaping
@escape_test_values.each do |input, expected|
assert_equal expected, @formatter.format_value(input)
diff --git a/test/test_placeholders.rb b/test/test_placeholders.rb
index 55d0f02..bef5afc 100644
--- a/test/test_placeholders.rb
+++ b/test/test_placeholders.rb
@@ -23,9 +23,13 @@ class PlaceholderTest < TwineTest
Twine::Placeholders.convert_placeholders_from_twine_to_android(value)
end
- def test_replaces_string_placeholder
+ def test_replaces_simple_string_placeholder
+ assert_equal "some '%s' value", to_android("some '%@' value")
+ end
+
+ def test_replaces_complicated_string_placeholder
placeholder = placeholder('@')
- expected = placeholder
+ expected = placeholder.dup
expected[-1] = 's'
assert_equal "some #{expected} value", to_android("some #{placeholder} value")
end