예제 #1
0
 def test_list(self):
     qs = models.QuerySnippet(
         trigger="x",
         description="y",
         snippet="z",
         user=self.factory.user,
         org=self.factory.org,
     )
     models.db.session.add(qs)
     models.db.session.commit()
     res = self.make_request("get",
                             "/api/query_snippets",
                             user=self.factory.user)
     self.assertEqual(res.status_code, 200)
     data = res.json
     self.assertEqual(len(data), 1)
     self.assertEqual(
         project(data[0], ["id", "trigger", "description", "snippet"]),
         {
             "id": 1,
             "trigger": "x",
             "description": "y",
             "snippet": "z"
         },
     )
     self.assertEqual(qs.trigger, "x")
     self.assertEqual(qs.description, "y")
     self.assertEqual(qs.snippet, "z")
예제 #2
0
 def test_edit(self):
     qs = models.QuerySnippet(trigger='a',
                              description='b',
                              snippet='c',
                              user=self.factory.user,
                              org=self.factory.org)
     models.db.session.add(qs)
     models.db.session.commit()
     res = self.make_request('post',
                             '/api/query_snippets/1',
                             data={
                                 'trigger': 'x',
                                 'description': 'y',
                                 'snippet': 'z'
                             },
                             user=self.factory.user)
     self.assertEqual(
         project(res.json, ['id', 'trigger', 'description', 'snippet']), {
             'id': 1,
             'trigger': 'x',
             'description': 'y',
             'snippet': 'z',
         })
     self.assertEqual(qs.trigger, 'x')
     self.assertEqual(qs.description, 'y')
     self.assertEqual(qs.snippet, 'z')
예제 #3
0
 def test_edit(self):
     qs = models.QuerySnippet(
         trigger="a",
         description="b",
         snippet="c",
         user=self.factory.user,
         org=self.factory.org,
     )
     models.db.session.add(qs)
     models.db.session.commit()
     res = self.make_request(
         "post",
         "/api/query_snippets/1",
         data={
             "trigger": "x",
             "description": "y",
             "snippet": "z"
         },
         user=self.factory.user,
     )
     self.assertEqual(
         project(res.json, ["id", "trigger", "description", "snippet"]),
         {
             "id": 1,
             "trigger": "x",
             "description": "y",
             "snippet": "z"
         },
     )
     self.assertEqual(qs.trigger, "x")
     self.assertEqual(qs.description, "y")
     self.assertEqual(qs.snippet, "z")
예제 #4
0
 def test_list(self):
     qs = models.QuerySnippet(
         trigger='x',
         description='y',
         snippet='z',
         user=self.factory.user,
         org=self.factory.org
     )
     models.db.session.add(qs)
     models.db.session.commit()
     res = self.make_request(
         'get',
         '/api/query_snippets',
         user=self.factory.user)
     self.assertEqual(res.status_code, 200)
     data = res.json
     self.assertEqual(len(data), 1)
     self.assertEqual(
         project(data[0], ['id', 'trigger', 'description', 'snippet']), {
             'id': 1,
             'trigger': 'x',
             'description': 'y',
             'snippet': 'z',
         })
     self.assertEqual(qs.trigger, 'x')
     self.assertEqual(qs.description, 'y')
     self.assertEqual(qs.snippet, 'z')
예제 #5
0
 def test_delete(self):
     qs = models.QuerySnippet(trigger='a',
                              description='b',
                              snippet='c',
                              user=self.factory.user,
                              org=self.factory.org)
     models.db.session.add(qs)
     models.db.session.commit()
     self.make_request('delete',
                       '/api/query_snippets/1',
                       user=self.factory.user)
     self.assertEqual(models.QuerySnippet.query.count(), 0)
예제 #6
0
 def test_delete(self):
     qs = models.QuerySnippet(
         trigger="a",
         description="b",
         snippet="c",
         user=self.factory.user,
         org=self.factory.org,
     )
     models.db.session.add(qs)
     models.db.session.commit()
     self.make_request("delete", "/api/query_snippets/1", user=self.factory.user)
     self.assertEqual(models.QuerySnippet.query.count(), 0)
예제 #7
0
    def post(self):
        req = request.get_json(True)
        require_fields(req, ('trigger', 'description', 'snippet'))

        snippet = models.QuerySnippet(trigger=req['trigger'],
                                      description=req['description'],
                                      snippet=req['snippet'],
                                      user=self.current_user,
                                      org=self.current_org)

        models.db.session.add(snippet)

        self.record_event({
            'action': 'create',
            'object_id': snippet.id,
            'object_type': 'query_snippet'
        })
        models.db.session.commit()
        return snippet.to_dict()
예제 #8
0
    def post(self):
        req = request.get_json(True)
        require_fields(req, ("trigger", "description", "snippet"))

        snippet = models.QuerySnippet(
            trigger=req["trigger"],
            description=req["description"],
            snippet=req["snippet"],
            user=self.current_user,
            org=self.current_org,
        )

        models.db.session.add(snippet)
        models.db.session.commit()

        self.record_event({
            "action": "create",
            "object_id": snippet.id,
            "object_type": "query_snippet",
        })

        return snippet.to_dict()