Ejemplo n.º 1
0
    def test_array2(self):
        top = set_as_top(Assembly())
        top.add('c1', ArrSimple())
        top.add('c3', ArrSimple())
        top.driver.workflow.add(['c1','c3'])
        top.connect('c1.aout[1]', 'c3.ain[2]')

        expected = set(['c1', 'c1.aout', 'c1.aout[1]',
                        'c3', 'c3.ain', 'c3.ain[2]', 'c3.aout'])

        for v in expected:
            self.assertEqual(top._depgraph.node[v]['valid'], False)
            
        self.assertEqual(top.c1.is_valid(), False)
        self.assertEqual(top.c3.is_valid(), False)
        
        top.run()
        self.assertEqual(get_valids(top._depgraph, False), [])
        
        top.c1.ain = [55.,44.,33.]
        for v in expected:
            self.assertEqual(top._depgraph.node[v]['valid'], False)
            
        top.run()
        self.assertEqual(get_valids(top._depgraph, False), [])
        self.assertEqual(top.c3.ain[2], 88.)
Ejemplo n.º 2
0
    def test_array2(self):
        top = set_as_top(Assembly())
        top.add('c1', ArrSimple())
        top.add('c3', ArrSimple())
        top.driver.workflow.add(['c1', 'c3'])
        top.connect('c1.aout[1]', 'c3.ain[2]')

        expected = set([
            'c1', 'c1.aout', 'c1.aout[1]', 'c3', 'c3.ain', 'c3.ain[2]',
            'c3.aout'
        ])

        for v in expected:
            self.assertEqual(top._depgraph.node[v]['valid'], False)

        self.assertEqual(top.c1.is_valid(), False)
        self.assertEqual(top.c3.is_valid(), False)

        top.run()
        self.assertEqual(get_valids(top._depgraph, False), [])

        top.c1.ain = [55., 44., 33.]
        for v in expected:
            self.assertEqual(top._depgraph.node[v]['valid'], False)

        top.run()
        self.assertEqual(get_valids(top._depgraph, False), [])
        self.assertEqual(top.c3.ain[2], 88.)
Ejemplo n.º 3
0
    def test_array3(self):
        top = set_as_top(Assembly())
        top.add('c1', ArrSimple())
        top.add('sub', Assembly())
        top.sub.add('c2', ArrSimple())
        top.sub.create_passthrough('c2.ain')
        top.sub.create_passthrough('c2.aout')
        top.add('c3', ArrSimple())
        top.driver.workflow.add(['c1', 'sub', 'c3'])
        top.sub.driver.workflow.add('c2')
        top.connect('c1.aout[1]', 'sub.ain[1]')
        top.connect('sub.aout[1]', 'c3.ain[1]')

        expected = set([
            'c1', 'c1.aout', 'c1.aout[1]', 'c3', 'c3.ain', 'c3.ain[1]',
            'c3.aout', 'sub', 'sub.ain', 'sub.ain[1]', 'sub.aout',
            'sub.aout[1]'
        ])

        for v in expected:
            self.assertEqual(top._depgraph.node[v]['valid'], False)

        subexpected = set(
            ['c2', 'c2.ain', 'ain[1]', 'c2.aout', 'aout[1]', 'ain', 'aout'])
        for v in subexpected:
            self.assertEqual(top.sub._depgraph.node[v]['valid'], False)

        self.assertEqual(top.c1.is_valid(), False)
        self.assertEqual(top.c3.is_valid(), False)
        self.assertEqual(top.sub.is_valid(), False)

        top.run()
        self.assertEqual(get_valids(top._depgraph, False), [])

        top.c1.ain = [55., 44., 33.]
        for v in expected:
            self.assertEqual(top._depgraph.node[v]['valid'], False)

        top.run()
        self.assertEqual(get_valids(top._depgraph, False), [])
        self.assertEqual(top.sub.ain[1], 88.)
        self.assertEqual(top.sub.aout[1], 176.)
        self.assertEqual(top.c3.ain[1], 176.)
Ejemplo n.º 4
0
    def test_array3(self):
        top = set_as_top(Assembly())
        top.add('c1', ArrSimple())
        top.add('sub',Assembly())
        top.sub.add('c2',ArrSimple())
        top.sub.create_passthrough('c2.ain')
        top.sub.create_passthrough('c2.aout')
        top.add('c3', ArrSimple())
        top.driver.workflow.add(['c1','sub', 'c3'])
        top.sub.driver.workflow.add('c2')
        top.connect('c1.aout[1]', 'sub.ain[1]')
        top.connect('sub.aout[1]', 'c3.ain[1]')

        expected = set(['c1', 'c1.aout', 'c1.aout[1]',
                        'c3', 'c3.ain', 'c3.ain[1]', 'c3.aout',
                        'sub', 'sub.ain', 'sub.ain[1]', 'sub.aout', 'sub.aout[1]'])

        for v in expected:
            self.assertEqual(top._depgraph.node[v]['valid'], False)
            
        subexpected = set(['c2','c2.ain','ain[1]','c2.aout','aout[1]','ain','aout'])
        for v in subexpected:
            self.assertEqual(top.sub._depgraph.node[v]['valid'], False)
        
        self.assertEqual(top.c1.is_valid(), False)
        self.assertEqual(top.c3.is_valid(), False)
        self.assertEqual(top.sub.is_valid(), False)
        
        top.run()
        self.assertEqual(get_valids(top._depgraph, False), [])
        
        top.c1.ain = [55.,44.,33.]
        for v in expected:
            self.assertEqual(top._depgraph.node[v]['valid'], False)
            
        top.run()
        self.assertEqual(get_valids(top._depgraph, False), [])
        self.assertEqual(top.sub.ain[1], 88.)
        self.assertEqual(top.sub.aout[1], 176.)
        self.assertEqual(top.c3.ain[1], 176.)