1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-09 12:02:21 +02:00
Beef/IDE/Tests/Test1/scripts/HotSwap_Virtual.txt

64 lines
1.3 KiB
Text
Raw Permalink Normal View History

2019-08-23 11:56:54 -07:00
# Tests:
# Virtual methods being added during hot compiles
# Breakpoints being set in both old versions of methods and new versions
ShowFile("src/HotSwap.bf")
GotoText("//HotStart")
ToggleBreakpoint()
RunWithCompiling()
# MethodA
StepOver()
AssertEvalEquals("val", "20")
# MethodB
StepOver()
AssertEvalEquals("val", "11")
# Hot compile, adding in MethodB
ToggleCommentAt("HotB_MethodB")
Compile()
# MethodB - after hot compile
StepOver()
AssertEvalEquals("val", "21")
# Modify Test1 end so we can make sure break hits both val setting
GotoText("//HotTester_Test1_EndTest")
ToggleBreakpoint()
AdjustCursor(0, 1)
CursorToLineEnd()
AdjustCursor(-1, 0)
InsertText("6")
# Hot compile, adding in MethodC, but MethodC is not called yet
ToggleCommentAt("HotA_MethodC")
ToggleCommentAt("HotB_MethodC")
Compile()
# Hot compile in usage of MethodC
ToggleCommentAt("HotTester_Test2")
Compile()
# 'Test2' - calling MethodC after hot compile
StepInto()
StepOver()
AssertEvalEquals("val", "22")
# Continue to HotTester_Test1_EndTest
Continue
StepOver
AssertEvalEquals("val", "99")
# Continue to new HotTester_Test1_EndTest
Continue()
Continue()
StepOver()
AssertEvalEquals("val", "996")
# Test previously-unused MethodE
ToggleCommentAt("HotTester_Test3")
Compile()
StepInto()
StepOver()
AssertEvalEquals("val", "14")