Skip to content

Commit 8e92e20

Browse files
committed
Fixed array casts
1 parent 39132b6 commit 8e92e20

File tree

3 files changed

+9
-6
lines changed

3 files changed

+9
-6
lines changed

Diff for: utbot-framework/src/main/java/org/utbot/engine/overrides/collections/Collection.java

+3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package org.utbot.engine.overrides.collections;
22

33
import org.utbot.api.annotation.UtClassMock;
4+
import org.utbot.api.mock.UtMock;
45
import org.utbot.engine.overrides.stream.UtStream;
56

67
import java.util.stream.Stream;
@@ -11,6 +12,8 @@ public interface Collection<E> extends java.util.Collection<E> {
1112
@Override
1213
default Stream<E> stream() {
1314
Object[] data = toArray();
15+
UtMock.disableClassCastExceptionCheck(data);
16+
1417
int size = data.length;
1518

1619
return new UtStream<>((E[]) data, size);

Diff for: utbot-framework/src/main/java/org/utbot/engine/overrides/stream/Stream.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@
1313
public interface Stream<E> extends BaseStream<E, Stream<E>> {
1414
@SuppressWarnings("unchecked")
1515
static <E> java.util.stream.Stream<E> of(E element) {
16-
Object[] data = new Object[1];
16+
E[] data = (E[]) new Object[1];
1717
data[0] = element;
1818

19-
return new UtStream<>((E[]) data, 1);
19+
return new UtStream<>(data, 1);
2020
}
2121

2222
@SuppressWarnings("unchecked")

Diff for: utbot-framework/src/main/java/org/utbot/engine/overrides/stream/UtStream.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ public Stream<E> filter(Predicate<? super E> predicate) {
117117
preconditionCheckWithClosingStream();
118118

119119
int size = elementData.end;
120-
Object[] filtered = new Object[size];
120+
E[] filtered = (E[]) new Object[size];
121121
int j = 0;
122122
for (int i = 0; i < size; i++) {
123123
E element = elementData.get(i);
@@ -126,7 +126,7 @@ public Stream<E> filter(Predicate<? super E> predicate) {
126126
}
127127
}
128128

129-
return new UtStream<>((E[]) filtered, j);
129+
return new UtStream<>(filtered, j);
130130
}
131131

132132
@SuppressWarnings("unchecked")
@@ -230,7 +230,7 @@ public Stream<E> distinct() {
230230
preconditionCheckWithClosingStream();
231231

232232
int size = elementData.end;
233-
Object[] distinctElements = new Object[size];
233+
E[] distinctElements = (E[]) new Object[size];
234234
int distinctSize = 0;
235235
for (int i = 0; i < size; i++) {
236236
E element = elementData.get(i);
@@ -259,7 +259,7 @@ public Stream<E> distinct() {
259259
}
260260
}
261261

262-
return new UtStream<>((E[]) distinctElements, distinctSize);
262+
return new UtStream<>(distinctElements, distinctSize);
263263
}
264264

265265
// TODO choose the best sorting https://github.com/UnitTestBot/UTBotJava/issues/188

0 commit comments

Comments
 (0)