Главная страница
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
14-1084965489
Johnmen
2004-05-19 15:18
2004.06.06
Нашествие студентов. часть 2


1-1085156319
}|{yk
2004-05-21 20:18
2004.06.06
Глюк в OemToChar


3-1084723034
Oxer
2004-05-16 19:57
2004.06.06
Связи м/у таблмцами ("ручное" изменение значения ключа)


1-1084669856
Алекс А
2004-05-16 05:10
2004.06.06
Какие есть библиотеки для работы с числами размером до 25 знаков?


14-1084753342
kaif
2004-05-17 04:22
2004.06.06
Кто читал Дарвина?