//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void mustReportPeriod() public virtual void MustReportPeriod() { // given AssertableLogProvider logProvider = new AssertableLogProvider(true); Log log = logProvider.GetLog(typeof(IndexPopulationJob)); PhaseTracker phaseTracker = GetPhaseTracker(1, log); phaseTracker.EnterPhase(PhaseTracker_Phase.Scan); // when Sleep(1000); phaseTracker.EnterPhase(PhaseTracker_Phase.Write); // then AssertableLogProvider.LogMatcher firstEntry = AssertableLogProvider.inLog(typeof(IndexPopulationJob)).debug("TIME/PHASE Total: SCAN[totalTime=1s], Last 1 sec: SCAN[totalTime=1s]"); logProvider.AssertExactly(firstEntry); // when Sleep(1000); phaseTracker.EnterPhase(PhaseTracker_Phase.Scan); // then AssertableLogProvider.LogMatcher secondEntry = AssertableLogProvider.inLog(typeof(IndexPopulationJob)).debug("TIME/PHASE Total: SCAN[totalTime=1s], WRITE[totalTime=1s], Last 1 sec: WRITE[totalTime=1s]"); logProvider.AssertExactly(firstEntry, secondEntry); // when Sleep(1000); phaseTracker.EnterPhase(PhaseTracker_Phase.Write); // then AssertableLogProvider.LogMatcher thirdEntry = AssertableLogProvider.inLog(typeof(IndexPopulationJob)).debug("TIME/PHASE Total: " + "SCAN[totalTime=2s, avgTime=1s, minTime=0ns, maxTime=1s, nbrOfReports=2], " + "WRITE[totalTime=1s], " + "Last 1 sec: SCAN[totalTime=1s]"); logProvider.AssertExactly(firstEntry, secondEntry, thirdEntry); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void mustLogPhaseTracker() public virtual void MustLogPhaseTracker() { Label nodeLabel = Label.label("testLabel5"); string key = "key"; string value = "hej"; using (Transaction transaction = _database.beginTx()) { _database.createNode(nodeLabel).setProperty(key, value); transaction.Success(); } // when using (Transaction tx = _database.beginTx()) { _database.schema().indexFor(nodeLabel).on(key).create(); tx.Success(); } WaitForOnlineIndexes(); // then using (Transaction tx = _database.beginTx()) { ResourceIterator <Node> nodes = _database.findNodes(nodeLabel, key, value); long nodeCount = Iterators.count(nodes); assertEquals("expected exactly one hit in index but was ", 1, nodeCount); nodes.Close(); tx.Success(); } AssertableLogProvider.LogMatcher matcher = inLog(typeof(IndexPopulationJob)).info(containsString("TIME/PHASE Final:")); _logProvider.assertAtLeastOnce(matcher); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void mustReportMain() public virtual void MustReportMain() { // given AssertableLogProvider logProvider = new AssertableLogProvider(true); Log log = logProvider.GetLog(typeof(IndexPopulationJob)); PhaseTracker phaseTracker = GetPhaseTracker(log); phaseTracker.EnterPhase(PhaseTracker_Phase.Scan); Sleep(100); phaseTracker.EnterPhase(PhaseTracker_Phase.Write); Sleep(100); phaseTracker.EnterPhase(PhaseTracker_Phase.Scan); Sleep(100); phaseTracker.EnterPhase(PhaseTracker_Phase.Write); Sleep(100); phaseTracker.EnterPhase(PhaseTracker_Phase.Merge); Sleep(100); phaseTracker.EnterPhase(PhaseTracker_Phase.Build); Sleep(100); phaseTracker.EnterPhase(PhaseTracker_Phase.ApplyExternal); Sleep(100); phaseTracker.EnterPhase(PhaseTracker_Phase.Flip); Sleep(100); // when phaseTracker.Stop(); // then AssertableLogProvider.LogMatcher logMatcher = AssertableLogProvider.inLog(typeof(IndexPopulationJob)).info("TIME/PHASE Final: " + "SCAN[totalTime=200ms, avgTime=100ms, minTime=0ns, maxTime=100ms, nbrOfReports=2], " + "WRITE[totalTime=200ms, avgTime=100ms, minTime=0ns, maxTime=100ms, nbrOfReports=2], " + "MERGE[totalTime=100ms], BUILD[totalTime=100ms], APPLY_EXTERNAL[totalTime=100ms], FLIP[totalTime=100ms]"); logProvider.AssertAtLeastOnce(logMatcher); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test(timeout = TEST_TIMEOUT) public void doNotMonitorTransactionLogFiles() throws InterruptedException, java.io.IOException //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void DoNotMonitorTransactionLogFiles() { assumeFalse(SystemUtils.IS_OS_WINDOWS); FileWatcher fileWatcher = GetFileWatcher(_database); CheckPointer checkpointer = GetCheckpointer(_database); string metadataStore = TestDirectory.databaseLayout().metadataStore().Name; ModificationEventListener modificationEventListener = new ModificationEventListener(metadataStore); fileWatcher.AddFileWatchEventListener(modificationEventListener); do { CreateNode(_database); ForceCheckpoint(checkpointer); } while (!modificationEventListener.AwaitModificationNotification()); string fileName = TransactionLogFiles.DEFAULT_NAME + ".0"; DeletionLatchEventListener deletionListener = new DeletionLatchEventListener(fileName); fileWatcher.AddFileWatchEventListener(deletionListener); DeleteFile(TestDirectory.storeDir(), fileName); deletionListener.AwaitDeletionNotification(); AssertableLogProvider.LogMatcher logMatcher = AssertableLogProvider.inLog(typeof(DefaultFileDeletionEventListener)).info(containsString(fileName)); _logProvider.assertNone(logMatcher); }