Skip to content

[TS] Bug with add operator #310

Open
@CaelmBleidd

Description

@CaelmBleidd

Sometimes there is a bug with bool + ref sorts inside of the add operator, 6% of tests maybe.

The issue is that this construction is prohibites, so current implementation is not correct. We need to fix it.

Failed run:

[INFO] TestRunnerKt - 5 executions were found:
	TsTest(method=Add::addUnknownValues(a: unknown, b: unknown): number, before=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsUndefined, TsDouble(value=0.0)], globals={}), after=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsUndefined, TsDouble(value=0.0)], globals={}), returnValue=TsDouble(value=NaN), trace=[])
	TsTest(method=Add::addUnknownValues(a: unknown, b: unknown): number, before=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsBoolean(value=true), TsNull], globals={}), after=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsBoolean(value=true), TsNull], globals={}), returnValue=TsDouble(value=NaN), trace=[])
	TsTest(method=Add::addUnknownValues(a: unknown, b: unknown): number, before=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsNull, TsDouble(value=7.0)], globals={}), after=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsNull, TsDouble(value=7.0)], globals={}), returnValue=TsDouble(value=7.0), trace=[])
	TsTest(method=Add::addUnknownValues(a: unknown, b: unknown): number, before=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsNull, TsNull], globals={}), after=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsNull, TsNull], globals={}), returnValue=TsDouble(value=0.0), trace=[])
	TsTest(method=Add::addUnknownValues(a: unknown, b: unknown): number, before=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsNull, TsBoolean(value=false)], globals={}), after=TsParametersState(thisInstance=TsClass(name=Add, properties={}), parameters=[TsNull, TsBoolean(value=false)], globals={}), returnValue=TsDouble(value=42.0), trace=[])
Extracted values:
	[TsUndefined, TsDouble(value=0.0), TsDouble(value=NaN)]
	[TsBoolean(value=true), TsNull, TsDouble(value=NaN)]
	[TsNull, TsDouble(value=7.0), TsDouble(value=7.0)]
	[TsNull, TsNull, TsDouble(value=0.0)]
	[TsNull, TsBoolean(value=false), TsDouble(value=42.0)]

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions