public void Should_be_able_to_retrieve_well_known_hash() { var configuration = OpswatSection.Configuration(); var api = new OpswatApi(configuration); var response = api.GetResponse( new RestRequest(api.GetFullApiUrl("hash/6A5C19D9FFE8804586E8F4C0DFCC66DE"), DataFormat.Json)) .AsDynamic(); Assert.That(response.scan_results.scan_all_result_a.ToString(), Is.EqualTo("Infected")); }
public void Should_be_able_to_handle_a_macro_enabled_spreadsheet() { var configuration = OpswatSection.Configuration(); var service = new OpswatMalwareService(configuration, new OpswatApi(configuration)); var document = new Document(Guid.NewGuid(), Guid.NewGuid(), "sanitize.xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", File.ReadAllBytes(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, ".files\\sanitize.xlsm")), "integration-test", "system", DateTime.Now); service.Register(document); Assert.That(document.ContainsProperty("data_id"), Is.True); Assert.That(document.ContainsProperty("sha256"), Is.True); Assert.That(document.ContainsProperty("in_queue"), Is.True); Assert.That(document.GetPropertyValue("status"), Is.EqualTo("inqueue")); Assert.That(document.ContainsProperty("scan_all_result_i"), Is.False); Assert.That(document.ContainsProperty("scan_all_result_a"), Is.False); Assert.That(document.ContainsProperty("progress_percentage"), Is.False); Assert.That(document.ContainsProperty("PollIntervalTimespan"), Is.False); Poll(service, document, 120); Assert.That(document.ContainsProperty("data_id"), Is.True); if (configuration.ShouldSandbox(".xlsx")) { Assert.That(document.ContainsProperty("sandbox_id"), Is.True); } Assert.That(document.ContainsProperty("in_queue"), Is.False); Assert.That(document.ContainsProperty("status"), Is.False); Assert.That(document.ContainsProperty("PollIntervalTimespan"), Is.False); Assert.That(document.GetPropertyValue("scan_all_result_i"), Is.EqualTo("0")); Assert.That(document.GetPropertyValue("scan_all_result_a").ToLowerInvariant(), Is.EqualTo("no threat detected")); Assert.That(document.GetPropertyValue("progress_percentage"), Is.EqualTo("100")); }