1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- unit tcinifile;
- {$mode objfpc}{$H+}
- interface
- uses
- Classes, SysUtils, fpcunit, testutils, inifiles, testregistry;
- type
- { TTestIniFile }
- TTestIniFile= class(TTestCase)
- private
- Fini: TCustomIniFile;
- protected
- Procedure CreateIni;
- procedure SetUp; override;
- procedure TearDown; override;
- Property Ini : TCustomIniFile Read Fini;
- published
- procedure TestWriteBoolean;
- procedure TestReadBoolean;
- end;
- implementation
- procedure TTestIniFile.CreateIni;
- begin
- Fini:=TMemIniFIle.Create('tmp.ini');
- end;
- procedure TTestIniFile.TestWriteBoolean;
- begin
- CreateIni;
- Ini.WriteBool('a','b',true);
- AssertEquals('Default true','1',Ini.ReadString('a','b',''));
- Ini.WriteBool('a','b',False);
- AssertEquals('Default false','0',Ini.ReadString('a','b',''));
- Ini.Options:=Ini.Options+[ifoWriteStringBoolean];
- Ini.WriteBool('a','b',true);
- AssertEquals('Default string true','true',Ini.ReadString('a','b',''));
- Ini.WriteBool('a','b',false);
- AssertEquals('Default string false','false',Ini.ReadString('a','b',''));
- Ini.SetBoolStringValues(true,['t','true']);
- Ini.WriteBool('a','b',true);
- AssertEquals('True from string array','t',Ini.ReadString('a','b',''));
- Ini.SetBoolStringValues(false,['f','false']);
- Ini.WriteBool('a','b',false);
- AssertEquals('True from string array','f',Ini.ReadString('a','b',''));
- end;
- procedure TTestIniFile.TestReadBoolean;
- begin
- CreateIni;
- Ini.WriteString('a','b','1');
- AssertEquals('Default true',true,Ini.ReadBool('a','b',False));
- Ini.WriteString('a','b','0');
- AssertEquals('Default false',false,Ini.ReadBool('a','b',True));
- Ini.WriteString('a','b','');
- AssertEquals('Empty returns Default ',true,Ini.ReadBool('a','b',true));
- Ini.SetBoolStringValues(true,['t','true']);
- Ini.WriteString('a','b','t');
- AssertEquals('First string match',true,Ini.ReadBool('a','b',false));
- Ini.WriteString('a','b','true');
- AssertEquals('Second string match',true,Ini.ReadBool('a','b',false));
- Ini.WriteString('a','b','d');
- AssertEquals('No string match, default',true,Ini.ReadBool('a','b',true));
- Ini.SetBoolStringValues(true,[]);
- Ini.SetBoolStringValues(false,['f','false']);
- Ini.WriteString('a','b','f');
- AssertEquals('First string match',false,Ini.ReadBool('a','b',true));
- Ini.WriteString('a','b','false');
- AssertEquals('Second string match',false,Ini.ReadBool('a','b',true));
- Ini.WriteString('a','b','d');
- AssertEquals('No string match, default',false,Ini.ReadBool('a','b',false));
- Ini.SetBoolStringValues(true,['t','true']);
- AssertEquals('No string match, default',false,Ini.ReadBool('a','b',false));
- end;
- procedure TTestIniFile.SetUp;
- begin
- DeleteFile('tmp.ini');
- end;
- procedure TTestIniFile.TearDown;
- begin
- DeleteFile('tmp.ini');
- end;
- initialization
- RegisterTest(TTestIniFile);
- end.
|