// --------------------------------------------------------------------------- // Local functions // --------------------------------------------------------------------------- static bool constructorTests() { // Do a basic constructor with just the count of elements ValueArrayOf<double> testArray1(255); // Make sure that it has the right initial size if (testArray1.length() != 255) { XERCES_STD_QUALIFIER wcout << L" The ctor created wrong length() value" << XERCES_STD_QUALIFIER endl; return false; } // Copy construct another array from it and test the length ValueArrayOf<double> testArray2(testArray1); if (testArray2.length() != 255) { XERCES_STD_QUALIFIER wcout << L" The copy ctor created wrong length() value" << XERCES_STD_QUALIFIER endl; return false; } // Test the equality of the two arrays if (testArray1 != testArray2) { XERCES_STD_QUALIFIER wcout << L" The copy ctor created unequal arrays" << XERCES_STD_QUALIFIER endl; return false; } // // Do another one where we provide the initial values. // double initValues[] = { 1.1, 2.2, 3.3, 4.4 }; ValueArrayOf<double> testArray3(initValues, 4); if (testArray3.length() != 4) { XERCES_STD_QUALIFIER wcout << L" The init values ctor created wrong length() value" << XERCES_STD_QUALIFIER endl; return false; } // Make sure the initial values are correct if ((testArray3[0] != 1.1) || (testArray3[1] != 2.2) || (testArray3[2] != 3.3) || (testArray3[3] != 4.4)) { XERCES_STD_QUALIFIER wcout << L" The init values ctor did not init contents correctly" << XERCES_STD_QUALIFIER endl; return false; } // // Create another array of a different size and assign one of the // existing ones to it and make sure that they are equal. // ValueArrayOf<double> testArray4(15); testArray4 = testArray3; if (testArray4 != testArray3) { XERCES_STD_QUALIFIER wcout << L" Assignment did not create equal arrays" << XERCES_STD_QUALIFIER endl; return false; } return true; }
// --------------------------------------------------------------------------- // Local functions // --------------------------------------------------------------------------- static bool constructorTests() { // Some values to test with double testVals[16]; unsigned int index; for (index = 0; index < 16; index++) testVals[index] = index; // Do a basic constructor with just the count of elements RefArrayOf<double> testArray1(255); // Make sure that it has the right initial size if (testArray1.length() != 255) { XERCES_STD_QUALIFIER wcout << L" The ctor created wrong length() value" << XERCES_STD_QUALIFIER endl; return false; } // Copy construct another array from it and test the length RefArrayOf<double> testArray2(testArray1); if (testArray2.length() != 255) { XERCES_STD_QUALIFIER wcout << L" The copy ctor created wrong length() value" << XERCES_STD_QUALIFIER endl; return false; } // Test the equality of the two arrays if (testArray1 != testArray2) { XERCES_STD_QUALIFIER wcout << L" The copy ctor created unequal arrays" << XERCES_STD_QUALIFIER endl; return false; } // // Do another one where we provide the initial values. // double* initValues[16]; for (index = 0; index < 16; index++) initValues[index ] = &testVals[index]; RefArrayOf<double> testArray3(initValues, 16); if (testArray3.length() != 16) { XERCES_STD_QUALIFIER wcout << L" The init values ctor created wrong length() value" << XERCES_STD_QUALIFIER endl; return false; } // Make sure the initial values are correct for (index = 0; index < 16; index++) { if (*testArray3[index] != (double)index) { XERCES_STD_QUALIFIER wcout << L" The init values ctor did not init contents correctly" << XERCES_STD_QUALIFIER endl; return false; } } // // Create another array of a different size and assign one of the // existing ones to it and make sure that they are equal. // RefArrayOf<double> testArray4(15); testArray4 = testArray3; if (testArray4 != testArray3) { XERCES_STD_QUALIFIER wcout << L" Assignment did not create equal arrays" << XERCES_STD_QUALIFIER endl; return false; } return true; }