def add(self, **post): key = Keys.new(name="", key="") if post: fields = ['name', 'key'] data = self._get_data('key', fields, post) self._set_data(key, data) if key.validates() and Keys.add(key): cherrypy.session['flash'] = "Key successfully added" raise cherrypy.HTTPRedirect("/keys") cherrypy.session['flash'] = "Key is not a valid SSH-RSA" env = dict(key=key) return self.render("keys/add.html", crumbs=self.crumbs, **env)
def testGET(self): ak = ApiKeys() keys = ak.GET() self.assertEqual(keys, {}) key = Keys.new(name="test") Keys.add(key, persist=False) keys = ak.GET() self.assertEqual(keys, {'test': key.to_dict()}) key = Keys.new(name='hello') Keys.add(key, persist=False) keys = ak.GET() expected = { 'test': OrderedDict([ ('name', 'test'), ('key', None) ]), 'hello': OrderedDict([ ('name', 'hello'), ('key', None) ]) } self.assertEqual(keys, expected)