-
Notifications
You must be signed in to change notification settings - Fork 48
Expand file tree
/
Copy pathContentSearchElementToStringStyleTest.java
More file actions
79 lines (60 loc) · 2.93 KB
/
ContentSearchElementToStringStyleTest.java
File metadata and controls
79 lines (60 loc) · 2.93 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
// SPDX-License-Identifier: MPL-2.0
// SPDX-FileCopyrightText: 2026 Tony Germano <tony@germano.name>
package com.mirth.connect.model;
import static org.junit.Assert.assertEquals;
import java.util.List;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.junit.Test;
import com.mirth.connect.donkey.model.message.ContentType;
public class ContentSearchElementToStringStyleTest {
@Test
public void testContentCodeFormatting() {
// Test standard known codes
assertContentCodeFormat(ContentType.RAW.getContentTypeCode(), "1(Raw)");
assertContentCodeFormat(ContentType.PROCESSED_RAW.getContentTypeCode(), "2(Processed Raw)");
assertContentCodeFormat(ContentType.TRANSFORMED.getContentTypeCode(), "3(Transformed)");
assertContentCodeFormat(ContentType.PROCESSING_ERROR.getContentTypeCode(), "12(Processing Error)");
}
@Test
public void testUnknownContentCode() {
// Test an integer that doesn't map to a ContentType
var unknownCode = 999;
// Cast to Object to ensure we hit the appendDetail(StringBuffer, String, Object) method
var result = new ToStringBuilder(new Object(), ContentSearchElementToStringStyle.instance())
.append("contentCode", (Object) unknownCode)
.toString();
assertEquals("Object[contentCode=999(UNKNOWN)]", result);
}
@Test
public void testOtherIntegerFields() {
// Ensure that integer fields NOT named "contentCode" are treated normally
var result = new ToStringBuilder(new Object(), ContentSearchElementToStringStyle.instance())
.append("someOtherId", (Object) 1)
.toString();
assertEquals("Object[someOtherId=1]", result);
}
@Test
public void testContentCodeNonInteger() {
// Covers the "else" branch in appendDetail where fieldname is "contentCode"
// but value is NOT an instanceof Integer.
var result = new ToStringBuilder(new Object(), ContentSearchElementToStringStyle.instance())
.append("contentCode", "NotAnInteger")
.toString();
assertEquals("Object[contentCode=\"NotAnInteger\"]", result);
}
@Test
public void testCollectionFormatting() {
var list = List.of("A", "B");
var result = new ToStringBuilder(new Object(), ContentSearchElementToStringStyle.instance())
.append("list", list)
.toString();
assertEquals("Object[list=[\"A\", \"B\"]]", result);
}
private void assertContentCodeFormat(int code, String expectedValue) {
// Cast to Object to ensure we hit the appendDetail(StringBuffer, String, Object) method
var result = new ToStringBuilder(new Object(), ContentSearchElementToStringStyle.instance())
.append("contentCode", (Object) code)
.toString();
assertEquals("Object[contentCode=" + expectedValue + "]", result);
}
}