/** @SYMTestCaseID SYSLIB-BAFL-CT-4063 @SYMREQ CR1328 @SYMTestCaseDesc To ensure the correct attribute values are retrieved when there @SYMTestCaseDesc are multiple ROFS sections which may each contain a different @SYMTestCaseDesc version of the deviceattributes.ini file. @SYMTestCaseDesc @SYMTestCaseDesc Note: When run on hardware, this test needs to be part of a ROM @SYMTestCaseDesc which is made up of a core ROM image and extension ROM images. @SYMTestCaseDesc Each extension image should contain a different version of the @SYMTestCaseDesc same INI file. The INI files should contain data which makes @SYMTestCaseDesc sure the following things are covered: @SYMTestCaseDesc - There is an INI file in the core ROM image which contains at @SYMTestCaseDesc least 1 device attribute. This attribute should not appear in @SYMTestCaseDesc any of the other versions of the INI file which are contained @SYMTestCaseDesc in the extension ROM images. @SYMTestCaseDesc - There is an INI file in one of the extension ROM images which @SYMTestCaseDesc contains at least 1 device attribute. This attribute should @SYMTestCaseDesc not appear in the INI file contained in the core ROM image. @SYMTestCaseDesc - There is an INI file in the core ROM image which contains at @SYMTestCaseDesc least 1 device attribute. This attribute should appear in another @SYMTestCaseDesc version of the INI file in one of the extension ROM images. @SYMTestCaseDesc - There is an INI file in one of the extension ROM images which @SYMTestCaseDesc contains at least 1 device attribute. This attribute should @SYMTestCaseDesc appear in another version of the INI file in one of the @SYMTestCaseDesc extension ROM images @SYMTestPriority HIGH @SYMTestStatus Implemented @SYMTestActions 1. Create an instance of CDeviceTypeInformation by calling @SYMTestActions SysUtil::GetDeviceTypeInfo. @SYMTestActions 2. Call each of CDeviceTypeInformation member functions. @SYMTestActions 3. Check the retrieved value and return codes. @SYMTestExpectedResults GetUIPlatformName should return a default value and return @SYMTestExpectedResults CDeviceTypeInformation::KDefaultValue. The rest of the APIs @SYMTestExpectedResults should retrieve provisioned values and return KErrNone. */ void TestMultipleRofsSectionsL() { CDeviceTypeInformation* attribs = SysUtil::GetDeviceTypeInfoL(); CleanupStack::PushL(attribs); TPtrC16 buffer; TInt err = attribs->GetManufacturerName(buffer); test2(err, KErrNone); TInt difference = buffer.Compare(KTest1ManufacturerName); test.Printf(_L("Expected value = %S\nActualValue = %S\n\n"), &KTest1ManufacturerName, &buffer); test2(difference, 0); err = attribs->GetModelName(buffer); test2(err, KErrNone); difference = buffer.Compare(KTest1ModelName); test.Printf(_L("Expected value = %S\nActualValue = %S\n\n"), &KTest1ModelName, &buffer); test2(difference, 0); err = attribs->GetModelCode(buffer); test2(err, KErrNone); difference = buffer.Compare(KTest1ModelCode); test.Printf(_L("Expected value = %S\nActualValue = %S\n\n"), &KTest1ModelCode, &buffer); test2(difference, 0); err = attribs->GetRevisionID(buffer); test2(err, KErrNone); difference = buffer.Compare(KTest1RevisionID); test.Printf(_L("Expected value = %S\nActualValue = %S\n\n"), &KTest1RevisionID, &buffer); test2(difference, 0); err = attribs->GetDefaultDeviceName(buffer); test2(err, KErrNone); difference = buffer.Compare(KTest1DefaultDeviceName); test.Printf(_L("Expected value = %S\nActualValue = %S\n\n"), &KTest1DefaultDeviceName, &buffer); test2(difference, 0); err = attribs->GetUIPlatformName(buffer); test2(err, CDeviceTypeInformation::KDefaultValue); difference = buffer.Compare(KTest1UIPlatformName); test.Printf(_L("Expected value = %S\nActualValue = %S\n\n"), &KTest1UIPlatformName, &buffer); test2(difference, 0); TUint16 major, minor; err = attribs->GetUIPlatformVersion(major, minor); test2(err, KErrNone); test.Printf(_L("Expected major value = %d\nActual major value = %d\n"), KTest1UIPlatformVersionMajor, major); test.Printf(_L("Expected minor value = %d\nActual minor value = %d\n\n"), KTest1UIPlatformVersionMinor, minor); test2(major, KTest1UIPlatformVersionMajor); test2(minor, KTest1UIPlatformVersionMinor); err = attribs->GetUIPlatformVersion(buffer); test2(err, KErrNone); difference = buffer.Compare(KTest1UIPlatformVersion); test.Printf(_L("Expected value = %S\nActualValue = %S\n\n"), &KTest1UIPlatformVersion, &buffer); test2(difference, 0); err = attribs->GetOSVersion(major, minor); test2(err, KErrNone); test.Printf(_L("Expected major value = %d\nActual major value = %d\n"), KTest1OSVersionMajor, major); test.Printf(_L("Expected minor value = %d\nActual minor value = %d\n\n"), KTest1OSVersionMinor, minor); test2(major, KTest1OSVersionMajor); test2(minor, KTest1OSVersionMinor); err = attribs->GetOSVersion(buffer); test2(err, KErrNone); difference = buffer.Compare(KTest1OSVersion); test.Printf(_L("Expected value = %S\nActualValue = %S\n\n"), &KTest1OSVersion, &buffer); test2(difference, 0); err = attribs->GetAttribute(manufacturerAttributeUID, buffer); test2(err, KErrNone); difference = buffer.Compare(KTest1ManufacturerAttribute); test.Printf(_L("Expected value = %S\nActualValue = %S\n\n"), &KTest1ManufacturerAttribute, &buffer); test2(difference, 0); CleanupStack::PopAndDestroy(1); }