Главная страница
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.021 c
14-1084860282
Viking
2004-05-18 10:04
2004.06.06
Периодика по программированию


6-1081611869
Zmey
2004-04-10 19:44
2004.06.06
Сокеты, размер буфера


1-1085567331
AlexG
2004-05-26 14:28
2004.06.06
Проблема с переносом макроса...


1-1085697995
NetKnight
2004-05-28 02:46
2004.06.06
Rave reports and calcilated fields


14-1084881510
Liona
2004-05-18 15:58
2004.06.06
Ищу трудоголика.