server/test/unittest_msplanner.py
branchstable
changeset 7771 59ddc2dbe7e0
parent 7651 7c0af7ef3325
child 7886 b1c913a6d9f0
equal deleted inserted replaced
7770:a17145243e04 7771:59ddc2dbe7e0
  1210         self._test('Any X,S,U WHERE X in_state S, X todo_by U',
  1210         self._test('Any X,S,U WHERE X in_state S, X todo_by U',
  1211                    [('FetchStep', [('Any X,S WHERE X in_state S, S is State, X is Note',
  1211                    [('FetchStep', [('Any X,S WHERE X in_state S, S is State, X is Note',
  1212                                     [{'X': 'Note', 'S': 'State'}])],
  1212                                     [{'X': 'Note', 'S': 'State'}])],
  1213                      [self.cards, self.system], None, {'X': 'table0.C0', 'S': 'table0.C1'}, []),
  1213                      [self.cards, self.system], None, {'X': 'table0.C0', 'S': 'table0.C1'}, []),
  1214                      ('UnionStep', None, None,
  1214                      ('UnionStep', None, None,
  1215                       [('OneFetchStep', [('Any X,S,U WHERE X in_state S, X todo_by U, S is State, U is CWUser, X is Note',
  1215                       [('OneFetchStep', [('Any X,S,U WHERE X in_state S, X todo_by U, S is State, U is Personne, X is Affaire',
       
  1216                                           [{'X': 'Affaire', 'S': 'State', 'U': 'Personne'}])],
       
  1217                         None, None, [self.system], {}, []),
       
  1218                        ('OneFetchStep', [('Any X,S,U WHERE X todo_by U, S is State, U is CWUser, X is Note',
  1216                                           [{'X': 'Note', 'S': 'State', 'U': 'CWUser'}])],
  1219                                           [{'X': 'Note', 'S': 'State', 'U': 'CWUser'}])],
  1217                         None, None, [self.system], {'X': 'table0.C0', 'S': 'table0.C1'}, []),
  1220                         None, None, [self.system], {'X': 'table0.C0', 'S': 'table0.C1'}, []),
  1218                        ('OneFetchStep', [('Any X,S,U WHERE X in_state S, X todo_by U, S is State, U is Personne, X is Affaire',
       
  1219                                           [{'X': 'Affaire', 'S': 'State', 'U': 'Personne'}])],
       
  1220                         None, None, [self.system], {}, []),
       
  1221                        ])
  1221                        ])
  1222                     ])
  1222                     ])
  1223 
  1223 
  1224     def test_relation_restriction_need_split(self):
  1224     def test_relation_restriction_need_split(self):
  1225         self._test('Any X,U WHERE X in_state S, S name "pending", X todo_by U',
  1225         self._test('Any X,U WHERE X in_state S, S name "pending", X todo_by U',
  2454                      [self.system],
  2454                      [self.system],
  2455                      {'T': 'table1.C0', 'TD': 'table1.C1', 'U': 'table1.C2', 'UL': 'table1.C3'},
  2455                      {'T': 'table1.C0', 'TD': 'table1.C1', 'U': 'table1.C2', 'UL': 'table1.C3'},
  2456                      [])],
  2456                      [])],
  2457                    {'x': 999999})
  2457                    {'x': 999999})
  2458 
  2458 
       
  2459     def test_nonregr_dont_readd_already_processed_relation(self):
       
  2460         self._test('Any WO,D,SO WHERE WO is Note, D tags WO, WO in_state SO',
       
  2461                    [('FetchStep',
       
  2462                      [('Any WO,SO WHERE WO in_state SO, SO is State, WO is Note',
       
  2463                        [{'SO': 'State', 'WO': 'Note'}])],
       
  2464                      [self.cards, self.system], None,
       
  2465                      {'SO': 'table0.C1', 'WO': 'table0.C0'},
       
  2466                      []),
       
  2467                     ('OneFetchStep',
       
  2468                      [('Any WO,D,SO WHERE D tags WO, D is Tag, SO is State, WO is Note',
       
  2469                        [{'D': 'Tag', 'SO': 'State', 'WO': 'Note'}])],
       
  2470                      None, None, [self.system],
       
  2471                      {'SO': 'table0.C1', 'WO': 'table0.C0'},
       
  2472                      [])
       
  2473                     ])
  2459 
  2474 
  2460 class MSPlannerTwoSameExternalSourcesTC(BasePlannerTC):
  2475 class MSPlannerTwoSameExternalSourcesTC(BasePlannerTC):
  2461     """test planner related feature on a 3-sources repository:
  2476     """test planner related feature on a 3-sources repository:
  2462 
  2477 
  2463     * 2 rql sources supporting Card
  2478     * 2 rql sources supporting Card