File size: 1,180 Bytes
c8fb072
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
from src.sdlc.states.states import State
from langgraph.graph import END
from langgraph.types import interrupt
from src.sdlc import logger

class TestCasesFeedback:
    """
    Node logic implementation.
    """

    def process(self, state: State):
        """ No-op node that should be interrupted on """
        logger.info("[DEBUG] Entering human_fb_testcases process")
        human_testcases_review = interrupt(
        {
          "test_cases_review": state.get("test_cases_review","")
        }
        )
        # Update the state with the human's input or route the graph based on the input.
        logger.info(f'RESUMING TEST CASES FEEDBACK NODE, feedback received : {human_testcases_review}')
        return {
            "test_cases_review": human_testcases_review
        }
    
    def testcase_review(self,state: State):
        """ Return the next node to execute """
        # Check if human feedback
        test_cases_review=state.get('test_cases_review', "")
        logger.info("IN TEST CASE REVIEW,determining flow...")
        if test_cases_review:
            return "test_cases_generator"
        
        # Otherwise 
        return "qa_testing_node"