|
6 | 6 |
|
7 | 7 | from cybox.core import Observable, ObservableComposition |
8 | 8 | from cybox.objects.file_object import File |
| 9 | +import mixbox.typedlist |
9 | 10 | from mixbox.vendor.six import text_type |
10 | 11 |
|
11 | 12 | from stix.core import STIXPackage |
@@ -493,6 +494,36 @@ def test_observables_property_standard(self): |
493 | 494 | self.assertEqual([obs.to_dict()], |
494 | 495 | [x.to_dict() for x in ind2.observables]) |
495 | 496 |
|
| 497 | + def test_set_indicator_observables_to_single_observable(self): |
| 498 | + # https://github.com/STIXProject/python-stix/issues/325 |
| 499 | + i = Indicator() |
| 500 | + o1 = Observable() |
| 501 | + o2 = Observable() |
| 502 | + |
| 503 | + i.observables = o1 |
| 504 | + self.assertEqual(type([]), type(i.observables)) |
| 505 | + self.assertEqual(1, len(i.observables)) |
| 506 | + |
| 507 | + def test_set_indicator_observables_to_list_of_two_observables(self): |
| 508 | + # https://github.com/STIXProject/python-stix/issues/325 |
| 509 | + i = Indicator() |
| 510 | + o1 = Observable() |
| 511 | + o2 = Observable() |
| 512 | + |
| 513 | + i.observables = [o1, o2] |
| 514 | + self.assertEqual(mixbox.typedlist.TypedList, type(i.observables)) |
| 515 | + self.assertEqual(2, len(i.observables)) |
| 516 | + |
| 517 | + def test_set_indicator_observables_to_list_of_one_observable(self): |
| 518 | + # https://github.com/STIXProject/python-stix/issues/325 |
| 519 | + i = Indicator() |
| 520 | + o1 = Observable() |
| 521 | + o2 = Observable() |
| 522 | + |
| 523 | + i.observables = [o1] |
| 524 | + self.assertEqual(type([]), type(i.observables)) |
| 525 | + self.assertEqual(1, len(i.observables)) |
| 526 | + |
496 | 527 |
|
497 | 528 | class RelatedCampaignReferencesTests(unittest.TestCase, EntityTestCase): |
498 | 529 | klass = RelatedCampaignRefs |
|
0 commit comments