Exemple #1
0
  def Handle(self, args, token=None):
    crashes = data_store.REL_DB.ReadClientCrashInfoHistory(str(args.client_id))
    total_count = len(crashes)
    result = api_call_handler_utils.FilterList(
        crashes, args.offset, count=args.count, filter_value=args.filter)

    return ApiListClientCrashesResult(items=result, total_count=total_count)
Exemple #2
0
  def Handle(self, args, token=None):
    if data_store.RelationalDBEnabled():
      crashes = data_store.REL_DB.ReadClientCrashInfoHistory(
          str(args.client_id))
      total_count = len(crashes)
      result = api_call_handler_utils.FilterList(
          crashes, args.offset, count=args.count, filter_value=args.filter)
    else:
      crashes = aff4_grr.VFSGRRClient.CrashCollectionForCID(
          args.client_id.ToClientURN())

      total_count = len(crashes)
      result = api_call_handler_utils.FilterCollection(
          crashes, args.offset, count=args.count, filter_value=args.filter)

    return ApiListClientCrashesResult(items=result, total_count=total_count)
 def testFiltersByFilterString(self):
     data = api_call_handler_utils.FilterList(self.l, 0, 0, "tmp-8")
     self.assertLen(data, 1)
     self.assertEqual(data[0].path, "/var/os/tmp-8")
 def testRaisesOnNegativeCount(self):
     with self.assertRaises(ValueError):
         api_call_handler_utils.FilterList(self.l, 0, -10, None)
 def testIngoresTooBigCount(self):
     data = api_call_handler_utils.FilterList(self.l, 0, 50, None)
     self.assertLen(data, 10)
     self.assertEqual(data[0].path, "/var/os/tmp-0")
     self.assertEqual(data[-1].path, "/var/os/tmp-9")
 def testFiltersByOffsetAndCount(self):
     data = api_call_handler_utils.FilterList(self.l, 2, 5, None)
     self.assertLen(data, 5)
     self.assertEqual(data[0].path, "/var/os/tmp-2")
     self.assertEqual(data[-1].path, "/var/os/tmp-6")