def test_ft_priorityjava(self):
        '''start two basicftmemberjava with different priority and verify that the one with lower priority goes to standby
        from active'''
        my_print(
            "\n----------Running basicftmemberjava test priority----------\n")
        ftmemberjava1_out = open('priority_ftmemberjava1.out', 'w')
        ftmemberjava2_out = open('priority_ftmemberjava2.out', 'w')

        ret1 = start_javaapp("BasicFtMemberJava",
                             "pub",
                             args=["-g", "priority", "-w", "40", "-b"],
                             stdout=ftmemberjava1_out,
                             stderr=subprocess.STDOUT)

        ret2 = call_wait4text("Current state is: FT_STATE_ACTIVE",
                              "priority_ftmemberjava1.out")
        ret3 = start_javaapp("BasicFtMemberJava",
                             "sub",
                             args=["-g", "priority", "-w", "60", "-b"],
                             stdout=ftmemberjava2_out,
                             stderr=subprocess.STDOUT)

        ret4 = call_wait4text("Current state is: FT_STATE_ACTIVE",
                              "priority_ftmemberjava2.out")

        ret5 = call_wait4text("Current state is: FT_STATE_STANDBY",
                              "priority_ftmemberjava1.out")
        ftmemberjava1_out.close()
        ftmemberjava2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2 == 0)
        self.assertTrue(ret4 == 0)
        self.assertTrue(ret5 == 0)
    def test_pubsubcpp(self):
        '''publish messages using basicpubcpp and verify basicsubcpp receives the messages'''
        my_print("\n----------Running pubsubcpp test----------\n")
        basicsubcpp_out = open('pubsub_basicsubcpp.out','w')
        basicsubcpp_err = open('pubsub_basicsubcpp.err','w')
        basicpubcpp_out = open('pubsub_basicpubcpp.out','w')
        ret1 = start_app("basicsubcpp","sub",args=["-v","-v","-v","-v"],stdout=basicsubcpp_out,stderr=basicsubcpp_err)

        ret2 = call_wait4text("Created inbound subscription","pubsub_basicsubcpp.out")
        ret3 = start_app("basicpubcpp","pub",stdout=basicpubcpp_out,stderr=subprocess.STDOUT)

        ret4 = call_wait4text("EXIT", "pubsub_basicsubcpp.out")
        ret5 = call_comparelog("pubsub_expectedsubcpp.out","pubsub_basicsubcpp.out")

        basicsubcpp_out.close()
        basicsubcpp_err.close()
        basicpubcpp_out.close()

        if ret1.poll() is None:
            kill_process(ret1.pid)
        if ret3.poll() is None:
            kill_process(ret3.pid)

 
        self.assertTrue(ret4==0)
        self.assertTrue(ret5==0)
示例#3
0
    def test_ft_active_standbyc(self):
        '''start two basicftmemberc and verify the first one goes ot active and second to standby, if both belong to same group'''
        my_print(
            "\n--------------Running basicftmemberc test active-standby--------------\n"
        )
        ftmemberc1_out = open('active_standby_ftmemberc1.out', 'w')
        ftmemberc2_out = open('active_standby_ftmemberc2.out', 'w')

        ret1 = start_app("basicftmemberc",
                         "pub",
                         args=["-g", "active-standby", "-b"],
                         stdout=ftmemberc1_out,
                         stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is active",
                              "active_standby_ftmemberc1.out")
        ret3 = start_app("basicftmemberc",
                         "sub",
                         args=["-g", "active-standby", "-b"],
                         stdout=ftmemberc2_out,
                         stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is standby",
                              "active_standby_ftmemberc2.out")
        ret5 = call_wait4text("Current state is standby",
                              "active_standby_ftmemberc1.out")

        ftmemberc1_out.close()
        ftmemberc2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2 == 0)
        self.assertTrue(ret4 == 0)
        self.assertTrue(ret5 == 1)
    def test_req_replyjava(self):
        '''Send request from basicinboxjava and verify it recives reply from basicpubjava'''
        my_print("\n----------Running req_replyjava test----------\n")
        basicpubjava_out = open('req_reply_basicpubjava.out', 'w')
        basicpubjava_err = open('req_reply_basicpubjava.err', 'w')
        basicinboxjava_out = open('req_reply_basicinboxjava.out', 'w')
        ret1 = start_javaapp("BasicPubJava",
                             "pub",
                             args=["-v", "-v", "-v", "-v"],
                             stdout=basicpubjava_out,
                             stderr=basicpubjava_err)
        ret2 = call_wait4text("Created inbound subscription",
                              "req_reply_basicpubcpp.out",
                              args=["-t", '1'])
        ret3 = start_javaapp("BasicInboxJava",
                             "sub",
                             stdout=basicinboxjava_out,
                             stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Received reply", "req_reply_basicinboxjava.out")

        basicpubjava_out.close()
        basicpubjava_err.close()
        basicinboxjava_out.close()
        kill_process(ret3.pid)

        self.assertTrue(ret4 == 0)
示例#5
0
    def test_pubsubc(self):
        '''publish messages using basicpubc and verify basicsubc receives the messages'''
        my_print(
            "\n-------------------------Running pubsubc test-------------------------\n"
        )
        basicsubc_out = open('pubsub_basicsubc.out', 'w')
        basicsubc_err = open('pubsub_basicsubc.err', 'w')
        basicpubc_out = open('pubsub_basicpubc.out', 'w')
        ret1 = start_app("basicsubc",
                         "sub",
                         args=["-v", "-v", "-v", "-v"],
                         stdout=basicsubc_out,
                         stderr=basicsubc_err)

        ret2 = call_wait4text("Created inbound subscription",
                              "pubsub_basicsubc.out")
        ret3 = start_app("basicpubc",
                         "pub",
                         stdout=basicpubc_out,
                         stderr=subprocess.STDOUT)

        ret4 = call_wait4text("EXIT", "pubsub_basicsubc.out")
        ret5 = call_comparelog("pubsub_expectedsubc.out",
                               "pubsub_basicsubc.out")

        basicsubc_out.close()
        basicsubc_err.close()
        basicpubc_out.close()
        if ret1.poll() is None:
            kill_process(ret1.pid)
        if ret3.poll() is None:
            kill_process(ret3.pid)

        self.assertTrue(ret4 == 0)
        self.assertTrue(ret5 == 0)
示例#6
0
    def test_ft_active_activec(self):
        '''start two basicftmemberc and verify that both go to active, if they belong to different groups'''
        my_print(
            "\n---------------Running basicftmemberc test active-active--------------\n"
        )
        ftmemberc1_out = open('active_active_ftmemberc1.out', 'w')
        ftmemberc2_out = open('active_active_ftmemberc2.out', 'w')

        ret1 = start_app("basicftmemberc",
                         "pub",
                         args=["-g", "active-active1", "-b"],
                         stdout=ftmemberc1_out,
                         stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is active",
                              "active_active_ftmemberc1.out")
        ret3 = start_app("basicftmemberc",
                         "sub",
                         args=["-g", "active-active2", "-b"],
                         stdout=ftmemberc2_out,
                         stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is active",
                              "active_active_ftmemberc2.out")
        ret5 = call_wait4text("Current state is standby",
                              "active_active_ftmemberc1.out")

        ftmemberc1_out.close()
        ftmemberc2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2 == 0)
        self.assertTrue(ret4 == 0)
        self.assertTrue(ret5 == 1)
示例#7
0
    def test_ft_priorityc(self):
        '''start two basicftmemberc with different priority and verify that the one with lower priority goes to standby
        from active'''
        my_print(
            "\n-----------------Running basicftmemberc test priority-----------------\n"
        )
        ftmemberc1_out = open('priority_ftmemberc1.out', 'w')
        ftmemberc2_out = open('priority_ftmemberc2.out', 'w')

        ret1 = start_app("basicftmemberc",
                         "pub",
                         args=["-g", "priority", "-w", "40", "-b"],
                         stdout=ftmemberc1_out,
                         stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is active",
                              "priority_ftmemberc1.out")
        ret3 = start_app("basicftmemberc",
                         "sub",
                         args=["-g", "priority", "-w", "60", "-b"],
                         stdout=ftmemberc2_out,
                         stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is active",
                              "priority_ftmemberc2.out")
        ret5 = call_wait4text("Current state is standby",
                              "priority_ftmemberc1.out")

        ftmemberc1_out.close()
        ftmemberc2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2 == 0)
        self.assertTrue(ret4 == 0)
        self.assertTrue(ret5 == 0)
    def test_ft_standby_to_activejava(self):
        '''Start two basicftmemberjava with same group and stop the active one, verify the standby basicftmemberjava goes to active'''
        my_print("\n----------Running basicftmemberjava test standby-to-active----------\n")
        ftmemberjava1_out = open('standby_to_active_ftmemberjava1.out','w')
        ftmemberjava2_out = open('standby_to_active_ftmemberjava2.out','w')

        ret1 = start_javaapp("BasicFtMemberJava","pub",args=["-g","standby-to-active","-b"],stdout=ftmemberjava1_out,stderr=subprocess.STDOUT)

        ret2 = call_wait4text("Current state is: FT_STATE_ACTIVE", "standby_to_active_ftmemberjava1.out")

        ret3 = start_javaapp("BasicFtMemberJava","sub",args=["-g","standby-to-active","-b"],stdout=ftmemberjava2_out,stderr=subprocess.STDOUT)

        ret4 = call_wait4text("Current state is: FT_STATE_STANDBY", "standby_to_active_ftmemberjava2.out")

        kill_process(ret1.pid)

        ret5 = call_wait4text("Current state is: FT_STATE_ACTIVE", "standby_to_active_ftmemberjava2.out")

        ftmemberjava1_out.close()
        ftmemberjava2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2==0)
        self.assertTrue(ret4==0)
        self.assertTrue(ret5==0)
示例#9
0
    def test_req_replyc(self):
        '''Send request from basicinbox and verify it recives reply from basicpub'''
        my_print(
            "\n----------------------Running request_replyc test---------------------\n"
        )
        basicpubc_out = open('req_reply_basicpubc.out', 'w')
        basicpubc_err = open('req_reply_basicpubc.err', 'w')
        basicinboxc_out = open('req_reply_basicinboxc.out', 'w')

        ret1 = start_app("basicpubc",
                         "pub",
                         args=["-v", "-v", "-v", "-v"],
                         stdout=basicpubc_out,
                         stderr=basicpubc_err)
        ret2 = call_wait4text("Created inbound subscription",
                              "req_reply_basicpubc.out")
        ret3 = start_app("basicinboxc",
                         "sub",
                         stdout=basicinboxc_out,
                         stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Received reply", "req_reply_basicinboxc.out")

        basicpubc_out.close()
        basicpubc_err.close()
        basicinboxc_out.close()
        kill_process(ret3.pid)

        self.assertTrue(ret4 == 0)
    def test_pubsubjava(self):
        '''publish messages using basicpubjava and verify basicsubjava receives the messages'''
        my_print("\n----------Running pubsubjava test----------\n")
        basicsubjava_out = open('pubsub_basicsubjava.out', 'w')
        basicsubjava_err = open('pubsub_basicsubjava.err', 'w')
        basicpubjava_out = open('pubsub_basicpubjava.out', 'w')
        ret1 = start_javaapp("BasicSubJava",
                             "sub",
                             stdout=basicsubjava_out,
                             stderr=basicsubjava_err)
        ret2 = call_wait4text("Created inbound subscription",
                              "pubsub_basicsubjava.out")
        ret3 = start_javaapp("BasicPubJava",
                             "pub",
                             stdout=basicpubjava_out,
                             stderr=subprocess.STDOUT)

        ret4 = call_wait4text("EXIT", "pubsub_basicsubjava.out")
        ret5 = call_comparelog("pubsub_expectedsubjava.out",
                               "pubsub_basicsubjava.out")

        basicsubjava_out.close()
        basicsubjava_err.close()
        basicpubjava_out.close()

        self.assertTrue(ret2 == 0)
        self.assertTrue(ret4 == 0)
        self.assertTrue(ret5 == 0)
    def test_ft_active_activejava(self):
        '''start two basicftmemberjava and verify that both go to active, if they belong to different groups'''
        my_print(
            "\n----------Running basicftmemberjava test active-active----------\n"
        )
        ftmemberjava1_out = open('active_active_ftmemberjava1.out', 'w')
        ftmemberjava2_out = open('active_active_ftmemberjava2.out', 'w')

        ret1 = start_javaapp("BasicFtMemberJava",
                             "pub",
                             args=["-g", "active-active1", "-b"],
                             stdout=ftmemberjava1_out,
                             stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is: FT_STATE_ACTIVE",
                              "active_active_ftmemberjava1.out")
        ret3 = start_javaapp("BasicFtMemberJava",
                             "sub",
                             args=["-g", "active-active2", "-b"],
                             stdout=ftmemberjava2_out,
                             stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is: FT_STATE_ACTIVE",
                              "active_active_ftmemberjava2.out")
        ret5 = call_wait4text("Current state is: FT_STATE_STANDBY",
                              "active_active_ftmemberjava1.out")

        ftmemberjava1_out.close()
        ftmemberjava2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2 == 0)
        self.assertTrue(ret4 == 0)
        self.assertTrue(ret5 == 1)
    def test_req_replycpp(self):
        '''Send request from basicinboxcpp and verify it recives reply from basicpubcpp'''
        my_print("\n----------Running req_replycpp test----------\n")
        basicpubcpp_out = open('req_reply_basicpubcpp.out','w')
        basicpubcpp_err = open('req_reply_basicpubcpp.err','w')
        basicinboxcpp_out = open('req_reply_basicinboxcpp.out','w')
        ret1 = start_app("basicpubcpp","pub",args=["-v","-v","-v","-v"],stdout=basicpubcpp_out,stderr=basicpubcpp_err) 
        ret2 = call_wait4text("Created inbound subscription","req_reply_basicpubcpp.out",args=["-t",'1'])
        ret3 = start_app("basicinboxcpp","sub",stdout=basicinboxcpp_out,stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Received reply", "req_reply_basicinboxcpp.out")

        basicpubcpp_out.close()
        basicpubcpp_err.close()
        basicinboxcpp_out.close()
        kill_process(ret3.pid)

        self.assertTrue(ret4==0)
    def test_ft_active_standbyjava(self):
        '''start two basicftmemberjava and verify the first one goes ot active and second to standby, if both belong to same group'''
        my_print("\n----------Running basicftmemberjava test active-standby----------\n")
        ftmemberjava1_out = open('active_standby_ftmemberjava1.out','w')
        ftmemberjava2_out = open('active_standby_ftmemberjava2.out','w')

        ret1 = start_javaapp("BasicFtMemberJava","pub",args=["-g","active-standby","-b"],stdout=ftmemberjava1_out,stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is: FT_STATE_ACTIVE", "active_standby_ftmemberjava1.out")
        ret3 = start_javaapp("BasicFtMemberJava","sub",args=["-g","active-standby","-b"],stdout=ftmemberjava2_out,stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is: FT_STATE_STANDBY", "active_standby_ftmemberjava2.out")
        ret5 = call_wait4text("Current state is: FT_STATE_STANDBY", "active_standby_ftmemberjava1.out")

        ftmemberjava1_out.close()
        ftmemberjava2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)
  
        self.assertTrue(ret2==0)
        self.assertTrue(ret4==0)
        self.assertTrue(ret5==1)
    def test_ft_prioritycpp(self):
        '''start two basicftmembercpp with different priority and verify that the one with lower priority goes to standby
        from active'''
        my_print("\n----------Running basicftmemberpp test priority----------\n")
        ftmembercpp1_out = open('priority_ftmembercpp1.out','w')
        ftmembercpp2_out = open('priority_ftmembercpp2.out','w')

        ret1 =start_app("basicftmembercpp","pub",args=["-g","priority","-w","40","-b"],stdout=ftmembercpp1_out,stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is: active", "priority_ftmembercpp1.out")
        ret3 = start_app("basicftmembercpp","sub",args=["-g","priority","-w","60","-b"],stdout=ftmembercpp2_out,stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is: active", "priority_ftmembercpp2.out")
        ret5 = call_wait4text("Current state is: standby", "priority_ftmembercpp1.out")
        ftmembercpp1_out.close()
        ftmembercpp2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)
        
        self.assertTrue(ret2==0)
        self.assertTrue(ret4==0)
        self.assertTrue(ret5==0)
    def test_ft_active_activejava(self):
        '''start two basicftmemberjava and verify that both go to active, if they belong to different groups'''
        my_print("\n----------Running basicftmemberjava test active-active----------\n")
        ftmemberjava1_out = open('active_active_ftmemberjava1.out','w')
        ftmemberjava2_out = open('active_active_ftmemberjava2.out','w')

        ret1 = start_javaapp("BasicFtMemberJava","pub",args=["-g","active-active1","-b"],stdout=ftmemberjava1_out,stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is: FT_STATE_ACTIVE", "active_active_ftmemberjava1.out")
        ret3 = start_javaapp("BasicFtMemberJava","sub",args=["-g","active-active2","-b"],stdout=ftmemberjava2_out,stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is: FT_STATE_ACTIVE", "active_active_ftmemberjava2.out")
        ret5 = call_wait4text("Current state is: FT_STATE_STANDBY", "active_active_ftmemberjava1.out")

        ftmemberjava1_out.close()
        ftmemberjava2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2==0)
        self.assertTrue(ret4==0)
        self.assertTrue(ret5==1)
    def test_ft_active_standbycpp(self):
        '''start two basicftmembercpp and verify the first one goes to active and second to standby, if both belong to same group'''
        my_print("\n----------Running basicftmembercpp test active-standby----------\n")
        ftmembercpp1_out = open('active_standby_ftmembercpp1.out','w')
        ftmembercpp2_out = open('active_standby_ftmembercpp2.out','w')

        ret1 = start_app("basicftmembercpp","pub",args=["-g","active-standby","-b"],stdout=ftmembercpp1_out,stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is: active", "active_standby_ftmembercpp1.out")
        ret3 = start_app("basicftmembercpp","sub",args=["-g","active-standby","-b"],stdout=ftmembercpp2_out,stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is: standby", "active_standby_ftmembercpp2.out")
        ret5 = call_wait4text("Current state is: standby", "active_standby_ftmembercpp1.out")

        ftmembercpp1_out.close()
        ftmembercpp2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)
        
        self.assertTrue(ret2==0)
        self.assertTrue(ret4==0)
        self.assertTrue(ret5==1) 
    def test_pubsubjava(self):
        '''publish messages using basicpubjava and verify basicsubjava receives the messages'''
        my_print("\n----------Running pubsubjava test----------\n")
        basicsubjava_out = open('pubsub_basicsubjava.out','w')
        basicsubjava_err = open('pubsub_basicsubjava.err','w')
        basicpubjava_out = open('pubsub_basicpubjava.out','w')
        ret1 = start_javaapp("BasicSubJava","sub",stdout=basicsubjava_out,stderr=basicsubjava_err)
        ret2 = call_wait4text("Created inbound subscription","pubsub_basicsubjava.out")
        ret3 = start_javaapp("BasicPubJava","pub",stdout=basicpubjava_out,stderr=subprocess.STDOUT)

        ret4 = call_wait4text("EXIT", "pubsub_basicsubjava.out")
        ret5 = call_comparelog("pubsub_expectedsubjava.out","pubsub_basicsubjava.out")
        

        basicsubjava_out.close()
        basicsubjava_err.close()
        basicpubjava_out.close()
    
        self.assertTrue(ret2==0)
        self.assertTrue(ret4==0)
        self.assertTrue(ret5==0)
    def test_ft_active_activecpp(self):
        '''start two basicftmembercpp and verify that both go to active, if they belong to different groups'''
        my_print("\n----------Running basicftmemberpp test active-active----------\n")
        ftmembercpp1_out = open('active_active_ftmembercpp1.out','w')
        ftmembercpp2_out = open('active_active_ftmembercpp2.out','w')


        ret1 = start_app("basicftmembercpp","pub",args=["-g","active-active1","-b"],stdout=ftmembercpp1_out,stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is: active", "active_active_ftmembercpp1.out")
        ret3 = start_app("basicftmembercpp","sub",args=["-g","active-active2","-b"],stdout=ftmembercpp2_out,stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is: active", "active_active_ftmembercpp2.out")
        ret5 = call_wait4text("Current state is: standby", "active_active_ftmembercpp1.out")

        ftmembercpp1_out.close()
        ftmembercpp2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2==0)
        self.assertTrue(ret4==0) 
        self.assertTrue(ret5==1)
    def test_ft_standby_to_activejava(self):
        '''Start two basicftmemberjava with same group and stop the active one, verify the standby basicftmemberjava goes to active'''
        my_print(
            "\n----------Running basicftmemberjava test standby-to-active----------\n"
        )
        ftmemberjava1_out = open('standby_to_active_ftmemberjava1.out', 'w')
        ftmemberjava2_out = open('standby_to_active_ftmemberjava2.out', 'w')

        ret1 = start_javaapp("BasicFtMemberJava",
                             "pub",
                             args=["-g", "standby-to-active", "-b"],
                             stdout=ftmemberjava1_out,
                             stderr=subprocess.STDOUT)

        ret2 = call_wait4text("Current state is: FT_STATE_ACTIVE",
                              "standby_to_active_ftmemberjava1.out")

        ret3 = start_javaapp("BasicFtMemberJava",
                             "sub",
                             args=["-g", "standby-to-active", "-b"],
                             stdout=ftmemberjava2_out,
                             stderr=subprocess.STDOUT)

        ret4 = call_wait4text("Current state is: FT_STATE_STANDBY",
                              "standby_to_active_ftmemberjava2.out")

        kill_process(ret1.pid)

        ret5 = call_wait4text("Current state is: FT_STATE_ACTIVE",
                              "standby_to_active_ftmemberjava2.out")

        ftmemberjava1_out.close()
        ftmemberjava2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2 == 0)
        self.assertTrue(ret4 == 0)
        self.assertTrue(ret5 == 0)
    def test_ft_priorityjava(self):
        '''start two basicftmemberjava with different priority and verify that the one with lower priority goes to standby
        from active'''
        my_print("\n----------Running basicftmemberjava test priority----------\n")
        ftmemberjava1_out = open('priority_ftmemberjava1.out','w')
        ftmemberjava2_out = open('priority_ftmemberjava2.out','w')

        ret1 =start_javaapp("BasicFtMemberJava","pub",args=["-g","priority","-w","40","-b"],stdout=ftmemberjava1_out,stderr=subprocess.STDOUT)

        ret2 = call_wait4text("Current state is: FT_STATE_ACTIVE", "priority_ftmemberjava1.out")
        ret3 = start_javaapp("BasicFtMemberJava","sub",args=["-g","priority","-w","60","-b"],stdout=ftmemberjava2_out,stderr=subprocess.STDOUT)

        ret4 = call_wait4text("Current state is: FT_STATE_ACTIVE", "priority_ftmemberjava2.out")

        ret5 = call_wait4text("Current state is: FT_STATE_STANDBY", "priority_ftmemberjava1.out")
        ftmemberjava1_out.close()
        ftmemberjava2_out.close()
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2==0)
        self.assertTrue(ret4==0)
        self.assertTrue(ret5==0)
    def test_ft_standby_to_activec(self):
        '''Start two basicftmemberc with same group and stop the active one, verify the standby basicftmember goes to active'''
        my_print("\n-------------Running basicftmemberc test standby-to-active------------\n")
        ftmemberc1_out = open('standby_to_active_ftmemberc1.out','w')
        ftmemberc2_out = open('standby_to_active_ftmemberc2.out','w')

        ret1 = start_app("basicftmemberc","pub",args=["-g","standby-to-active","-b"],stdout=ftmemberc1_out,stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is active", "standby_to_active_ftmemberc1.out")
        ret3 = start_app("basicftmemberc","sub",args=["-g","standby-to-active","-b"],stdout=ftmemberc2_out,stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is standby", "standby_to_active_ftmemberc2.out")
        kill_process(ret1.pid)
        
        ret5 = call_wait4text("Current state is active", "standby_to_active_ftmemberc2.out")

        ftmemberc1_out.close()
        ftmemberc2_out.close()
        
        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2==0)
        self.assertTrue(ret4==0)
        self.assertTrue(ret5==0)
示例#22
0
    def test_ft_standby_to_activecpp(self):
        '''Start two basicftmembercpp with same group and stop the active one, verify the standby basicftmemberpp goes to active'''
        my_print(
            "\n----------Running basicftmemberpp test standby-to-active----------\n"
        )
        ftmembercpp1_out = open('standby_to_active_ftmembercpp1.out', 'w')
        ftmembercpp2_out = open('standby_to_active_ftmembercpp2.out', 'w')

        ret1 = start_app("basicftmembercpp",
                         "pub",
                         args=["-g", "standby-to-active", "-b"],
                         stdout=ftmembercpp1_out,
                         stderr=subprocess.STDOUT)
        ret2 = call_wait4text("Current state is: active",
                              "standby_to_active_ftmembercpp1.out")
        ret3 = start_app("basicftmembercpp",
                         "sub",
                         args=["-g", "standby-to-active", "-b"],
                         stdout=ftmembercpp2_out,
                         stderr=subprocess.STDOUT)
        ret4 = call_wait4text("Current state is: standby",
                              "standby_to_active_ftmembercpp2.out")

        kill_process(ret1.pid)

        ret5 = call_wait4text("Current state is: active",
                              "standby_to_active_ftmembercpp2.out")

        ftmembercpp1_out.close()
        ftmembercpp2_out.close()

        kill_process(ret1.pid)
        kill_process(ret3.pid)

        self.assertTrue(ret2 == 0)
        self.assertTrue(ret4 == 0)
        self.assertTrue(ret5 == 0)