Changeset 2524

Show
Ignore:
Timestamp:
07/24/07 16:39:39 (1 year ago)
Author:
eclip5e
Message:

ManualTestingPlugin:

ManualTestingPlugin:

  • Implemented test suite adding.
  • A minor code layout change.
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • manualtestingplugin/manualtesting/DBUtils.py

    r2523 r2524  
    3030        return None 
    3131 
     32    def add_suite(self,cursor,new_user,new_title,new_component,new_description,new_time): 
     33        sql = "INSERT INTO mtp_suites (title,component,description,deleted,user) VALUES ('%s','%s','%s',%s,'%s')" % (new_title,new_component,new_description,0,new_user) 
     34        self.log.debug(sql) 
     35        # ToDo: values in SQL statement must be escaped. 
     36        cursor.execute(sql) 
     37 
    3238    def get_plans(self, req, cursor, suite_id): 
    3339        rows = [] 
     
    4753        # ToDo: values in SQL statement must be escaped. 
    4854        cursor.execute(sql) 
     55 
     56    def get_tracComponents(self, cursor): 
     57        rows = [] 
     58        columns = ('name','owner','default') 
     59        sql = "SELECT * FROM component" 
     60        self.log.debug(sql) 
     61        cursor.execute(sql) 
     62        for row in cursor: 
     63            row = dict(zip(columns, row)) 
     64            rows.append(row) 
     65        return rows 
     66 
     67    def get_tracVersions(self, cursor): 
     68        rows = [] 
     69        columns = ('name','time','default') 
     70        sql = "SELECT * FROM version" 
     71        self.log.debug(sql) 
     72        cursor.execute(sql) 
     73        for row in cursor: 
     74            row = dict(zip(columns, row)) 
     75            rows.append(row) 
     76        return rows 
  • manualtestingplugin/manualtesting/htdocs/templates/main.cs

    r2523 r2524  
    2626                <th><a href="#" title="">Report</a></th> 
    2727                <th><a href="#" title="">Title</a></th> 
     28                <th><a href="#" title="">Component</a></th> 
    2829                <th><a href="#" title="">Description</a></th> 
    2930            </tr> 
     
    4950                                </a> 
    5051                            </td> 
     52                            <td class="Component"> 
     53                                <?cs var:row.component ?> 
     54                            </td> 
    5155                            <td class="description"> 
    5256                                <?cs var:row.description ?> 
     
    6670        </form> 
    6771    </div> 
     72    <div class="buttons"> 
     73        <form method="post" action="<?cs var:manualtesting.href ?>"> 
     74              <input type="submit" name="addsuite" value="Add Test Suite" /> 
     75              <input type="hidden" name="manualtesting_action" value="add" /> 
     76        </form> 
     77    </div> 
    6878</div> 
    6979 
  • manualtestingplugin/manualtesting/ManualTestingAPI.py

    r2523 r2524  
    6767                return ['suite-view'] 
    6868        else: 
    69             return ['main'] 
     69            if action == 'add': 
     70                return ['suite-add-form'] 
     71            elif action == 'suite-add': 
     72                return ['suite-add-submit', 'main'] 
     73            else: 
     74                return ['main'] 
    7075 
    7176    def performAction(self, req, cursor, modes, suite_id, plan_id): 
     
    7681                suites = self.dbUtils.get_suites(cursor) 
    7782                req.hdf['manualtesting.suites'] = suites 
    78                 return 'suites.cs' 
     83                return 'main.cs' 
    7984 
    8085            elif mode == 'plan-add-form': 
     
    113118                req.hdf['manualtesting.plans'] = plans 
    114119                return 'suite.cs' 
     120 
     121            elif mode == 'suite-add-form': 
     122                components = self.dbUtils.get_tracComponents(cursor) 
     123                req.hdf['manualtesting.trac.components'] = components 
     124                # Return template 
     125                return 'suite-add.cs' 
     126 
     127            elif mode == 'suite-add-submit': 
     128                # Get form values. 
     129                new_user = req.args.get('user') 
     130                new_title = req.args.get('title') 
     131                new_component = req.args.get('component') 
     132                new_description = req.args.get('description') 
     133                new_time = int( time.time() ) 
     134                # Add plan. 
     135                self.log.debug(new_description) 
     136                self.dbUtils.add_suite(cursor,new_user,new_title,new_component,new_description,new_time)