diff --git a/unitTests/compiled/ut-ruleset.zip b/unitTests/compiled/ut-ruleset.zip index 34f971f2a..ebf1d9e6e 100644 Binary files a/unitTests/compiled/ut-ruleset.zip and b/unitTests/compiled/ut-ruleset.zip differ diff --git a/unitTests/source/base/constants.xule b/unitTests/source/base/constants.xule index 1c2129611..c985a67c2 100644 --- a/unitTests/source/base/constants.xule +++ b/unitTests/source/base/constants.xule @@ -73,6 +73,11 @@ constant $STATEMENT_CUBES = FILTER $INSTANCE1.taxonomy.cubes where $item.drs-role.description.contains('- Statement -') +/* Statement Cubes */ + + constant $NOTES_CUBES = FILTER $INSTANCE1.taxonomy.cubes where $item.drs-role.description.contains('- Disclosure -') + + /* Constant representing an XBRL instance */ constant $INSTANCE3 = instance('https://www.sec.gov/Archives/edgar/data/1742770/000110465923049651/viot-20221231x20f.htm') diff --git a/unitTests/source/base/factFilters.xule b/unitTests/source/base/factFilters.xule index d750bd4fe..be376f861 100644 --- a/unitTests/source/base/factFilters.xule +++ b/unitTests/source/base/factFilters.xule @@ -404,9 +404,9 @@ output CUBEFILT001 list({covered @instance = $INSTANCE1 @cube in $STATEMENT_CUBES}).count output CUBEFILT002 -/* 243 */ +/* 28 */ - list({covered @instance = $INSTANCE1 @cube in $STATEMENT_CUBES @cube in $STATEMENT_CUBES}).count + list({covered @instance = $INSTANCE1 @cube in $STATEMENT_CUBES @cube not in $STATEMENT_CUBES}).count output CUBEFILT003 /* 1185 */ @@ -414,6 +414,16 @@ output CUBEFILT003 list({covered @instance = $INSTANCE1 @cube not in $STATEMENT_CUBES}).count output CUBEFILT004 +/* 1185 */ + + list({covered @instance = $INSTANCE1 @cube in $STATEMENT_CUBES @cube in $NOTES_CUBES}).count + +output CUBEFILT005 +/* */ + + list({covered @instance = $INSTANCE1 @cube in $NOTES_CUBES}).count + +output CUBEFILT006 /* 14 */ list({covered @instance = $INSTANCE1 @concept=PaymentsToAcquireProductiveAssets @cube.name = StatementTable @cube.drs-role = 'http://www.fcx.com/role/ConsolidatedStatementsofCashFlowsUnaudited'}).count diff --git a/unitTests/source/base/factFunctions.xule b/unitTests/source/base/factFunctions.xule index af1718550..a521bcc91 100644 --- a/unitTests/source/base/factFunctions.xule +++ b/unitTests/source/base/factFunctions.xule @@ -1,110 +1,140 @@ -/* FactFunctions */ +/* FactFunctions */ output FACT001 /* -6 */ max(list([covered @instance = $INSTANCE1 @Assets])).decimals - + output FACT002 /* None */ first(list([covered @instance = $INSTANCE1 @EarningsPerShareTextBlock])).decimals - + output FACT003 /* 45436000000 */ max(list([covered @instance = $INSTANCE1 @Assets where $fact.decimals > -7])) - + output FACT004 /* us-gaap:Assets */ max(list([covered @instance = $INSTANCE1 @Assets])).concept - + output FACT005 /* None */ max(list([covered @instance = $INSTANCE1 @Assets where $fact.concept == Assets])) - + output FACT006 /* 45436000000 */ max(list([covered @instance = $INSTANCE1 @Assets where $fact.concept.name == Assets])) - + output FACT007 /* 44377 */ max(list([covered @instance = $INSTANCE1 @Assets])).period - + output FACT008 /* 2021-01-01 to 2021-06-30 */ first(list([covered @instance = $INSTANCE1 @EarningsPerShareTextBlock])).period - + output FACT009 /* 45436000000 */ max(list([covered @instance = $INSTANCE1 @Assets where $fact.period > date('2020-12-30')])) - + output FACT010 /* USD */ max(list([covered @instance = $INSTANCE1 @Assets])).unit - + output FACT011 /* None */ first(list([covered @instance = $INSTANCE1 @EarningsPerShareTextBlock])).unit - + output FACT012 /* 45436000000 */ max(list([covered @instance = $INSTANCE1 @Assets where $fact.unit == unit(iso4217:USD)])) - + output FACT013 /* http://www.sec.gov/CIK=0000831259 */ max(list([covered @instance = $INSTANCE1 @Assets])).entity - + output FACT014 /* http://www.sec.gov/CIK=0000831259 */ first(list([covered @instance = $INSTANCE1 @EarningsPerShareTextBlock])).entity - + output FACT015 /* 45436000000 */ max(list([covered @instance = $INSTANCE1 @Assets where $fact.entity.id == '0000831259'])) - + output FACT016 /* fcx:CopperInConcentratesMember */ max(list({covered @instance = $INSTANCE1 @RevenueFromContractWithCustomerIncludingAssessedTax @srt:ProductOrServiceAxis=*})).dimension(srt:ProductOrServiceAxis) - + output FACT017 /* 1115000000 */ max(list({covered @instance = $INSTANCE1 @RevenueFromContractWithCustomerIncludingAssessedTax where $fact.dimension(srt:ProductOrServiceAxis).name == GoldMember })) - + output FACT018 -/* id3VybDovL2RvY3MudjEvZG9jOjBjNGY0MDFmYTkzZDQ2ZTI4ZThhZjAxZmZjM2Y0YTZlL3NlYzowYzRmNDAxZmE5M2Q0NmUyOGU4YWYwMWZmYzNmNGE2ZV84NS9mcmFnOjc3ODM5NWZjZGU2YjRlMGJhMzE3MGI3Nzc2NmFjMTNkL3RhYmxlOmMzZmNlZTEzMDUyNjRlYzc4NTYyYmVhM2Q0ZDVmYmFiL3RhYmxlcmFuZ2U6YzNmY2VlMTMwNTI2NGVjNzg1NjJiZWEzZDRkNWZiYWJfMjMtMzMtMS0xLTA_c4eb4598-51a9-477f-b124-4d491471499d */ +/* */ + + max(list([covered @instance = $INSTANCE1 @PaymentsToAcquireProductiveAssets])).id - max(list([covered @instance = $INSTANCE1 @Assets])).id - output FACT019 -/* */ +/* none or 45436 */ max(list([covered @instance = $INSTANCE1 where $fact.id == 'id3VybDovL2RvY3MudjEvZG9jOjBjNGY0MDFmYTkzZDQ2ZTI4ZThhZjAxZmZjM2Y0YTZlL3NlYzowYzRmNDAxZmE5M2Q0NmUyOGU4YWYwMWZmYzNmNGE2ZV84NS9mcmFnOjc3ODM5NWZjZGU2YjRlMGJhMzE3MGI3Nzc2NmFjMTNkL3RhYmxlOmMzZmNlZTEzMDUyNjRlYzc4NTYyYmVhM2Q0ZDVmYmFiL3RhYmxlcmFuZ2U6YzNmY2VlMTMwNTI2NGVjNzg1NjJiZWEzZDRkNWZiYWJfMjMtMzMtMS0xLTA_c4eb4598-51a9-477f-b124-4d491471499d'])) - + output FACT020 /* 1739 */ max(list([covered @instance = $INSTANCE1 @Assets])).instance.facts.count - + output FACT021 /* FACT021 - Property 'name' is not a property of a 'cube' */ max(list([covered @instance = $INSTANCE1 @Assets])).cubes.name - + output FACT022 /* set(us-gaap:ScheduleOfCollaborativeArrangementsAndNoncollaborativeArrangementTransactionsTable, us-gaap:ScheduleOfSegmentReportingInformationBySegmentTable) */ max(list([covered @instance = $INSTANCE1 @Assets])).cubes.cube-concept + +output FACT023 +/* */ + + max(list({covered @instance = $INSTANCE3 @us-gaap-2022:AssetsFairValueDisclosure})).footnotes.role + +output FACT024 +/* */ + + max(list({covered @instance = $INSTANCE3 @concept=us-gaap-2022:AssetsFairValueDisclosure @us-gaap-2022:FairValueByFairValueHierarchyLevelAxis=us-gaap-2022:FairValueInputsLevel2Member})).footnotes.lang + +output FACT025 +/* */ + + max(list({covered @instance = $INSTANCE3 @concept=us-gaap-2022:AssetsFairValueDisclosure @us-gaap-2022:FairValueByFairValueHierarchyLevelAxis=FairValueInputsLevel2Member})) + +output FACT026 +/* */ + + max(list({covered @instance = $INSTANCE3 @us-gaap-2022:AssetsFairValueDisclosure @us-gaap-2022:FairValueByFairValueHierarchyLevelAxis=us-gaap-2022:FairValueInputsLevel2Member})).footnotes.footnote-role + +output FACT027 +/* */ + + max(list({covered @instance = $INSTANCE3 @concept=us-gaap-2022:AssetsFairValueDisclosure @us-gaap-2022:FairValueByFairValueHierarchyLevelAxis =us-gaap-2022:FairValueInputsLevel2Member})).footnotes.arcrole + +output FACT028 +/* */ + + max(list({covered @instance = $INSTANCE3 @concept=us-gaap-2022:AssetsFairValueDisclosure @us-gaap-2022:FairValueByFairValueHierarchyLevelAxis=us-gaap-2022:FairValueInputsLevel2Member})).footnotes.arcrole diff --git a/unitTests/source/base/inlineFunctions.xule b/unitTests/source/base/inlineFunctions.xule index a375b51d8..2e995ea76 100644 --- a/unitTests/source/base/inlineFunctions.xule +++ b/unitTests/source/base/inlineFunctions.xule @@ -2,7 +2,7 @@ output INLIN001 /* */ - { @instance=$INSTANCE3 @concept=us-gaap-2022:RelatedPartyTransactionSellingGeneralAndAdministrativeExpensesFromTransactionsWithRelatedParty }.inline-ancestors + max(list({@instance = $INSTANCE3 @concept=us-gaap-2022:AssetsFairValueDisclosure})).footnotes.lang output INLIN002 /* */