예제 #1
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test void shouldReportDuplicatePropertyIndexesAcrossRecordsInPropertyChainForNode()
        internal virtual void ShouldReportDuplicatePropertyIndexesAcrossRecordsInPropertyChainForNode()
        {
            // given
            ChainCheck check = new ChainCheck();

            RecordAccessStub records = new RecordAccessStub();

            RelationshipRecord master = records.Add(inUse(new RelationshipRecord(1, 2, 3, 4)));

            master.NextProp = 1;

            PropertyRecord firstRecord = inUse(new PropertyRecord(1));

            firstRecord.NextProp = 12;

            PropertyBlock firstBlock = new PropertyBlock();

            firstBlock.SingleBlock = 1;
            firstBlock.KeyIndexId  = 1;

            PropertyBlock secondBlock = new PropertyBlock();

            secondBlock.SingleBlock = 1;
            secondBlock.KeyIndexId  = 2;

            PropertyRecord secondRecord = inUse(new PropertyRecord(12));

            secondRecord.PrevProp = 1;

            PropertyBlock thirdBlock = new PropertyBlock();

            thirdBlock.SingleBlock = 1;
            thirdBlock.KeyIndexId  = 4;

            PropertyBlock fourthBlock = new PropertyBlock();

            fourthBlock.SingleBlock = 1;
            fourthBlock.KeyIndexId  = 1;

            firstRecord.AddPropertyBlock(firstBlock);
            firstRecord.AddPropertyBlock(secondBlock);
            secondRecord.AddPropertyBlock(thirdBlock);
            secondRecord.AddPropertyBlock(fourthBlock);

            records.Add(firstRecord);
            records.Add(secondRecord);

            // when
            Org.Neo4j.Consistency.report.ConsistencyReport_RelationshipConsistencyReport report = mock(typeof(Org.Neo4j.Consistency.report.ConsistencyReport_RelationshipConsistencyReport));
            CheckerEngine <RelationshipRecord, Org.Neo4j.Consistency.report.ConsistencyReport_RelationshipConsistencyReport> checkEngine = records.Engine(master, report);

            check.checkReference(master, firstRecord, checkEngine, records);
            records.CheckDeferred();

            // then
            verify(report).propertyKeyNotUniqueInChain();
        }
예제 #2
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test void shouldReportDuplicatePropertyIndexesInPropertyRecordForNode()
        internal virtual void ShouldReportDuplicatePropertyIndexesInPropertyRecordForNode()
        {
            // given
            ChainCheck check = new ChainCheck();

            RecordAccessStub records = new RecordAccessStub();

            NodeRecord master = records.Add(inUse(new NodeRecord(1, false, -1, 1)));

            PropertyRecord propertyRecord = inUse(new PropertyRecord(1));
            PropertyBlock  firstBlock     = new PropertyBlock();

            firstBlock.SingleBlock = 1;
            firstBlock.KeyIndexId  = 1;

            PropertyBlock secondBlock = new PropertyBlock();

            secondBlock.SingleBlock = 1;
            secondBlock.KeyIndexId  = 2;

            PropertyBlock thirdBlock = new PropertyBlock();

            thirdBlock.SingleBlock = 1;
            thirdBlock.KeyIndexId  = 1;

            propertyRecord.AddPropertyBlock(firstBlock);
            propertyRecord.AddPropertyBlock(secondBlock);
            propertyRecord.AddPropertyBlock(thirdBlock);

            records.Add(propertyRecord);

            // when
            Org.Neo4j.Consistency.report.ConsistencyReport_NodeConsistencyReport report = mock(typeof(Org.Neo4j.Consistency.report.ConsistencyReport_NodeConsistencyReport));
            CheckerEngine <NodeRecord, Org.Neo4j.Consistency.report.ConsistencyReport_NodeConsistencyReport> checkEngine = records.Engine(master, report);

            check.checkReference(master, propertyRecord, checkEngine, records);

            // then
            verify(report).propertyKeyNotUniqueInChain();
        }