Skip to content

Commit 68c8be4

Browse files
Snipxyulian-gaponenko
authored andcommitted
Use "non-production" as human-readable name in producer line
Autoported commit. Original commit hash: [8f2bf7a19]
1 parent 770bd1d commit 68c8be4

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

itext.tests/itext.commons.tests/itext/commons/actions/producer/UsedProductsPlaceholderPopulatorTest.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,15 @@ public virtual void ComplexFormatTest() {
116116
, result);
117117
}
118118

119+
[NUnit.Framework.Test]
120+
public virtual void HumanReadableNormalizationTest() {
121+
ProductData productData = new ProductData("public-name", "name", "1.0.0", 2020, 2021);
122+
ConfirmedEventWrapper @event = new ConfirmedEventWrapper(new ITextTestEvent(new SequenceId(), productData,
123+
null, "testing"), "nonproduction", "iText product");
124+
String result = populator.Populate(JavaUtil.ArraysAsList(@event), "'module:'P #V (T)");
125+
NUnit.Framework.Assert.AreEqual("module:public-name #1.0.0 (non-production)", result);
126+
}
127+
119128
[NUnit.Framework.Test]
120129
public virtual void InvalidLetterFormatTest() {
121130
NUnit.Framework.Assert.That(() => {

itext/itext.commons/itext/commons/actions/producer/UsedProductsPlaceholderPopulator.cs

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,15 +138,28 @@ private String FormatLetter(char letter, UsedProductsPlaceholderPopulator.Produc
138138
}
139139

140140
private class ProductRepresentation {
141+
private static readonly IDictionary<String, String> PRODUCT_USAGE_TYPE_TO_HUMAN_READABLE_FORM;
142+
141143
private readonly String productName;
142144

143145
private readonly String productUsageType;
144146

145147
private readonly String version;
146148

149+
static ProductRepresentation() {
150+
IDictionary<String, String> productUsageTypeMapping = new Dictionary<String, String>();
151+
productUsageTypeMapping.Put("nonproduction", "non-production");
152+
PRODUCT_USAGE_TYPE_TO_HUMAN_READABLE_FORM = JavaCollectionsUtil.UnmodifiableMap(productUsageTypeMapping);
153+
}
154+
147155
public ProductRepresentation(ConfirmedEventWrapper @event) {
148156
productName = @event.GetEvent().GetProductData().GetPublicProductName();
149-
productUsageType = @event.GetProductUsageType();
157+
if (PRODUCT_USAGE_TYPE_TO_HUMAN_READABLE_FORM.ContainsKey(@event.GetProductUsageType())) {
158+
productUsageType = PRODUCT_USAGE_TYPE_TO_HUMAN_READABLE_FORM.Get(@event.GetProductUsageType());
159+
}
160+
else {
161+
productUsageType = @event.GetProductUsageType();
162+
}
150163
version = @event.GetEvent().GetProductData().GetVersion();
151164
}
152165

0 commit comments

Comments
 (0)