Skip to content

Commit cdad2cf

Browse files
committed
review fix
1 parent 477d64c commit cdad2cf

2 files changed

Lines changed: 15 additions & 2 deletions

File tree

de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/jassinterpreter/providers/UnitProvider.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
import de.peeeq.wurstio.objectreader.ObjectHelper;
44
import de.peeeq.wurstio.jassinterpreter.mocks.DestructableMock;
55
import de.peeeq.wurstio.jassinterpreter.mocks.UnitMock;
6+
import de.peeeq.wurstscript.intermediatelang.ILconst;
67
import de.peeeq.wurstscript.intermediatelang.ILconstBool;
78
import de.peeeq.wurstscript.intermediatelang.ILconstInt;
9+
import de.peeeq.wurstscript.intermediatelang.ILconstNull;
810
import de.peeeq.wurstscript.intermediatelang.ILconstReal;
911
import de.peeeq.wurstscript.intermediatelang.ILconstString;
1012
import de.peeeq.wurstscript.intermediatelang.IlConstHandle;
@@ -23,9 +25,9 @@ public IlConstHandle CreateUnit(IlConstHandle owner, ILconstInt unitid, ILconstR
2325
return new IlConstHandle(NameProvider.getRandomName("unit"), new UnitMock(owner, unitid, x, y, face));
2426
}
2527

26-
public IlConstHandle GetOwningPlayer(IlConstHandle unit) {
28+
public ILconst GetOwningPlayer(IlConstHandle unit) {
2729
UnitMock unitMock = unitOrNull(unit);
28-
return unitMock == null ? null : unitMock.owner;
30+
return unitMock == null ? ILconstNull.instance() : unitMock.owner;
2931
}
3032

3133
public ILconstInt GetUnitTypeId(IlConstHandle unit) {

de.peeeq.wurstscript/src/test/java/tests/wurstscript/tests/InterpreterTests.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,17 @@ public void unitStateAbilityAndOrderNatives() {
166166
);
167167
}
168168

169+
@Test
170+
public void getOwningPlayerNullUnitReturnsWurstNull() {
171+
test().withStdLib().executeProg(true).testLua(false).lines(
172+
"package Test",
173+
"init",
174+
" if GetOwningPlayer(null) != null",
175+
" testFail(\"owning player null\")",
176+
" testSuccess()"
177+
);
178+
}
179+
169180
@Test
170181
public void destructableWidgetLifeNatives() {
171182
test().withStdLib().executeProg(true).testLua(false).lines(

0 commit comments

Comments
 (0)