rem: const translation_format *pExpectedOuts, uint32 nExpectedOuts)
add: const translation_format *pExpectedOuts, uint32 nExpectedOuts, int32 expectedVer)
context: TranslatorLoadAddOnTest(const char *path, BTestCase *ptest,	const translation_format *pExpectedIns, uint32 nExpectedIns,	const translation_format *pExpectedOuts, uint32 nExpectedOuts){	// Make sure the add_on loads	ptest->NextSubTest();	image_id image = load_add_on(path);	CPPUNIT_ASSERT(image >= 0);		// Load in function to make the object	ptest->NextSubTest();	BTranslator *(*pMakeNthTranslator)(int32 n,image_id you,uint32 flags,...);	status_t err = get_image_symbol(image, "make_nth_translator",		B_SYMBOL_TYPE_TEXT, (void **)&pMakeNthTranslator);	CPPUNIT_ASSERT(!err);	// Make sure the function returns a pointer to a BTranslator	ptest->NextSubTest();	BTranslator *ptran = pMakeNthTranslator(0, image, 0);	CPPUNIT_ASSERT(ptran);		// Make sure the function only returns one BTranslator	ptest->NextSubTest();	CPPUNIT_ASSERT(!pMakeNthTranslator(1, image, 0));	CPPUNIT_ASSERT(!pMakeNthTranslator(2, image, 0));	CPPUNIT_ASSERT(!pMakeNthTranslator(3, image, 0));	CPPUNIT_ASSERT(!pMakeNthTranslator(16, image, 0));	CPPUNIT_ASSERT(!pMakeNthTranslator(1023, image, 0));		// Run a number of tests on the BTranslator object	TestBTranslator(ptest, ptran, pExpectedIns, nExpectedIns,		pExpectedOuts, nExpectedOuts);		// NOTE: this function Release()s ptran	ptran = NULL;		// Unload Add-on	ptest->NextSubTest();	CPPUNIT_ASSERT(unload_add_on(image) == B_OK); }