Re: [U2] Mocking UniSession in .NET

2012-08-15 Thread Ravindranath Wickramanayake
Thanks Brian I will try that out.

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Brian Leach
Sent: Tuesday, August 14, 2012 3:32 PM
To: U2 Users List
Subject: Re: [U2] Mocking UniSession in .NET

... in fact if you're building, you may be better off just using a
stringbuilder and generating the delimited string. If the UniDynArray is
wrapping a string that might explain why it seems slow. (.net strings
are immutable so changing strings is a bad idea). 

on the server the string manipulations are highly optimised using
various hidden pointers and hints.

Brian

Sent from my iPad

On 14 Aug 2012, at 21:25, Brian Leach br...@brianleach.co.uk wrote:

 Do you need to send an actual UniDynArray or the underlying data in a
dynamic array format? IIIRC the UniSubroutine arguments are overloaded
to use strings: and a dynamic array (encapsulated in a UniDynArray) is
actually a delimited string. Fields separated by \xFe, values by \xFD,
text encoding is 8 bit ansi so get the TextEncoding from page 1252. 
 
 Now I dont know what the UniDynArray does internally to manage data 
 but I have found it slow, and often better to go to the underlying 
 string and parse or manipulate it directly e.g. using a 
 Liststring.AddRange( myArray.StringValue.Split('\xFd'));
 
 AFAIK the only reason the UniDynArray is constructed from the
UniSession is because it needs to get any NLS mappings from the server
(anyone know better?) and certainly the older COM implementation of
UniObjects did not need a session to create a dynamic array, so you
could probably just simulate that and ignore the parenting UniSession.
 
 
 oh and be careful about insert, you probably need replace in most
cases. that will replace the content of an existing or non-existing
element.
 
 B
 Sent from my iPad
 
 On 14 Aug 2012, at 20:49, Ravindranath Wickramanayake
ra...@rammutual.com wrote:
 
 Hmm my Business logic sends data to Data Layer then data layer talks 
 to pick server by using UniObject.NET dll. What I'm trying to unit 
 test is this DataLayer Calls to pick to check whether it converts 
 complex objects to UniDynArrays correctly.
 
 So How do you abstract UniSession out? Sproc coming from pick side 
 (which I have no control over) require me to send UniDynArray.
 
 What I want is to send user data to a UniDynArray. I have already 
 interfaced UniDynArray insert methods but I can't see how I could 
 return a UniDynArray without a UniSession. Is there a way you could 
 fake UniSession for unit testing purposes?
 
 -Original Message-
 From: u2-users-boun...@listserver.u2ug.org
 [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Brian 
 Leach
 Sent: Tuesday, August 14, 2012 4:56 AM
 To: 'U2 Users List'
 Subject: Re: [U2] Mocking UniSession in .NET
 
 T
 
 I think we're actually talking the same thing: a separation between 
 the business logic and the client.
 Mocking the business logic calls so they don't touch the server, and 
 separately unit testing the server routines so you know they will 
 work when they will be hit.
 
 And I'm a believer in unit tests, or at least the discipline they 
 enforce - learned the hard way - and as a platform for integration 
 testing. Without automated testing I haven't got the resources to do 
 a full integration  test for every release. Though not necessarily 
 going as far as TDD yet.
 
 Brian
 
 -Original Message-
 From: u2-users-boun...@listserver.u2ug.org
 [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony 
 Gravagno
 Sent: 14 August 2012 01:29
 To: u2-users@listserver.u2ug.org
 Subject: Re: [U2] Mocking UniSession in .NET
 
 Brian Leach
 would it be better to construct a higher level wrapper for your
 business
 functions and mock those? the UO libraries are quite low level: its
 a bit
 like mocking ado.net rather than your db calls.
 
 From: Ravindranath
 Thanks for the reply. I am trying to do higher level wrappers to
 hide
 those UniObject stuff but the problem is in order to to get
 UniDynArray it
 has to have UniSession. [snip]
 
 
 Brian, I was going to suggest the same thing. But this is one of the 
 differences between unit testing an application and mocking, which 
 will allow a unit test to run completely in test mode without 
 actually calling to the server within the application code. Ravi 
 could abstract his code out for the test but that very process could 
 be considered an invalidation of the test.
 
 Despite the latest craze around unit testing and the entire industry 
 that it's spawned, I still find applications I use to be as crappy as

 they've always been, so I'm not as enamored with unit tests or 
 mocking as many others. When working on a GUI project I try to get 
 the BASIC app developers to handle everything there while I 
 intentionally remain ignorant of their inner processes. Once my 
 clients get the hang of this they really enjoy the process - the 
 BASIC developers

Re: [U2] Mocking UniSession in .NET

2012-08-14 Thread Brian Leach
T

I think we're actually talking the same thing: a separation between the
business logic and the client.
Mocking the business logic calls so they don't touch the server, and
separately unit testing the server routines so you know they will work when
they will be hit.

And I'm a believer in unit tests, or at least the discipline they enforce -
learned the hard way - and as a platform for integration testing. Without
automated testing I haven't got the resources to do a full integration  test
for every release. Though not necessarily going as far as TDD yet.

Brian

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony Gravagno
Sent: 14 August 2012 01:29
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Mocking UniSession in .NET

 Brian Leach
 would it be better to construct a higher level wrapper for your
business
 functions and mock those? the UO libraries are quite low level: its
a bit
 like mocking ado.net rather than your db calls.

 From: Ravindranath
 Thanks for the reply. I am trying to do higher level wrappers to
hide
 those UniObject stuff but the problem is in order to to get
UniDynArray it
 has to have UniSession. [snip]


Brian, I was going to suggest the same thing. But this is one of the
differences between unit testing an application and mocking, which will
allow a unit test to run completely in test mode without actually calling to
the server within the application code. Ravi could abstract his code out for
the test but that very process could be considered an invalidation of the
test.

Despite the latest craze around unit testing and the entire industry that
it's spawned, I still find applications I use to be as crappy as they've
always been, so I'm not as enamored with unit tests or mocking as many
others. When working on a GUI project I try to get the BASIC app developers
to handle everything there while I intentionally remain ignorant of their
inner processes. Once my clients get the hang of this they really enjoy the
process - the BASIC developers regain their sense of self-confidence as they
realize that a GUI doesn't threaten their jobs. We interface through
well-defined BASIC calls. It's here that we can do a BASIC mockup of the
input to their BASIC code. If that works, and I've done my job, the GUI will
work when linked to the back-end. Similarly, and (Zzz...) here's the point,
my GUI-side tests don't connect into the DBMS, so I don't need to mock that
part. I keep that interface lightweight, use the same component for almost
all DBMS activity, and don't need the overhead of unit tests or mocking for
every new application. Ravi, that might be of some help to you.

Good luck,
T


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mocking UniSession in .NET

2012-08-14 Thread Ravindranath Wickramanayake
Hmm my Business logic sends data to Data Layer then data layer talks to
pick server by using UniObject.NET dll. What I'm trying to unit test is
this DataLayer Calls to pick to check whether it converts complex
objects to UniDynArrays correctly.

 So How do you abstract UniSession out? Sproc coming from pick side
(which I have no control over) require me to send UniDynArray. 

What I want is to send user data to a UniDynArray. I have already
interfaced UniDynArray insert methods but I can't see how I could return
a UniDynArray without a UniSession. Is there a way you could fake
UniSession for unit testing purposes?
 
-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Brian Leach
Sent: Tuesday, August 14, 2012 4:56 AM
To: 'U2 Users List'
Subject: Re: [U2] Mocking UniSession in .NET

T

I think we're actually talking the same thing: a separation between the
business logic and the client.
Mocking the business logic calls so they don't touch the server, and
separately unit testing the server routines so you know they will work
when they will be hit.

And I'm a believer in unit tests, or at least the discipline they
enforce - learned the hard way - and as a platform for integration
testing. Without automated testing I haven't got the resources to do a
full integration  test for every release. Though not necessarily going
as far as TDD yet.

Brian

-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony Gravagno
Sent: 14 August 2012 01:29
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Mocking UniSession in .NET

 Brian Leach
 would it be better to construct a higher level wrapper for your
business
 functions and mock those? the UO libraries are quite low level: its
a bit
 like mocking ado.net rather than your db calls.

 From: Ravindranath
 Thanks for the reply. I am trying to do higher level wrappers to
hide
 those UniObject stuff but the problem is in order to to get
UniDynArray it
 has to have UniSession. [snip]


Brian, I was going to suggest the same thing. But this is one of the
differences between unit testing an application and mocking, which will
allow a unit test to run completely in test mode without actually
calling to the server within the application code. Ravi could abstract
his code out for the test but that very process could be considered an
invalidation of the test.

Despite the latest craze around unit testing and the entire industry
that it's spawned, I still find applications I use to be as crappy as
they've always been, so I'm not as enamored with unit tests or mocking
as many others. When working on a GUI project I try to get the BASIC app
developers to handle everything there while I intentionally remain
ignorant of their inner processes. Once my clients get the hang of this
they really enjoy the process - the BASIC developers regain their sense
of self-confidence as they realize that a GUI doesn't threaten their
jobs. We interface through well-defined BASIC calls. It's here that we
can do a BASIC mockup of the input to their BASIC code. If that works,
and I've done my job, the GUI will work when linked to the back-end.
Similarly, and (Zzz...) here's the point, my GUI-side tests don't
connect into the DBMS, so I don't need to mock that part. I keep that
interface lightweight, use the same component for almost all DBMS
activity, and don't need the overhead of unit tests or mocking for every
new application. Ravi, that might be of some help to you.

Good luck,
T


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mocking UniSession in .NET

2012-08-14 Thread Brian Leach
Do you need to send an actual UniDynArray or the underlying data in a dynamic 
array format? IIIRC the UniSubroutine arguments are overloaded to use strings: 
and a dynamic array (encapsulated in a UniDynArray) is actually a delimited 
string. Fields separated by \xFe, values by \xFD, text encoding is 8 bit ansi 
so get the TextEncoding from page 1252. 

Now I dont know what the UniDynArray does internally to manage data but I have 
found it slow, and often better to go to the underlying string and parse or 
manipulate it directly e.g. using a Liststring.AddRange( 
myArray.StringValue.Split('\xFd'));

AFAIK the only reason the UniDynArray is constructed from the UniSession is 
because it needs to get any NLS mappings from the server (anyone know better?) 
and certainly the older COM implementation of UniObjects did not need a session 
to create a dynamic array, so you could probably just simulate that and ignore 
the parenting UniSession.


oh and be careful about insert, you probably need replace in most cases. that 
will replace the content of an existing or non-existing element.

Brian

Sent from my iPad

On 14 Aug 2012, at 20:49, Ravindranath Wickramanayake ra...@rammutual.com 
wrote:

 Hmm my Business logic sends data to Data Layer then data layer talks to
 pick server by using UniObject.NET dll. What I'm trying to unit test is
 this DataLayer Calls to pick to check whether it converts complex
 objects to UniDynArrays correctly.
 
 So How do you abstract UniSession out? Sproc coming from pick side
 (which I have no control over) require me to send UniDynArray. 
 
 What I want is to send user data to a UniDynArray. I have already
 interfaced UniDynArray insert methods but I can't see how I could return
 a UniDynArray without a UniSession. Is there a way you could fake
 UniSession for unit testing purposes?
 
 -Original Message-
 From: u2-users-boun...@listserver.u2ug.org
 [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Brian Leach
 Sent: Tuesday, August 14, 2012 4:56 AM
 To: 'U2 Users List'
 Subject: Re: [U2] Mocking UniSession in .NET
 
 T
 
 I think we're actually talking the same thing: a separation between the
 business logic and the client.
 Mocking the business logic calls so they don't touch the server, and
 separately unit testing the server routines so you know they will work
 when they will be hit.
 
 And I'm a believer in unit tests, or at least the discipline they
 enforce - learned the hard way - and as a platform for integration
 testing. Without automated testing I haven't got the resources to do a
 full integration  test for every release. Though not necessarily going
 as far as TDD yet.
 
 Brian
 
 -Original Message-
 From: u2-users-boun...@listserver.u2ug.org
 [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony Gravagno
 Sent: 14 August 2012 01:29
 To: u2-users@listserver.u2ug.org
 Subject: Re: [U2] Mocking UniSession in .NET
 
 Brian Leach
 would it be better to construct a higher level wrapper for your
 business
 functions and mock those? the UO libraries are quite low level: its
 a bit
 like mocking ado.net rather than your db calls.
 
 From: Ravindranath
 Thanks for the reply. I am trying to do higher level wrappers to
 hide
 those UniObject stuff but the problem is in order to to get
 UniDynArray it
 has to have UniSession. [snip]
 
 
 Brian, I was going to suggest the same thing. But this is one of the
 differences between unit testing an application and mocking, which will
 allow a unit test to run completely in test mode without actually
 calling to the server within the application code. Ravi could abstract
 his code out for the test but that very process could be considered an
 invalidation of the test.
 
 Despite the latest craze around unit testing and the entire industry
 that it's spawned, I still find applications I use to be as crappy as
 they've always been, so I'm not as enamored with unit tests or mocking
 as many others. When working on a GUI project I try to get the BASIC app
 developers to handle everything there while I intentionally remain
 ignorant of their inner processes. Once my clients get the hang of this
 they really enjoy the process - the BASIC developers regain their sense
 of self-confidence as they realize that a GUI doesn't threaten their
 jobs. We interface through well-defined BASIC calls. It's here that we
 can do a BASIC mockup of the input to their BASIC code. If that works,
 and I've done my job, the GUI will work when linked to the back-end.
 Similarly, and (Zzz...) here's the point, my GUI-side tests don't
 connect into the DBMS, so I don't need to mock that part. I keep that
 interface lightweight, use the same component for almost all DBMS
 activity, and don't need the overhead of unit tests or mocking for every
 new application. Ravi, that might be of some help to you.
 
 Good luck,
 T
 
 
 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http

Re: [U2] Mocking UniSession in .NET

2012-08-14 Thread Brian Leach
... in fact if you're building, you may be better off just using a 
stringbuilder and generating the delimited string. If the UniDynArray is 
wrapping a string that might explain why it seems slow. (.net strings are 
immutable so changing strings is a bad idea). 

on the server the string manipulations are highly optimised using various 
hidden pointers and hints.

Brian

Sent from my iPad

On 14 Aug 2012, at 21:25, Brian Leach br...@brianleach.co.uk wrote:

 Do you need to send an actual UniDynArray or the underlying data in a dynamic 
 array format? IIIRC the UniSubroutine arguments are overloaded to use 
 strings: and a dynamic array (encapsulated in a UniDynArray) is actually a 
 delimited string. Fields separated by \xFe, values by \xFD, text encoding is 
 8 bit ansi so get the TextEncoding from page 1252. 
 
 Now I dont know what the UniDynArray does internally to manage data but I 
 have found it slow, and often better to go to the underlying string and parse 
 or manipulate it directly e.g. using a Liststring.AddRange( 
 myArray.StringValue.Split('\xFd'));
 
 AFAIK the only reason the UniDynArray is constructed from the UniSession is 
 because it needs to get any NLS mappings from the server (anyone know 
 better?) and certainly the older COM implementation of UniObjects did not 
 need a session to create a dynamic array, so you could probably just simulate 
 that and ignore the parenting UniSession.
 
 
 oh and be careful about insert, you probably need replace in most cases. that 
 will replace the content of an existing or non-existing element.
 
 B
 Sent from my iPad
 
 On 14 Aug 2012, at 20:49, Ravindranath Wickramanayake ra...@rammutual.com 
 wrote:
 
 Hmm my Business logic sends data to Data Layer then data layer talks to
 pick server by using UniObject.NET dll. What I'm trying to unit test is
 this DataLayer Calls to pick to check whether it converts complex
 objects to UniDynArrays correctly.
 
 So How do you abstract UniSession out? Sproc coming from pick side
 (which I have no control over) require me to send UniDynArray. 
 
 What I want is to send user data to a UniDynArray. I have already
 interfaced UniDynArray insert methods but I can't see how I could return
 a UniDynArray without a UniSession. Is there a way you could fake
 UniSession for unit testing purposes?
 
 -Original Message-
 From: u2-users-boun...@listserver.u2ug.org
 [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Brian Leach
 Sent: Tuesday, August 14, 2012 4:56 AM
 To: 'U2 Users List'
 Subject: Re: [U2] Mocking UniSession in .NET
 
 T
 
 I think we're actually talking the same thing: a separation between the
 business logic and the client.
 Mocking the business logic calls so they don't touch the server, and
 separately unit testing the server routines so you know they will work
 when they will be hit.
 
 And I'm a believer in unit tests, or at least the discipline they
 enforce - learned the hard way - and as a platform for integration
 testing. Without automated testing I haven't got the resources to do a
 full integration  test for every release. Though not necessarily going
 as far as TDD yet.
 
 Brian
 
 -Original Message-
 From: u2-users-boun...@listserver.u2ug.org
 [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony Gravagno
 Sent: 14 August 2012 01:29
 To: u2-users@listserver.u2ug.org
 Subject: Re: [U2] Mocking UniSession in .NET
 
 Brian Leach
 would it be better to construct a higher level wrapper for your
 business
 functions and mock those? the UO libraries are quite low level: its
 a bit
 like mocking ado.net rather than your db calls.
 
 From: Ravindranath
 Thanks for the reply. I am trying to do higher level wrappers to
 hide
 those UniObject stuff but the problem is in order to to get
 UniDynArray it
 has to have UniSession. [snip]
 
 
 Brian, I was going to suggest the same thing. But this is one of the
 differences between unit testing an application and mocking, which will
 allow a unit test to run completely in test mode without actually
 calling to the server within the application code. Ravi could abstract
 his code out for the test but that very process could be considered an
 invalidation of the test.
 
 Despite the latest craze around unit testing and the entire industry
 that it's spawned, I still find applications I use to be as crappy as
 they've always been, so I'm not as enamored with unit tests or mocking
 as many others. When working on a GUI project I try to get the BASIC app
 developers to handle everything there while I intentionally remain
 ignorant of their inner processes. Once my clients get the hang of this
 they really enjoy the process - the BASIC developers regain their sense
 of self-confidence as they realize that a GUI doesn't threaten their
 jobs. We interface through well-defined BASIC calls. It's here that we
 can do a BASIC mockup of the input to their BASIC code. If that works,
 and I've done my job, the GUI will work when linked

[U2] Mocking UniSession in .NET

2012-08-13 Thread Ravindranath Wickramanayake
Hi

 

Does anybody know how to mock UniSession via .NET? or is there a
interface for UniSession like IUniSession so it could be easily
mockable? 

 

Your Help is very much appreciated

 

Thanks

Ravi

___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mocking UniSession in .NET

2012-08-13 Thread Tony Gravagno
 From: Ravindranath 
 Does anybody know how to mock UniSession via .NET? or is there a
 interface for UniSession like IUniSession so it could be easily
mockable?

If you don't get an answer here that you can use, look into JustMock
from Telerik. I haven't used it against UniSession yet (I generally to
use and sell mv.NET) but I'd expect it to do the job. 

HTH
T



___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mocking UniSession in .NET

2012-08-13 Thread Brian Leach
would it be better to construct a higher level wrapper for your business 
functions and mock those? the UO libraries are quite low level: its a bit like 
mocking ado.net rather than your db calls.  

I expose all the business logic through server side subroutines, all using 
standardized calling conventions, then they can easily be simulated and also I 
can use server side unit tests.


Sent from my iPad

On 13 Aug 2012, at 19:32, Ravindranath Wickramanayake ra...@rammutual.com 
wrote:

 Hi
 
 
 
 Does anybody know how to mock UniSession via .NET? or is there a
 interface for UniSession like IUniSession so it could be easily
 mockable? 
 
 
 
 Your Help is very much appreciated
 
 
 
 Thanks
 
 Ravi
 
 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mocking UniSession in .NET

2012-08-13 Thread Ravindranath Wickramanayake
Thanks for the reply. I am trying to do higher level wrappers to hide
those UniObject stuff but the problem is in order to to get UniDynArray
it has to have UniSession. UniObjects allow me to send UniDynArray to
subroutine. Would you happen to have a sample code where you do
something like that. My code is as follow  my prob is UniDynArray
GetData { get; } line. Code as bellow

#region GetDataByField

string GetDataByField(int field);
string GetDataByField(int field, int value);
string GetDataByField(int field, int value, int subValue);

#endregion

#region Count

int Count(int field);
int Count(int field, int value);
int Count(int field, int value, int subValue);

#endregion

#region Insert

void Insert(int field, string strValue);
void Insert(int field, int value, string strValue);
void Insert(int field, int value, int subValue, string
strValue);

#endregion

#region GetData

UniDynArray GetData { get; }

#endregion



-Original Message-
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Brian Leach
Sent: Monday, August 13, 2012 3:50 PM
To: U2 Users List
Subject: Re: [U2] Mocking UniSession in .NET

would it be better to construct a higher level wrapper for your business
functions and mock those? the UO libraries are quite low level: its a
bit like mocking ado.net rather than your db calls.  

I expose all the business logic through server side subroutines, all
using standardized calling conventions, then they can easily be
simulated and also I can use server side unit tests.


Sent from my iPad

On 13 Aug 2012, at 19:32, Ravindranath Wickramanayake
ra...@rammutual.com wrote:

 Hi
 
 
 
 Does anybody know how to mock UniSession via .NET? or is there a 
 interface for UniSession like IUniSession so it could be easily 
 mockable?
 
 
 
 Your Help is very much appreciated
 
 
 
 Thanks
 
 Ravi
 
 ___
 U2-Users mailing list
 U2-Users@listserver.u2ug.org
 http://listserver.u2ug.org/mailman/listinfo/u2-users
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users
___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


Re: [U2] Mocking UniSession in .NET

2012-08-13 Thread Tony Gravagno
 Brian Leach
 would it be better to construct a higher level wrapper for your
business
 functions and mock those? the UO libraries are quite low level: its
a bit
 like mocking ado.net rather than your db calls.

 From: Ravindranath 
 Thanks for the reply. I am trying to do higher level wrappers to
hide
 those UniObject stuff but the problem is in order to to get
UniDynArray it
 has to have UniSession. [snip]


Brian, I was going to suggest the same thing. But this is one of the
differences between unit testing an application and mocking, which
will allow a unit test to run completely in test mode without actually
calling to the server within the application code. Ravi could abstract
his code out for the test but that very process could be considered an
invalidation of the test.

Despite the latest craze around unit testing and the entire industry
that it's spawned, I still find applications I use to be as crappy as
they've always been, so I'm not as enamored with unit tests or mocking
as many others. When working on a GUI project I try to get the BASIC
app developers to handle everything there while I intentionally remain
ignorant of their inner processes. Once my clients get the hang of
this they really enjoy the process - the BASIC developers regain their
sense of self-confidence as they realize that a GUI doesn't threaten
their jobs. We interface through well-defined BASIC calls. It's here
that we can do a BASIC mockup of the input to their BASIC code. If
that works, and I've done my job, the GUI will work when linked to the
back-end. Similarly, and (Zzz...) here's the point, my GUI-side tests
don't connect into the DBMS, so I don't need to mock that part. I keep
that interface lightweight, use the same component for almost all DBMS
activity, and don't need the overhead of unit tests or mocking for
every new application. Ravi, that might be of some help to you.

Good luck,
T


___
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users