Skip to content

Commit b79b8b7

Browse files
feature: add more test for tracker URL
With and without '/announce'
1 parent 2fa13bc commit b79b8b7

File tree

1 file changed

+60
-19
lines changed

1 file changed

+60
-19
lines changed

source/test/test_start_up_parameter.pas

Lines changed: 60 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,14 @@ TTestStartUpParameter = class(TTestCase)
7171
procedure CreateFilledTorrent(TrackerListOrder: TTrackerListOrder);
7272
procedure DownloadNewTrackonTrackers;
7373
procedure Test_Paramater_Ux(TrackerListOrder: TTrackerListOrder);
74+
procedure Add_One_URL(TrackerListOrder: TTrackerListOrder;
75+
const tracker_URL: string; TestMustBeSuccess: boolean);
7476

7577
protected
7678
procedure SetUp; override;
7779
procedure TearDown; override;
7880
published
79-
procedure Test_Tracker_UserInput_Without_Announce_Exit_Code;
81+
procedure Test_Tracker_UserInput_All_Different_URL;
8082
procedure Test_Create_Empty_Torrent_And_Then_Filled_It_All_Mode;
8183

8284
procedure Test_Paramater_U0;
@@ -315,35 +317,74 @@ procedure TTestStartUpParameter.Test_Paramater_Ux(TrackerListOrder: TTrackerList
315317
Check(FConsoleLogData.TorrentFilesCount = TEST_TORRENT_FILES_COUNT);
316318
end;
317319

320+
procedure TTestStartUpParameter.Add_One_URL(TrackerListOrder: TTrackerListOrder;
321+
const tracker_URL: string; TestMustBeSuccess: boolean);
322+
begin
323+
//add one tracker to the 'add_trackers'
324+
FVerifyTrackerResult.TrackerAdded.Clear;
325+
FVerifyTrackerResult.TrackerAdded.Add(tracker_URL);
326+
327+
FVerifyTrackerResult.TrackerAdded.SaveToFile(FFullPathToEndUser +
328+
FILE_NAME_ADD_TRACKERS);
329+
330+
//Generate the command line parameter
331+
TestParameter(TrackerListOrder);
332+
333+
//call the tracker editor exe file
334+
CallExecutableFile;
335+
336+
//Check the logdata status
337+
Check(ReadConsoleLogFile, 'Log data is not present');
338+
339+
340+
if TestMustBeSuccess then
341+
begin
342+
//check the exit code. Must be OK
343+
CheckEquals(0, FExitCode, tracker_URL);
318344

319-
procedure TTestStartUpParameter.Test_Tracker_UserInput_Without_Announce_Exit_Code;
345+
//the result must be True
346+
CheckTrue(FConsoleLogData.StatusOK, tracker_URL);
347+
end
348+
else
349+
begin
350+
//check the exit code. Must be an error
351+
CheckNotEquals(0, FExitCode, tracker_URL);
352+
353+
//the result must be false
354+
CheckFalse(FConsoleLogData.StatusOK, tracker_URL);
355+
end;
356+
357+
end;
358+
359+
360+
procedure TTestStartUpParameter.Test_Tracker_UserInput_All_Different_URL;
320361
var
321362
TrackerListOrder: TTrackerListOrder;
363+
TrackerURL: string;
364+
const
365+
ANNOUNCE = '/announce';
322366
begin
323367
//Test if all the tracker update mode is working
324368
for TrackerListOrder in TTrackerListOrder do
325369
begin
370+
TrackerURL := 'udp://test.com';
371+
Add_One_URL(TrackerListOrder, TrackerURL, False);
372+
Add_One_URL(TrackerListOrder, TrackerURL + ANNOUNCE, True);
326373

327-
//add a wrong tracker without /announce
328-
FVerifyTrackerResult.TrackerAdded.Clear;
329-
FVerifyTrackerResult.TrackerAdded.Add('udp://test.com');
330-
331-
FVerifyTrackerResult.TrackerAdded.SaveToFile(FFullPathToEndUser +
332-
FILE_NAME_ADD_TRACKERS);
333-
334-
//Generate the command line parameter
335-
TestParameter(TrackerListOrder);
374+
TrackerURL := 'http://test.com';
375+
Add_One_URL(TrackerListOrder, TrackerURL, False);
376+
Add_One_URL(TrackerListOrder, TrackerURL + ANNOUNCE, True);
336377

337-
//call the tracker editor exe file
338-
CallExecutableFile;
378+
TrackerURL := 'https://test.com';
379+
Add_One_URL(TrackerListOrder, TrackerURL, False);
380+
Add_One_URL(TrackerListOrder, TrackerURL + ANNOUNCE, True);
339381

340-
//check the exit code. Must be an error
341-
CheckNotEquals(0, FExitCode);
382+
//webtorrent does NOT have announce
383+
TrackerURL := 'ws://test.com';
384+
Add_One_URL(TrackerListOrder, TrackerURL, True);
342385

343-
//Check the logdata status
344-
Check(ReadConsoleLogFile, 'Log data is not present');
345-
//the result must be false
346-
CheckFalse(FConsoleLogData.StatusOK);
386+
TrackerURL := 'wss://test.com';
387+
Add_One_URL(TrackerListOrder, TrackerURL, True);
347388
end;
348389
end;
349390

0 commit comments

Comments
 (0)