updated tests

This commit is contained in:
Jeff Hill
1997-01-22 21:14:50 +00:00
parent bf6f69065c
commit 4dc12e992d
10 changed files with 88 additions and 40 deletions

View File

@@ -3,7 +3,9 @@
#include <assert.h>
#include <time.h>
#include <stdio.h>
#include <resourceLib.h>
#include "resourceLib.h"
#include "resourceLib.cc"
#ifdef SUNOS4
#ifndef CLOCKS_PER_SEC
@@ -11,7 +13,7 @@
#endif
#endif
class fred : public uintId, tsSLNode<fred> {
class fred : public uintId, public tsSLNode<fred> {
public:
fred (const char *pNameIn, unsigned idIn) :
pName(pNameIn), uintId(idIn) {}
@@ -23,11 +25,26 @@ private:
const char * const pName;
};
class jane : public stringId, tsSLNode<jane> {
class jane : public stringId, public tsSLNode<jane> {
public:
jane (const char *pNameIn) : stringId(pNameIn) {}
};
//
// Sun C++ 4.1 still appears to be lacking support in this area
//
#if !defined(__SUNPRO_CC)
//
// From Stroustrups's "The C++ Programming Language"
// Appendix A: r.14.9
//
// This explicitly instantiates the template class's member
// functions into "templInst.o"
//
template class resTable<fred,uintId>;
template class resTable<jane,stringId>;
#endif
main()
{
unsigned i;

View File

@@ -41,14 +41,14 @@ main ()
clk = clock();
iter = list;
while (pFred = iter()) {
while ( (pFred = iter()) ) {
pFred->inc();
}
diff = clock() - clk;
delay = diff;
delay = delay/CLOCKS_PER_SEC;
delay = delay/LOOPCOUNT;
printf("delay = %15.10lf\n", delay);
printf("delay = %15.10f\n", delay);
pFred = new fred();
clk = clock();
@@ -60,6 +60,6 @@ main ()
delay = diff;
delay = delay/CLOCKS_PER_SEC;
delay = delay/LOOPCOUNT;
printf("delay = %15.10lf\n", delay);
printf("delay = %15.10f\n", delay);
}

View File

@@ -53,7 +53,7 @@ main ()
list.add(* new fred("D"));
iter.reset();
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
@@ -62,27 +62,27 @@ main ()
pJane = new jane("JB");
janeList.add(*pJane);
while (pJane = janeFwdIter()) {
while ( (pJane = janeFwdIter()) ) {
pJane->show();
}
while (pJane = janeBwdIter()) {
while ( (pJane = janeBwdIter()) ) {
pJane->show();
}
iter = list;
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
iter = list;
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
iter.remove();
}
assert(list.count()==0);
janeFwdIter = janeList;
while (pFredBack = janeFwdIter()) {
while ( (pFredBack = janeFwdIter()) ) {
janeFwdIter.remove();
}
assert(janeList.count()==0);
@@ -92,7 +92,7 @@ main ()
pJane = new jane("JB");
janeList.add(*pJane);
janeBwdIter = janeList;
while (pFredBack = janeBwdIter()) {
while ( (pFredBack = janeBwdIter()) ) {
janeBwdIter.remove();
}
assert(janeList.count()==0);

View File

@@ -6,6 +6,13 @@
#include <stdio.h>
#include <time.h>
/*
* gnuc does not provide this under sunos4
*/
#if !defined(CLOCKS_PER_SEC) && defined(SUNOS4)
# define CLOCKS_PER_SEC 1000000
#endif
class fred : public tsSLNode<fred> {
public:
fred() : count(0) {}
@@ -39,14 +46,14 @@ main ()
clk = clock();
iter = list;
while (pFred = iter()) {
while ( (pFred = iter()) ) {
pFred->inc();
}
diff = clock() - clk;
delay = diff;
delay = delay/CLOCKS_PER_SEC;
delay = delay/LOOPCOUNT;
printf("delay = %15.10lf\n", delay);
printf("delay = %15.10f\n", delay);
pFred = new fred();
clk = clock();
@@ -58,6 +65,6 @@ main ()
delay = diff;
delay = delay/CLOCKS_PER_SEC;
delay = delay/LOOPCOUNT;
printf("delay = %15.10lf\n", delay);
printf("delay = %15.10f\n", delay);
}

View File

@@ -56,7 +56,7 @@ main ()
list.add(* new fred("C"));
list.add(* new fred("D"));
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
@@ -65,15 +65,15 @@ main ()
pJane = new jane("JB");
janeList.add(*pJane);
while (pJane = janeIter()) {
while ( (pJane = janeIter()) ) {
pJane->show();
}
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
iter.remove();
}

View File

@@ -3,7 +3,9 @@
#include <assert.h>
#include <time.h>
#include <stdio.h>
#include <resourceLib.h>
#include "resourceLib.h"
#include "resourceLib.cc"
#ifdef SUNOS4
#ifndef CLOCKS_PER_SEC
@@ -11,7 +13,7 @@
#endif
#endif
class fred : public uintId, tsSLNode<fred> {
class fred : public uintId, public tsSLNode<fred> {
public:
fred (const char *pNameIn, unsigned idIn) :
pName(pNameIn), uintId(idIn) {}
@@ -23,11 +25,26 @@ private:
const char * const pName;
};
class jane : public stringId, tsSLNode<jane> {
class jane : public stringId, public tsSLNode<jane> {
public:
jane (const char *pNameIn) : stringId(pNameIn) {}
};
//
// Sun C++ 4.1 still appears to be lacking support in this area
//
#if !defined(__SUNPRO_CC)
//
// From Stroustrups's "The C++ Programming Language"
// Appendix A: r.14.9
//
// This explicitly instantiates the template class's member
// functions into "templInst.o"
//
template class resTable<fred,uintId>;
template class resTable<jane,stringId>;
#endif
main()
{
unsigned i;

View File

@@ -41,14 +41,14 @@ main ()
clk = clock();
iter = list;
while (pFred = iter()) {
while ( (pFred = iter()) ) {
pFred->inc();
}
diff = clock() - clk;
delay = diff;
delay = delay/CLOCKS_PER_SEC;
delay = delay/LOOPCOUNT;
printf("delay = %15.10lf\n", delay);
printf("delay = %15.10f\n", delay);
pFred = new fred();
clk = clock();
@@ -60,6 +60,6 @@ main ()
delay = diff;
delay = delay/CLOCKS_PER_SEC;
delay = delay/LOOPCOUNT;
printf("delay = %15.10lf\n", delay);
printf("delay = %15.10f\n", delay);
}

View File

@@ -53,7 +53,7 @@ main ()
list.add(* new fred("D"));
iter.reset();
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
@@ -62,27 +62,27 @@ main ()
pJane = new jane("JB");
janeList.add(*pJane);
while (pJane = janeFwdIter()) {
while ( (pJane = janeFwdIter()) ) {
pJane->show();
}
while (pJane = janeBwdIter()) {
while ( (pJane = janeBwdIter()) ) {
pJane->show();
}
iter = list;
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
iter = list;
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
iter.remove();
}
assert(list.count()==0);
janeFwdIter = janeList;
while (pFredBack = janeFwdIter()) {
while ( (pFredBack = janeFwdIter()) ) {
janeFwdIter.remove();
}
assert(janeList.count()==0);
@@ -92,7 +92,7 @@ main ()
pJane = new jane("JB");
janeList.add(*pJane);
janeBwdIter = janeList;
while (pFredBack = janeBwdIter()) {
while ( (pFredBack = janeBwdIter()) ) {
janeBwdIter.remove();
}
assert(janeList.count()==0);

View File

@@ -6,6 +6,13 @@
#include <stdio.h>
#include <time.h>
/*
* gnuc does not provide this under sunos4
*/
#if !defined(CLOCKS_PER_SEC) && defined(SUNOS4)
# define CLOCKS_PER_SEC 1000000
#endif
class fred : public tsSLNode<fred> {
public:
fred() : count(0) {}
@@ -39,14 +46,14 @@ main ()
clk = clock();
iter = list;
while (pFred = iter()) {
while ( (pFred = iter()) ) {
pFred->inc();
}
diff = clock() - clk;
delay = diff;
delay = delay/CLOCKS_PER_SEC;
delay = delay/LOOPCOUNT;
printf("delay = %15.10lf\n", delay);
printf("delay = %15.10f\n", delay);
pFred = new fred();
clk = clock();
@@ -58,6 +65,6 @@ main ()
delay = diff;
delay = delay/CLOCKS_PER_SEC;
delay = delay/LOOPCOUNT;
printf("delay = %15.10lf\n", delay);
printf("delay = %15.10f\n", delay);
}

View File

@@ -56,7 +56,7 @@ main ()
list.add(* new fred("C"));
list.add(* new fred("D"));
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
@@ -65,15 +65,15 @@ main ()
pJane = new jane("JB");
janeList.add(*pJane);
while (pJane = janeIter()) {
while ( (pJane = janeIter()) ) {
pJane->show();
}
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
while (pFredBack = iter()) {
while ( (pFredBack = iter()) ) {
iter.remove();
}