TEST(Account, shouldAllowOneParent) { // given AccountPtr parentAcc(new Account()); parentAcc->setName("parent"); AccountPtr childAcc(new Account()); childAcc->setName("child"); // when childAcc->setParent(parentAcc); // then ASSERT_EQ(parentAcc, childAcc->getParent()); }
already_AddRefed<nsIAccessibleTable> nsHTMLTableCellAccessible::GetTableAccessible() { nsCOMPtr<nsIAccessible> childAcc(this), parentAcc; childAcc->GetParent(getter_AddRefs(parentAcc)); while (parentAcc) { PRUint32 role = nsAccUtils::Role(parentAcc); if (role == nsIAccessibleRole::ROLE_TABLE || role == nsIAccessibleRole::ROLE_TREE_TABLE) { nsIAccessibleTable* tableAcc = nsnull; CallQueryInterface(parentAcc, &tableAcc); return tableAcc; } parentAcc.swap(childAcc); childAcc->GetParent(getter_AddRefs(parentAcc)); } return nsnull; }