예제 #1
0
 def _save(self):
     '''Update the database with our data.'''
     if bacula_tools.PASSWORD in self.keys():
         if self[bacula_tools.PASSWORD] == bacula_tools.GENERATE:
             self[bacula_tools.PASSWORD] = bacula_tools.generate_password()
     if self[bacula_tools.ID]:
         keys = [x for x in self.keys() if not x == bacula_tools.ID]
         keys.sort()
         sql = 'UPDATE %s SET %s WHERE id = %%s' % (self.table, ', '.join(
             ['`%s` = %%s' % x for x in keys]))
         values = tuple([self[x] for x in keys] + [
             self[bacula_tools.ID],
         ])
         return self.bc.do_sql(sql, values)
     sql = 'INSERT INTO %s (`%s`) VALUES (%s)' % (self.table, '`,`'.join(
         self.keys()), ','.join(['%s' for x in self.keys()]))
     logging.debug('%s, %s', sql, self.values())
     try:
         self.bc.do_sql(sql, tuple(self.values()))
         return self.search()
     except Exception as e:
         if e.args[0] == 1062:
             die('\t%s "%s" already exists.  You must delete it first.' %
                 (self.word.capitalize(), self[bacula_tools.NAME]))
         print(e)  # pragma: no cover
         raise  # pragma: no cover
예제 #2
0
 def _save(self):
     '''Update the database with our data.'''
     if bacula_tools.PASSWORD in self.keys():
         if self[bacula_tools.PASSWORD] == bacula_tools.GENERATE:
             self[bacula_tools.PASSWORD] = bacula_tools.generate_password()
     if self[bacula_tools.ID]:
         keys = [x for x in self.keys() if not x == bacula_tools.ID]
         keys.sort()
         sql = 'UPDATE %s SET %s WHERE id = %%s' % (self.table,
                                                    ', '.join(['`%s` = %%s' % x for x in keys]))
         values = tuple([self[x] for x in keys] + [self[bacula_tools.ID], ])
         return self.bc.do_sql(sql, values)
     sql = 'INSERT INTO %s (`%s`) VALUES (%s)' % (
         self.table, '`,`'.join(self.keys()), ','.join(['%s' for x in self.keys()]))
     logging.debug('%s, %s', sql, self.values())
     try:
         self.bc.do_sql(sql, tuple(self.values()))
         return self.search()
     except Exception as e:
         if e.args[0] == 1062:
             die('\t%s "%s" already exists.  You must delete it first.' %
                 (self.word.capitalize(), self[bacula_tools.NAME]))
         print(e)  # pragma: no cover
         raise  # pragma: no cover
예제 #3
0
 def test_password_uniqueness(self):
     self.assertNotEquals(bacula_tools.generate_password(), bacula_tools.generate_password())
     return
예제 #4
0
 def test_length_set(self):
     self.assertEquals(len(bacula_tools.generate_password(22)), 22)
     return
예제 #5
0
 def test_length(self):
     self.assertEquals(len(bacula_tools.generate_password()), 44)
     return
예제 #6
0
 def test_password_uniqueness(self):
     self.assertNotEquals(bacula_tools.generate_password(),
                          bacula_tools.generate_password())
     return
예제 #7
0
 def test_length_set(self):
     self.assertEquals(len(bacula_tools.generate_password(22)), 22)
     return
예제 #8
0
 def test_length(self):
     self.assertEquals(len(bacula_tools.generate_password()), 44)
     return