Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

Midas server & client   Найти похожие ветки 

 
Umka   (2004-05-23 17:34) [0]

Добрый день,

Возможно ли в одном экзешнике разметстить сервер и клиент. Идея на первый взгляд не имеет мысла, о это нужно что бы автоматизировать тестирование сервера и клиента.

Существуют след. классы:

 TZRemoteDM = class(TRemoteDataModule, IZRemoteDM)
   FDSProvider: TDataSetProvider;
   FConnection: TZConnection;
   FQuery: TZQuery;
   FDetailQuery: TZQuery;
 public
   constructor Create(AOwner: TComponent); override;
   destructor Destroy; override;
 end;

TZTestSortingCase = class(TZComponentGenericSQLTestCase)
 private
   RemoteServer: TSocketConnection;
   ClientData: TClientDataSet;

 protected
   procedure SetUp; override;
   procedure TearDown; override;
 published
   procedure TestSelect;
 end;

implementation

{$R *.TLB}

constructor TZRemoteDM.Create(AOwner: TComponent);
begin
 FDSProvider := TDataSetProvider.Create(self);
 FConnection := TZConnection.Create(self);
 FQuery := TZQuery.Create(self);
 FDetailQuery := TZQuery.Create(self);

 FConnection.Disconnect;
 FQuery.Connection := FConnection;
 FDSProvider.DataSet := FQuery;
 FDSProvider.Options := [poAllowCommandText];
end;

....

procedure TZTestSortingCase.SetUp;
begin
 RemoteServer := TSocketConnection.Create(nil);
 RemoteServer.Port := 211;
 RemoteServer.Address := "127.0.0.1";
 RemoteServer.ServerGUID := "{FD5981E3-A86F-4A2F-B20E-94D1B0799AD6}";
 RemoteServer.ServerName := "Server.ZRemoteDM";
 RemoteServer.Connected := True;
 RemoteServer.AppServer.SetOptions(Protocol, HostName, Port,
   Database, UserName, Password);

 ClientData := TClientDataSet.Create(nil);
 ClientData.ProviderName := "DSProvider";
 ClientData.RemoteServer := RemoteServer;
end;
....

initialization
begin
 TComponentFactory.Create(ComServer, TZRemoteDM,
   Class_ZRemoteDM, ciMultiInstance, tmApartment);
 TestFramework.RegisterTest(TZTestSortingCase.Suite);
end;

TZComponentGenericSQLTestCase - является наследником TTestCase изи пакета DUnit

При попытке соединения с сервером RemoteServer.Connected := True; (используется TSocketConnection) вылетает ошибка в TDataBlockInterpreter.DoException - "Server execution filed".


 
Гаврила ©   (2004-05-23 17:56) [1]

А разве нельзя автоматизировать тестирование сервера и клиента, не объединяя их в один модуль ?



Страницы: 1 вся ветка

Текущий архив: 2004.06.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
1-1085248628
Vetalich
2004-05-22 21:57
2004.06.06
Убирание кнопки на главном окне.


14-1085033396
Serrrg
2004-05-20 10:09
2004.06.06
Программирование микропроцессоров


4-1082863580
_Sh_
2004-04-25 07:26
2004.06.06
Проблема с GetFileSize


14-1085083058
Алхимик
2004-05-20 23:57
2004.06.06
Требуются подмастерья Delphi.


8-1080628998
MasterA
2004-03-30 10:43
2004.06.06
Голосовой чат