A total of 323 test cases
can be written for testing OJI APIs .
        Below is a list of OJI API
methods that are being implemented in
       browser code for OJI and/or in
Kestrel code(for windows) . Each method under
       an interface include details like
the number of possible test cases
        and the possible test values.
At the end of interface there is a
        total for the number of
test cases for this Interface.
 
     Note:
     ====
       Interfaces nsIJRIPlugin.h ,
nsISecureJNI.h  and nsISecureJNI2.h  are found
      under the mozilla/modules/oji/public
directory of mozilla.
      However these interfaces were not
included in the Kestrel include directory.
       Also noticed that the methods
declared within nsISecureJNI.h  and nsISecureJNI2.h
      under mozilla/modules/oji/public
directory
      were all included in the nsISecureEnv.h
interface that is found in kestrel include directory
Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with NULL value and a NON NULL value for
both the parameters
 Method:
  NS_IMETHOD GetProxyJNI(JNIEnv * *outProxyEnv);
  Implemented in :Kestrel code for windows
  Number of test cases that can be written: 2
 Test cases will be written with NULL value and a NON NULL value
Method:
NS_IMETHOD IsJavaEnabled(PRBool *outEnabled);
 Implemented in :Kestrel code for windows
 Number of test cases that can be written: 2
 Test cases will be written with NULL value and a NON NULL value
Method:
NS_IMETHOD ShowJavaConsole(void);
Implemented in :Kestrel code for windows
Number of test cases that can be written: 1
Total number of test cases for this Interface : 9
 
 Implemented in : Kestrel code for windows
 Number of test cases that can be written: 3
 Test cases will be written with Empty String  , NULL string
and a NON NULL
     String value for  the parameter
 Method:
   NS_IMETHOD  GetText(const char* *result) = 0;
 Implemented in :mozilla and Kestrel code for windows
  Number of test cases that can be written: 3
 Test cases will be written with Empty String  , NULL string
and a NON NULL
       String value for  the parameter
Total number of test cases for this Interface : 6
 
 Implemented in :mozilla and Kestrel code for windows
 Number of test cases that can be written: 3
 Test cases will be written with Empty String  , NULL string
and a NON NULL String value for  the parameter
 Method:
   NS_IMETHOD  GetClassPath(const char* *result) = 0;
 Implemented in :mozilla and Kestrel code for windows
  Number of test cases that can be written: 3
 Test cases will be written with Empty String  , NULL string
and a NON NULL String value for  the parameter
Method:
NS_IMETHOD  RemoveFromClassPath(const char* dirPath) = 0 ;
Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 3
Test cases will be written with Empty String  , NULL string and
a NON NULL String value for  the parameter
Method:
  NS_IMETHOD  GetJavaWrapper(JNIEnv* jenv, jint obj, jobject
*jobj) = 0;
 Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 6
Test cases will be written with  NULL and a NON NULL  value
for  the parameters jenv , jobj and min_value
and max_value for obj.
Method:
  NS_IMETHOD  CreateSecureEnv(JNIEnv* proxyEnv, nsISecureEnv*
*outSecureEnv) = 0;
 Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with  NULL and a NON NULL  value
for  the parameters
Method:
  NS_IMETHOD  SpendTime(PRUint32 timeMillis) = 0;
 Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with  min_value and max_value or the
unsigned int.
Total number of test cases for this Interface : 21
 
 Implemented in :  mozilla
 Number of test cases that can be written: 3
 Test cases will be written with Empty String  , NULL string
and a NON NULL String value for  the parameter
 Method:
   NS_IMETHOD  GetCodeBase(const char* *result) = 0;
 Implemented in : mozilla
  Number of test cases that can be written: 3
 Test cases will be written with Empty String  , NULL string
and a NON NULL String value for  the parameter
Method:
 NS_IMETHOD GetArchive(const char* *result) = 0;
 Implemented in :  mozilla
 Number of test cases that can be written: 3
 Test cases will be written with Empty String  , NULL string
and a NON NULL String value for  the parameter
 Method:
   NS_IMETHOD  GetName(const char* *result) = 0;
 Implemented in : mozilla
  Number of test cases that can be written: 3
 Test cases will be written with Empty String  , NULL string
and a NON NULL String value for  the parameter
Method:
   NS_IMETHOD  GetMayScript(PRBool *result) = 0;
 Implemented in : mozilla
  Number of test cases that can be written: 2
 Test cases will be written with true or false values.
Total number of test cases for this Interface : 14
 
Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 1
Method:
        NS_IMETHOD  Hide(void);
Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 1
Method:
        NS_IMETHOD  IsVisisble(void);
Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 1
Total number of test cases for this Interface : 3
 
 All the methods in this interface are not implemented in the mozilla
 code as well as the Kestrel code. So not sure if we need to test
these
methods.
 
 
These 2 methods are not implemented in mozilla code for OJI as well
as Kestrel code
for windows.
Method:
NS_IMETHOD IsLiveConnectEnabled(PRBool& outEnabled) = 0;;
 Implemented in :  mozilla code for OJI
Method:
NS_IMETHOD InitLiveConnectClasses(JSContext* context, JSObject* globalObject)
= 0;
 Implemented in :  mozilla code for OJI
Method:
NS_IMETHOD WrapJavaObject(JSContext* context, jobject javaObject, JSObject*
*outJSObject) = 0;
 Implemented in :  mozilla code for OJI.
 I guess these methods get called from the mozilla main thread.
Hence
I do not know a way to force some values for the parameters in the
above
 Number of test cases that can be written: NONE
Total number of test cases for this Interface : NONE
 
Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 1
Method:
        NS_IMETHOD  Hide(void);
Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 1
Method:
        NS_IMETHOD  IsVisisble(void);
Implemented in :mozilla and Kestrel code for windows
Number of test cases that can be written: 1
Total number of test cases for this Interface : 3
 
 
Method:
NS_IMETHOD CallMethod(/*[in]*/  jni_type type,
                         
/*[in]*/  jobject obj,
                         
/*[in]*/  jmethodID methodID,
                         
/*[in]*/  jvalue *args,
                         
/*[out]*/ jvalue* result,
                         
/*[in]*/  nsISecurityContext* ctx = NULL) = 0;
Implemented in:a mozilla and kestrel code for windows
Number of test cases that can be written: 10
Test cases will be written with Null and NON NULL values for type ,
                 
obj, methodID , args , result
 
Method:
NS_IMETHOD NS_IMETHOD CallNonvirtualMethod(/*[in]*/  jni_type
type,
                                   
/*[in]*/  jobject obj,
                                   
/*[in]*/  jclass clazz,
                                   
/*[in]*/  jmethodID methodID,
                                   
/*[in]*/  jvalue *args,
                                   
/*[out]*/ jvalue* result,
                                   
/*[in]*/  nsISecurityContext* ctx = NULL) =0;
Implemented in: mozilla and kestrel
Number of test cases that can be written: 12
Test cases will be written with Null and NON NULL values for type ,
                 
obj, methodID , args , result
Method:
NS_IMETHOD GetField(/*[in]*/  jni_type type,
                       
/*[in]*/  jobject obj,
                       
/*[in]*/  jfieldID fieldID,
                       
/*[out]*/ jvalue* result,
                       
/*[in]*/  nsISecurityContext* ctx = NULL) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 8
Test cases will be written with NULL and NON NULL values for type,
          obj, fieldID
, result
Method:
NS_IMETHOD SetField(/*[in]*/ jni_type type,
                       
/*[in]*/ jobject obj,
                       
/*[in]*/ jfieldID fieldID,
                       
/*[in]*/ jvalue val,
                       
/*[in]*/ nsISecurityContext* ctx = NULL) = 0;
Implemented in: mozilla and kestrel
Number of test cases that can be written: 8
Test cases will be written with NULL and NON NULL values for type,
      obj, filedID , val.
Method:
NS_IMETHOD CallStaticMethod(/*[in]*/  jni_type type,
                               
/*[in]*/  jclass clazz,
                               
/*[in]*/  jmethodID methodID,
                               
/*[in]*/  jvalue *args,
                               
/*[out]*/ jvalue* result,
                               
/*[in]*/  nsISecurityContext* ctx = NULL) = 0;
Implemented in: mozilla and kestrel
Number of test cases that can be written:  10
Test cases will be written with NULL and NON NULL values for type,
clazz , methodID, args , result.
Method:
NS_IMETHOD GetStaticField(/*[in]*/  jni_type type,
                             
/*[in]*/  jclass clazz,
                             
/*[in]*/  jfieldID fieldID,
                             
/*[out]*/ jvalue* result,
                             
/*[in]*/  nsISecurityContext* ctx = NULL) = 0;
Implemented in: mozilla and kestrel
Number of test cases that can be written: 8
Test cases will be written with  NULL and NON NULL values for
type,
    clazz, fieldID, result.
Method:
NS_IMETHOD SetStaticField(/*[in]*/ jni_type type,
                             
/*[in]*/ jclass clazz,
                             
/*[in]*/ jfieldID fieldID,
                             
/*[in]*/ jvalue val,
                             
/*[in]*/ nsISecurityContext* ctx = NULL) = 0;
Implemented in: mozilla and kestrel
Number of test cases that can be written: 8
Test cases will be written with NULL and NON NULL values for type,
    clazz, fieldID, result
Method:
NS_IMETHOD GetVersion(/*[out]*/ jint* version) = 0;
Implemented in: mozilla and kestrel
Number of test cases that can be written: 2
Test cases will be written with max_value and min_value for
 the machine dependent int.
Method:
NS_IMETHOD DefineClass(/*[in]*/  const char* name,
                          
/*[in]*/  jobject loader,
                          
/*[in]*/  const jbyte *buf,
                          
/*[in]*/  jsize len,
                          
/*[out]*/ jclass* clazz) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 10
Test cases will be written with  Empty String string , NULL and
NON NULL string for name,
NULL and NON NULL values for loader , Empty String string , NULL and
NON NULL string for buf,
 min_value and max_value for len
Method:
NS_IMETHOD FindClass(/*[in]*/  const char* name,
                        
/*[out]*/ jclass* clazz) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written:  3
Test cases will be written with Empty String string ,
NULL and NON NULL string for name.
 
Method:
NS_IMETHOD GetSuperclass(/*[in]*/  jclass sub,
                            
/*[out]*/ jclass* super) = 0;
Implemented in:mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with  NULL and NON NULL values for
sub ,
 
Method:
NS_IMETHOD IsAssignableFrom(/*[in]*/  jclass sub,
                               
/*[in]*/  jclass super,
                               
/*[out]*/ jboolean* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written withNULL and NON NULL values for sub,
 NULL and NON NULL vlaues for  super .
 
Method:
NS_IMETHOD Throw(/*[in]*/  jthrowable obj,
                    
/*[out]*/ jint* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NON NULL values for obj
Method:
NS_IMETHOD ThrowNew(/*[in]*/  jclass clazz,
                       
/*[in]*/  const char *msg,
                       
/*[out]*/ jint* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 5
Test cases will be written with  NULL and NON NULL values for
clazz,
empty string , Null string , Non null string values
Method:
NS_IMETHOD ExceptionOccurred(/*[out]*/ jthrowable* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 1
 
Method:
NS_IMETHOD ExceptionDescribe(void) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 1
 
Method:
NS_IMETHOD ExceptionClear(void) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 1
 
Method:
NS_IMETHOD FatalError(/*[in]*/ const char* msg) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written:  3
Test cases will be written with Empty  string , NULL string and
NON NULL string
values for  msg
Method:
NS_IMETHOD NewGlobalRef(/*[in]*/  jobject lobj,
                           
/*[out]*/ jobject* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NON NULL values for lobj
Method:
NS_IMETHOD DeleteGlobalRef(/*[in]*/ jobject gref) = 0;
Implemented in:mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with with NULL and NON NULL values for gref
Method:
NS_IMETHOD DeleteLocalRef(/*[in]*/ jobject obj) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NON NULL values for obj
Method:
NS_IMETHOD IsSameObject(/*[in]*/  jobject obj1,
                           
/*[in]*/  jobject obj2,
                           
/*[out]*/ jboolean* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with NULL and NON NULL values for
obj1  and obj2
 
Method:
NS_IMETHOD AllocObject(/*[in]*/  jclass clazz,
                          
/*[out]*/ jobject* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NON NULL values for
clazz.
Method:
NS_IMETHOD GetObjectClass(/*[in]*/  jobject obj,
                             
/*[out]*/ jclass* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL nad NON NULL values  for
obj
Method:
NS_IMETHOD IsInstanceOf(/*[in]*/  jobject obj,
                           
/*[in]*/  jclass clazz,
                           
/*[out]*/ jboolean* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with NULL and NON NULL values for
obj, NULL and NON NULL values for clazz.
Method:
NS_IMETHOD GetMethodID(/*[in]*/  jclass clazz,
                          
/*[in]*/  const char* name,
                          
/*[in]*/  const char* sig,
                          
/*[out]*/ jmethodID* id) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 8
Test cases will be written with NULL and NON NULL values for class,
empty string , NULL String and NON NULL string values for name and
sig
Method:
NS_IMETHOD GetFieldID(/*[in]*/  jclass clazz,
                         
/*[in]*/  const char* name,
                         
/*[in]*/  const char* sig,
                         
/*[out]*/ jfieldID* id) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 8
Test cases will be written with NULL and NON NULL values for clazz,
empty string , NULL String and NON NULL string values for name and
sig
Method:
NS_IMETHOD GetStaticMethodID(/*[in]*/  jclass clazz,
                                
/*[in]*/  const char* name,
                                
/*[in]*/  const char* sig,
                                
/*[out]*/ jmethodID* id) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 8
Test cases will be written with NULL and NON NULL values for clazz,
empty string , NULL String and NON NULL string values for name and
sig
Method:
NS_IMETHOD GetStaticFieldID(/*[in]*/  jclass clazz,
                               
/*[in]*/  const char* name,
                               
/*[in]*/  const char* sig,
                               
/*[out]*/ jfieldID* id) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 8
Test cases will be written with NULL and NON NULL values for clazz,
empty string , NULL String and NON NULL string values for name and
sig
Method:
NS_IMETHOD NewString(/*[in]*/  const jchar* unicode,
                        
/*[in]*/  jsize len,
                        
/*[out]*/ jstring* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with NULL and NON NULL values for
unicode  and min and max_value for len
Method:
NS_IMETHOD GetStringLength(/*[in]*/  jstring str,
                              
/*[out]*/ jsize* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NON NULL values for str
Method:
NS_IMETHOD GetStringChars(/*[in]*/  jstring str,
                             
/*[in]*/  jboolean *isCopy,
                             
/*[out]*/ const jchar** result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with  NULL and NON NULL values for
str
and NULL and NON NULL values for chars
 
 
Method:
NS_IMETHOD ReleaseStringChars(/*[in]*/  jstring str,
                                 
/*[in]*/  const jchar *chars) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with NULL and NON NULL values for str
and NULL and NON NULL values for chars
Method:
NS_IMETHOD NewStringUTF(/*[in]*/  const char *utf,
                           
/*[out]*/ jstring* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NOT NULL values for utf
Method:
NS_IMETHOD GetStringUTFLength(/*[in]*/  jstring str,
                                 
/*[out]*/ jsize* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NOT NULL values for str
Method:
NS_IMETHOD GetStringUTFChars(/*[in]*/  jstring str,
                                
/*[in]*/  jboolean *isCopy,
                                
/*[out]*/ const char** result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with NULL and NOT NULL values for str,
NULL and NOT NULL values for isCopy, empty string , NULL string .
 
Method:
NS_IMETHOD ReleaseStringUTFChars(/*[in]*/  jstring str,
                                    
/*[in]*/  const char *chars) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with NULL and NON NULLvalues for str and
chars
Method:
NS_IMETHOD GetArrayLength(/*[in]*/  jarray array,
                             
/*[out]*/ jsize* result) = 0;
Implemented in:  only kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NOT NULL values for array.
Method:
NS_IMETHOD NewObjectArray(/*[in]*/  jsize len,
                                       
/*[in]*/  jclass clazz,
                       
/*[in]*/  jobject init,
                       
/*[out]*/ jobjectArray* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 6
Test cases will be written with max and min_values for len,
NULL and NOT NULL values for clazz, NULL and NOT NULL values for init.
Method:
NS_IMETHOD GetObjectArrayElement(/*[in]*/  jobjectArray array,
                                    
/*[in]*/  jsize index,
                                    
/*[out]*/ jobject* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with NULL and NOT NULL values for array,
max and min_value for index
Method:
NS_IMETHOD SetObjectArrayElement(/*[in]*/  jobjectArray array,
                                    
/*[in]*/  jsize index,
                                    
/*[in]*/  jobject val) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 6
Test cases will be written with NULL and NOT NULL values for 
array,
min and max_values for index and NULL and NOT NULL values for val
Method:
NS_IMETHOD NewArray(/*[in]*/ jni_type element_type,
                       
/*[in]*/  jsize len,
                       
/*[out]*/ jarray* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 4
Test cases will be written with NULL and NOT NULL values for element_type
min and max_values for len
Method:
NS_IMETHOD GetArrayElements(/*[in]*/  jni_type type,
                               
/*[in]*/  jarray array,
                               
/*[in]*/  jboolean *isCopy,
                               
/*[out]*/ void* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written:6
Test cases will be written with NULL and NOT NULL values for type,
NULL and NOT NULL values for array, NULL and NOT NULL values for isCopy
Method:
NS_IMETHOD ReleaseArrayElements(/*[in]*/ jni_type type,
                                   
/*[in]*/ jarray array,
                                   
/*[in]*/ void *elems,
                                   
/*[in]*/ jint mode) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 8
Test cases will be written with NULL and NOT NULL values for type
NULL and NOT NULL values for array , NULL and NOT NULL values for elems,
max and min values for mode
 
Method:
NS_IMETHOD GetArrayRegion(/*[in]*/  jni_type type,
                             
/*[in]*/  jarray array,
                             
/*[in]*/  jsize start,
                             
/*[in]*/  jsize len,
                             
/*[out]*/ void* buf) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 6
Test cases will be written with NULL and NOT NULL values for type,
max and min values for start and len
 
 
Method:
NS_IMETHOD SetArrayRegion(/*[in]*/  jni_type type,
                             
/*[in]*/  jarray array,
                             
/*[in]*/  jsize start,
                             
/*[in]*/  jsize len,
                             
/*[in]*/  void* buf) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 8
Test cases will be written with NULL and NOT NULL valus for type,
NULL and NOT NULL values for array, min and max values for start ,
len.
Method:
NS_IMETHOD RegisterNatives(/*[in]*/  jclass clazz,
                              
/*[in]*/  const JNINativeMethod *methods,
                              
/*[in]*/  jint nMethods,
                              
/*[out]*/ jint* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 6
Test cases will be written with NULL and NOT NULL values for clazz,
JNINativeMethod,
min and max value for  nMethods
Method:
NS_IMETHOD UnregisterNatives(/*[in]*/  jclass clazz,
                                
/*[out]*/ jint* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NOT NULL values for clazz
Method:
NS_IMETHOD MonitorEnter(/*[in]*/  jobject obj,
                           
/*[out]*/ jint* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written:2
Test cases will be written with NULL and NOT NULL values for obj
Method:
NS_IMETHOD MonitorExit(/*[in]*/  jobject obj,
                          
/*[out]*/ jint* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NOT NULL values for obj
Method:
NS_IMETHOD GetJavaVM(/*[in]*/  JavaVM **vm,
                        
/*[out]*/ jint* result) = 0;
Implemented in: mozilla and kestrel code for windows
Number of test cases that can be written: 2
Test cases will be written with NULL and NOT NULL values for vm
Total number of (possible) test cases for this Interface : 246 (phew..)
(May be even more ...)
 
Method:
NS_IMETHOD Sleep(PRUint32 milli = 0) = 0;
Implemented in: mozilla
Number of test cases that can be written: 2
Test cases will be written with max and min values for milli
Method:
NS_IMETHOD EnterMonitor(void* address) = 0;
Implemented in: mozilla
Number of test cases that can be written: 2
Test cases will be written with NULL and NOT NULL values for address
tested)
Method:
NS_IMETHOD Wait(void* address, PRUint32 milli = 0) = 0;
Implemented in: mozilla
Number of test cases that can be written: 4
Test cases will be writtenwith NULL and NOT NULL values for address
and min and max value for milli
Method:
NS_IMETHOD Notify(void* address) = 0;
Implemented in:mozilla
Number of test cases that can be written: 2
Test cases will be written with NULL and NOT NULL values for address
(Not sure how this can be tested)
Method:
NS_IMETHOD NotifyAll(void* address) = 0;
Implemented in:mozilla
Number of test cases that can be written: 2
Test cases will be written with NULL and NOT NULL values for address
 
Method:
NS_IMETHOD CreateThread(PRUint32* threadID, nsIRunnable* runnable)
= 0;
Implemented in:mozilla
Number of test cases that can be written: 4
Test cases will be written with min and max value for threadID and
NULL and NOT NULL
values for runnable.
Method:
NS_IMETHOD PostEvent(PRUint32 threadID, nsIRunnable* runnable, PRBool
async) = 0;
Implemented in:mozilla and kestrel code for windows
Number of test cases that can be written: 6
Test cases will be written with min and max value for threadID and
NULL and NOT NULL
values for runnable, true or false value for async
Total number of test cases for this Interface : 24
 
|  |  |  |  | 
| 11/04/99 | 1.0 | Geetha Vaidyanaathan | first draft |