This commit is contained in:
2018-02-11 23:55:18 +03:00
parent f7eb6b6d7c
commit 411ee0a981
19 changed files with 2403 additions and 3 deletions

73
Tests/TesterMain.pas Normal file
View File

@@ -0,0 +1,73 @@
unit TesterMain;
interface
uses
DUnitX.TestFramework,Fasm4Delphi,SysUtils;
type
[TestFixture]
TMyTestObject = class(TObject)
public
[Setup]
procedure Setup;
[TearDown]
procedure TearDown;
[Test]
procedure Test1;
[Test]
procedure Test2;
[Test]
procedure Test3;
[Test]
procedure Test4;
end;
const
CompliterMemSize=$10000;
var
CompliterMem:PFASM_STATE;
implementation
procedure TMyTestObject.Setup;
begin
end;
procedure TMyTestObject.TearDown;
begin
end;
procedure TMyTestObject.Test1;
begin
if fasm_AssembleFile('..\..\Test1.ASM',CompliterMem,CompliterMemSize)<>FASM_OK then
raise Exception.Create('Condition: '+CompliterMem^.condition.ToString+sLineBreak+
'Error Code: '+CompliterMem^.error_code.ToString+sLineBreak);
end;
procedure TMyTestObject.Test2;
begin
if fasm_Assemble('add eax,0',CompliterMem,CompliterMemSize)<>FASM_OK then
raise Exception.Create('Condition: '+CompliterMem^.condition.ToString+sLineBreak+
'Error Code: '+CompliterMem^.error_code.ToString+sLineBreak);
end;
procedure TMyTestObject.Test3;
begin
if fasm_AssembleFile('..\..\..\FasmDll\FASM.ASH',CompliterMem,CompliterMemSize)=FASM_OK then
raise Exception.Create('FASM is compiling something that it is can not compile at all.');
end;
procedure TMyTestObject.Test4;
begin
if fasm_Assemble('call -100',CompliterMem,CompliterMemSize)<>FASM_OK then
raise Exception.Create('Condition: '+CompliterMem^.condition.ToString+sLineBreak+
'Error Code: '+CompliterMem^.error_code.ToString+sLineBreak);
end;
initialization
TDUnitX.RegisterTestFixture(TMyTestObject);
LoadFASM('..\..\..\FasmDll\FASM.DLL');
GetMem(CompliterMem,CompliterMemSize);
end.