Skip to content

Commit aecd860

Browse files
authored
Fixed wrong sort during resolving StringBuilder (#1628)
1 parent 08481e4 commit aecd860

File tree

3 files changed

+15
-1
lines changed

3 files changed

+15
-1
lines changed

utbot-framework-test/src/test/kotlin/org/utbot/examples/strings/StringExamplesTest.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -301,6 +301,15 @@ internal class StringExamplesTest : UtValueTestCaseChecker(
301301
)
302302
}
303303

304+
@Test
305+
fun testStringBuilderAsParameterExample() {
306+
check(
307+
StringExamples::stringBuilderAsParameterExample,
308+
eq(1),
309+
coverage = FullWithAssumptions(assumeCallsNumber = 1)
310+
)
311+
}
312+
304313
@Test
305314
fun testNullableStringBuffer() {
306315
checkWithException(

utbot-framework/src/main/kotlin/org/utbot/engine/Strings.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ sealed class UtAbstractStringBuilderWrapper(className: String) : BaseOverriddenW
220220
val arrayValuesChunkId = typeRegistry.arrayChunkId(charArrayType)
221221

222222
val valuesFieldChunkId = hierarchy.chunkIdForField(overriddenClass.type, overriddenClass.valueField)
223-
val valuesArrayAddrDescriptor = MemoryChunkDescriptor(valuesFieldChunkId, wrapper.type, charType)
223+
val valuesArrayAddrDescriptor = MemoryChunkDescriptor(valuesFieldChunkId, wrapper.type, charArrayType)
224224
val valuesArrayAddr = findArray(valuesArrayAddrDescriptor, MemoryState.CURRENT).select(wrapper.addr)
225225

226226
val valuesArrayDescriptor = MemoryChunkDescriptor(arrayValuesChunkId, charArrayType, charType)

utbot-sample/src/main/java/org/utbot/examples/strings/StringExamples.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,11 @@ public String useStringBuffer(String fst, String snd) {
209209
return buffer.toString();
210210
}
211211

212+
// This test checks StringBuilder can be correctly constructed
213+
public void stringBuilderAsParameterExample(StringBuilder sb) {
214+
UtMock.assume(sb != null);
215+
}
216+
212217
public String nullableStringBuffer(StringBuffer buffer, int i) {
213218
if (i >= 0) {
214219
buffer.append("Positive");

0 commit comments

Comments
 (0)