'Check we can run Rekall based artifacts.'

def testRekallVadArtifact(self):

    with aff4.FACTORY.Open(self.client_id, mode='rw', token=self.token) as fd:
        fd.Set(fd.Schema.KNOWLEDGE_BASE(os='Windows', environ_systemdrive='c:'))
    with test_lib.ConfigOverrider({'Rekall.enabled': True, 'Rekall.profile_server': rekall_test_lib.TestRekallRepositoryProfileServer.__name__}):
        fd = self.RunCollectorAndGetCollection(['FullVADBinaryList'], RekallMock(self.client_id, 'rekall_vad_result.dat.gz'))
    self.assertEqual(len(fd), 1705)
    self.assertEqual(fd[0].path, u'c:\\Windows\\System32\\ntdll.dll')
    for x in fd:
        self.assertEqual(x.pathtype, 'OS')
        extension = x.path.lower().split('.')[(-1)]
        self.assertIn(extension, ['exe', 'dll', 'pyd', 'drv', 'mui', 'cpl'])
