Пример #1
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testRegisterUnregisterHandlers()
        public virtual void TestRegisterUnregisterHandlers()
        {
            GraphDatabaseService graphDb  = (new TestGraphDatabaseFactory()).newImpermanentDatabase();
            KernelEventHandler   handler1 = new DummyKernelEventHandlerAnonymousInnerClass(this, _resource1);
            KernelEventHandler   handler2 = new DummyKernelEventHandlerAnonymousInnerClass2(this, _resource2);

            try
            {
                graphDb.UnregisterKernelEventHandler(handler1);
                fail("Shouldn't be able to do unregister on a " + "unregistered handler");
            }
            catch (System.InvalidOperationException)
            {               // Good
            }

            assertSame(handler1, graphDb.RegisterKernelEventHandler(handler1));
            assertSame(handler1, graphDb.RegisterKernelEventHandler(handler1));
            assertSame(handler1, graphDb.UnregisterKernelEventHandler(handler1));

            try
            {
                graphDb.UnregisterKernelEventHandler(handler1);
                fail("Shouldn't be able to do unregister on a " + "unregistered handler");
            }
            catch (System.InvalidOperationException)
            {               // Good
            }

            assertSame(handler1, graphDb.RegisterKernelEventHandler(handler1));
            assertSame(handler2, graphDb.RegisterKernelEventHandler(handler2));
            assertSame(handler1, graphDb.UnregisterKernelEventHandler(handler1));
            assertSame(handler2, graphDb.UnregisterKernelEventHandler(handler2));

            graphDb.Shutdown();
        }