Add a few more tests to exercise more complex property presence
constraint checking.master
parent
5589480980
commit
823b67a4fc
|
@ -265,6 +265,15 @@ def test_location_lat_or_lon_dependency_missing(data, msg):
|
|||
assert msg in str(excinfo.value)
|
||||
|
||||
|
||||
def test_location_complex_presence_constraint():
|
||||
with pytest.raises(stix2.exceptions.PropertyPresenceError):
|
||||
stix2.parse({
|
||||
"type": "location",
|
||||
"spec_version": "2.1",
|
||||
"id": LOCATION_ID,
|
||||
})
|
||||
|
||||
|
||||
def test_google_map_url_long_lat_provided():
|
||||
expected_url = "https://www.google.com/maps/search/?api=1&query=41.862401%2C-87.616001"
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ import pytz
|
|||
|
||||
import stix2
|
||||
|
||||
from ...exceptions import InvalidValueError
|
||||
from ...exceptions import InvalidValueError, PropertyPresenceError
|
||||
from .constants import FAKE_TIME, MALWARE_ID, MALWARE_KWARGS
|
||||
|
||||
EXPECTED_MALWARE = """{
|
||||
|
@ -176,3 +176,24 @@ def test_malware_invalid_last_before_first():
|
|||
stix2.v21.Malware(first_seen="2017-01-01T12:34:56.000Z", last_seen="2017-01-01T12:33:56.000Z", **MALWARE_KWARGS)
|
||||
|
||||
assert "'last_seen' must be greater than or equal to 'first_seen'" in str(excinfo.value)
|
||||
|
||||
|
||||
def test_malware_family_no_name():
|
||||
with pytest.raises(PropertyPresenceError):
|
||||
stix2.parse({
|
||||
"type": "malware",
|
||||
"id": MALWARE_ID,
|
||||
"spec_version": "2.1",
|
||||
"is_family": True,
|
||||
"malware_types": ["a type"],
|
||||
})
|
||||
|
||||
|
||||
def test_malware_non_family_no_name():
|
||||
stix2.parse({
|
||||
"type": "malware",
|
||||
"id": MALWARE_ID,
|
||||
"spec_version": "2.1",
|
||||
"is_family": False,
|
||||
"malware_types": ["something"],
|
||||
})
|
||||
|
|
Loading…
Reference in New Issue