Class ADCachedMultiThreadTest


  • public class ADCachedMultiThreadTest
    extends OBBaseTest
    Test cases to verify multiple ApplicationDictionaryCachedStructures behavior when working concurrently with multiple threads.
    Author:
    alostale
    • Constructor Detail

      • ADCachedMultiThreadTest

        public ADCachedMultiThreadTest()
    • Method Detail

      • testParentTabCache

        public void testParentTabCache()
                                throws Exception
        This test executes using cache:
        • Thread 1 gets tab from ApplicationDictionaryCachedStructures and finishes
        • Thread 2 gets same tab and gets its parent
        Verifies tab object is completely initialized by Thread 1 so Thread 2 can work with it
        Throws:
        Exception
      • testParentTabNoCache

        public void testParentTabNoCache()
                                  throws Exception
        This test executes without using cache:
        • Thread 1 gets tab from ApplicationDictionaryCachedStructures and finishes
        • Thread 2 gets same tab and gets its parent
        Verifies tab object is completely initialized by Thread 1 so Thread 2 can work with it
        Throws:
        Exception
      • testMultiCallsCache

        public void testMultiCallsCache()
                                 throws Exception
        This test creates multiple threads invoking all public methods in ApplicationDictionaryCachedStructures for the same tab. It is executed TEST_EXECUTIONS number of times to simulate high traffic in the same session. Using cache
        Throws:
        Exception
      • testMultiCallsNoCache

        public void testMultiCallsNoCache()
                                   throws Exception
        This test creates multiple threads invoking all public methods in ApplicationDictionaryCachedStructures for the same tab. It is executed TEST_EXECUTIONS number of times to simulate high traffic in the same session. Not using cache
        Throws:
        Exception
      • testPropertyColumn

        public void testPropertyColumn()
                                throws Exception
        Property columns is an especial case because they can link to a column in a different table which needs to be completely initialized within current tab
        Throws:
        Exception