Chris Lenk
b633fd3785
WIP: Allow custom observables, extensions
2018-04-10 12:54:27 -04:00
Chris Lenk
5c5ca1f21c
Move 'extensions' property to custom Observables
...
... from custom Observable extensions (an extension doesn't need an
'extensions' property).
2018-04-09 15:35:08 -04:00
Chris Lenk
b851afba01
Req. custom extension properties as list of tuples
2018-04-09 15:34:39 -04:00
Emmanuelle Vargas-Gonzalez
1ff640de3c
Moved some test methods here
2018-04-06 14:24:15 -04:00
Emmanuelle Vargas-Gonzalez
cd85683f2b
WIP: Cleaned test_datastore to only include base store tests
2018-04-06 14:23:48 -04:00
Emmanuelle Vargas-Gonzalez
0d1729bbd7
Deleted test_filesystem in favor of test_datastore_filesystem.py
2018-04-06 14:20:39 -04:00
Emmanuelle Vargas-Gonzalez
80e4706ac4
Add some test objs previously in test_datastore.py
2018-04-06 14:19:51 -04:00
Emmanuelle Vargas-Gonzalez
c2e7cbb3e3
Moved from test_datastore.py -> new file test_datastore_taxii.py
2018-04-06 14:18:05 -04:00
Emmanuelle Vargas-Gonzalez
59ff0c4f26
Moved from test_datastore.py -> new file test_datastore_memory.py
2018-04-06 14:17:49 -04:00
Emmanuelle Vargas-Gonzalez
5c4472cbbd
Moved from test_datastore.py -> new file test_datastore_filters.py
2018-04-06 14:17:19 -04:00
Emmanuelle Vargas-Gonzalez
8f58f29358
Moved from test_datastore.py -> new file test_datastore_filesystem.py
2018-04-06 14:16:04 -04:00
Greg Back
a1ad90d43f
Merge pull request #150 from oasis-open/38-workbench
...
Create Workbench layer
2018-04-05 10:09:23 -05:00
Chris Lenk
e3bbc39353
Fix bug with mutable default parameter
2018-04-05 10:07:35 -04:00
Chris Lenk
589c00064b
Remove query_by_type
...
It's not that much of a shortcut and we can add it back in later if it
makes sense.
2018-04-04 14:09:54 -04:00
Greg Back
f61bc5e5ee
Merge pull request #154 from oasis-open/code-coverage
...
Increase code coverage, fix patterning bugs
2018-04-03 15:11:15 -05:00
Chris Lenk
dd8f0f5c72
Increase code coverage slightly
...
An Environment will always have a CompositeDataSource, so there was no way
those exceptions could get raised.
2018-04-02 16:44:57 -04:00
Chris Lenk
3abfe7868a
Add more patterning tests
...
... and fix bugs detected in doing so
2018-04-02 16:38:04 -04:00
=
90834c5b95
docs and tests for parse() mod
2018-03-30 13:21:07 -04:00
Chris Lenk
d453bf6f1a
Add a couple granular markings tests
2018-03-30 13:12:51 -04:00
Chris Lenk
4a2ac6df3a
Add/fix workbench docs, rename add() -> save()
2018-03-30 12:04:31 -04:00
Chris Lenk
b9bbd03481
Update workbench imports and documentation
...
Import a bunch of stuff so users can just "from stix2.workbench import *" and
not need to import other stuff (e.g. MarkingDefinition, Cyber Observable
Object classes, etc.) from stix2.
2018-03-30 12:04:31 -04:00
Chris Lenk
e48e0886a8
Improve code coverage slightly
...
Environment will always have a CompositeDataSource, so the try/catches
in add_filter/s did not make sense.
2018-03-30 12:02:27 -04:00
Chris Lenk
4fb24f14de
Allow passing add'l filters to related_to()
2018-03-30 12:02:27 -04:00
Chris Lenk
61733ad899
Add functions to set ObjectFactory default values
2018-03-30 12:02:27 -04:00
Chris Lenk
fd6d9f74e9
Move query_by_type() to DataStoreMixin
2018-03-30 12:02:27 -04:00
Chris Lenk
53c2d4fadf
Allow add'l filters in workbench query functions
2018-03-30 12:02:27 -04:00
Chris Lenk
e91b71f300
Test adding a data source to the workbench
2018-03-30 12:02:27 -04:00
Chris Lenk
5285934034
Make Workbench use implicit ObjectFactory
...
This is needed to implement functions like `set_default_creator`.
The changes to Tox are so that the wrapping we do in workbench doesn't
affect the rest of our tests. If we test them all in one go, pytest will
import all the tests before running any of them. This will cause the
workbench versions of the SDO classes to be used in all tests.
2018-03-30 12:02:27 -04:00
Chris Lenk
b2613ca62c
Add Workbench wrapper functions
2018-03-30 12:02:27 -04:00
Chris Lenk
aeff8f4bc0
Create Workbench layer
...
Contains a default implicit Environment and functions to get all objects
a specific type.
2018-03-30 12:02:27 -04:00
=
89cf4bc38f
WIP:allow unknown custom objects to be processed by parse; WIP: splitting up parse utility into components; found bug in tests that wasnt providing for proper teardown cleaning, fixed
2018-03-29 11:49:30 -04:00
Greg Back
e92db2417a
Merge pull request #147 from oasis-open/119-taxii-filters
...
119 taxii filters
2018-03-28 15:24:28 -05:00
=
51dcd6c184
same as last commit
2018-03-22 11:46:49 -04:00
=
b1579ae265
same as last commit
2018-03-22 11:36:35 -04:00
=
9f19245c8a
modify tests for python 3.x acceptance
2018-03-22 11:23:48 -04:00
=
536e56836c
adding Filter check when the Filter property is 'type', checks the value has no underscores (issue #136 )
2018-03-22 10:59:07 -04:00
=
7880e4a89b
passing TAXII query params in correct format to taxii2client; patching bug where TAXII query filters were being applied again locally to STIX objects via Filters (which doesnt work)
2018-03-21 17:19:05 -04:00
Chris Lenk
4e5eb88458
Increase versioning code coverage slightly
2018-03-16 16:38:29 -04:00
=
2fbde05e6c
putting test files in stix type folder that exists on git (bc there are files in it)
2018-03-14 19:34:07 -04:00
=
f4558c0958
pre-commit errors
2018-03-14 19:09:25 -04:00
=
af14cd4f88
more type checking of filesystem json files; added corresponding tests
2018-03-14 16:28:44 -04:00
Chris Lenk
5a71ef2e64
Fix allow_custom in functions calling new_version
2018-03-02 11:32:07 -05:00
Chris Lenk
1eab9b2832
Assume custom properties allowable in add_markings
2018-03-02 10:21:51 -05:00
Chris Lenk
5f703509be
Rename "sources" subpackage to "datastore"
...
Fix #114 .
2018-03-01 09:04:42 -05:00
Chris Lenk
7bdf786f89
Remove deprecated tests
2018-02-27 12:17:26 -05:00
Chris Lenk
57eb709c48
Merge branch 'master' into taxii_collection_source_404
2018-02-26 17:08:28 -05:00
Emmanuelle Vargas-Gonzalez
b6c22010bb
Fix imports for test_location.py
2018-02-23 08:52:34 -05:00
Emmanuelle Vargas-Gonzalez
06974c72f5
Merge branch 'master' of github.com:oasis-open/cti-python-stix2 into stix2.1
2018-02-23 08:21:16 -05:00
Chris Lenk
5427e79d71
Fix pycodestyle/isort issues
2018-02-19 15:03:20 -05:00
Chris Lenk
845934033e
Avoid checking valid refs when deepcopying
...
Using `deepcopy` on an Observable object that referenced another (e.g.
domain name -> resolves to -> IPv4 address) would fail because no
`_valid_refs` were available. Assuming that the references have
already been checked and are valid when using `deepcopy`, we can use a
special value ('*') to skip the valid_refs check.
This will also allow creating new versions of ObservedData objects that
contain related objects, since `new_version` calls `deepcopy`.
2018-02-19 14:44:28 -05:00
Emmanuelle Vargas-Gonzalez
722d46c6c5
Merge branch 'master' of github.com:oasis-open/cti-python-stix2 into stix2.1
2017-12-08 09:36:59 -05:00
Greg Back
126094106e
Merge branch 'master' into taxii_collection_source_404
2017-11-29 22:13:16 +00:00
=
742d249ee0
trying to fix timing bug
2017-11-29 12:50:13 -05:00
=
52a052d4dd
removing debug lines; attemting to fix a Travis test error
2017-11-29 12:27:20 -05:00
=
2399ee62ec
adjusting tests
2017-11-29 12:03:10 -05:00
Greg Back
98ca928dea
Merge pull request #111 from oasis-open/89-relationships
...
Support de-referencing relationships
2017-11-27 14:19:29 +00:00
Chris Lenk
6446be310c
Clean up relationships code
2017-11-21 15:57:35 -05:00
Chris Lenk
92f7e706bf
Improve error handling in relationships/related_to
2017-11-21 10:29:57 -05:00
Greg Back
f481788e1e
Merge pull request #112 from samcornwell/get_type_from_id
...
Add get_type_from_id utility function
2017-11-20 15:19:24 +00:00
Sam Cornwell
78612530ff
added tests for get_type_from_id
2017-11-19 22:27:31 -05:00
Emmanuelle Vargas-Gonzalez
c03ecb5230
Update test modules
2017-11-17 08:50:40 -05:00
Chris Lenk
515ff1e53f
Clean up test
2017-11-16 16:50:27 -05:00
Chris Lenk
cfa18bfd0d
Improve Environment tests
2017-11-16 16:43:27 -05:00
Chris Lenk
29dec997a0
Add related_to()
...
Function for calling relationships() but instead of just returning the
Relationship objects, returns the STIX objects being refered to in those
Relationships.
2017-11-16 14:58:59 -05:00
Chris Lenk
1b816c3d84
Test relationships() functions
2017-11-15 16:34:07 -05:00
Emmanuelle Vargas-Gonzalez
e6a8b555d3
Add test for CustomMarking. closes #109
2017-11-15 13:12:00 -05:00
Chris Lenk
f9ad7ceb65
Add relationships() function to Environment
2017-11-13 11:09:56 -05:00
Emmanuelle Vargas-Gonzalez
da66f10147
Make DataStore a regular class, remove unwanted overrides, update tests. Remove CustomProperty since it is no longer needed
2017-11-08 13:53:21 -05:00
Emmanuelle Vargas-Gonzalez
489e45ad1b
Merge branch 'master' of github.com:oasis-open/cti-python-stix2 into issue-98
2017-11-08 10:31:49 -05:00
Greg Back
5aa8c66bfc
Merge pull request #97 from oasis-open/memory-tests
...
Test MemoryStore saving/loading to/from file
2017-11-08 14:59:27 +00:00
Emmanuelle Vargas-Gonzalez
19818c8573
Remove stray print()
2017-11-06 14:21:29 -05:00
Emmanuelle Vargas-Gonzalez
0d5859b906
Test other CompositeDataSource operations
2017-11-03 15:13:00 -04:00
Emmanuelle Vargas-Gonzalez
79475586d8
Revert object_properties() to #85 fix. Update tests accordingly
2017-11-03 14:17:36 -04:00
Emmanuelle Vargas-Gonzalez
d6c14139f3
Extend object serialization options for _STIXBase
2017-11-03 08:02:32 -04:00
Emmanuelle Vargas-Gonzalez
cd6c7982af
Update tests related to Datastores
2017-11-02 21:31:56 -04:00
Emmanuelle Vargas-Gonzalez
f6f7d0aed8
Merge branch 'master' of github.com:oasis-open/cti-python-stix2
2017-11-02 07:48:37 -04:00
Greg Back
37e9049536
Merge pull request #93 from emmanvg/issue-91
...
Update stix2 Package Structure
2017-11-01 20:09:15 +00:00
Greg Back
f029a01f9a
Merge pull request #95 from oasis-open/filters
...
Change filters to allow filtering all properties
2017-11-01 20:04:48 +00:00
Emmanuelle Vargas-Gonzalez
a17d770d34
Merge master
2017-11-01 14:17:41 -04:00
Chris Lenk
7dd222b202
Test MemoryStore saving/loading to/from file
...
Python 3 dict.values() returns a view, not a list. See
https://stackoverflow.com/a/17431716/
Fix #65 .
2017-11-01 12:51:04 -04:00
Chris Lenk
c2d1e9777b
Clean up filters
...
- Simplify an if statement since split() with no matches returns single
item list
- Rename _all_filter -> _check_property and make it a method on Filter
- Raise an error instead of returning -1
- s/field/property
2017-11-01 10:40:10 -04:00
Chris Lenk
d93bf44c00
Merge branch 'master' into 76-filesystem-bundles
2017-10-31 14:10:29 -04:00
Chris Lenk
924c72e98a
Change filters to allow filtering all properties
...
(Not just common properties)
2017-10-30 17:25:32 -04:00
Emmanuelle Vargas-Gonzalez
a514c5a3df
Add test for _register_type()
2017-10-29 00:09:13 -04:00
Chris Lenk
612f2fbab8
Increase code coverage for filesystem datastore
...
Found a couple bugs in the process and fixed them, too.
2017-10-27 15:50:43 -04:00
Chris Lenk
f103084439
Add `bundlify` parameter to FileSystemStore/Sink
...
This brings back the option (disabled by default) to wrap objects in a bundle
when saving them to the filesystem.
2017-10-27 12:23:57 -04:00
Emmanuelle Vargas-Gonzalez
8c56adda21
Update package structure
2017-10-26 11:39:45 -04:00
Chris Lenk
5dffe74867
Clean up creator_of
...
(renamed from created_by)
2017-10-24 14:20:42 -04:00
Emmanuelle Vargas-Gonzalez
d4db4f0ab8
Define source code encoding
2017-10-24 12:53:53 -04:00
Chris Lenk
47b11453fa
Increase test coverage for memory datastore
2017-10-24 12:43:30 -04:00
Emmanuelle Vargas-Gonzalez
7b6236674c
Add new tests.
2017-10-23 08:06:29 -04:00
Chris Lenk
e1e368c0d2
Add created_by() function to Environment
2017-10-20 09:13:04 -04:00
Chris Lenk
c6d5eee083
Separate out Memory datatstore tests
...
Makes sure custom content can be added to a MemoryStore.
2017-10-18 18:31:46 -04:00
Chris Lenk
e1d8c2872e
Don't Bundlify data in FileSystemStore
...
Don't wrap objects in a Bundle when adding them to a FileSystemStore,
but still support getting objects from FileSystemStore that were saved
in a bundle.
Also:
- Add option to allow custom content in FileSystemStore
- Simplify an if statement
- Improve FileSystem docstrings
- Remove an unnecessary parse() call in FileSystemSource.get()
2017-10-18 15:46:45 -04:00
Emmanuelle Vargas-Gonzalez
be3e841ecb
New object test files
2017-10-18 13:58:24 -04:00
Chris Lenk
84094e9f79
Separate out filesystem tests
2017-10-18 08:27:12 -04:00
Emmanuelle Vargas-Gonzalez
6deaddc04e
Make sure custom properties are returned by object. closes #85
2017-10-12 14:08:32 -04:00
Chris Lenk
134267bfd6
Add FileSystem test fixture, test adding bundle
2017-10-12 11:20:20 -04:00
Greg Back
374539a6cc
Don't try to re-parse STIX Objects when adding to Bundle.
2017-10-12 14:38:25 +00:00
Chris Lenk
2b6023e7bb
Allow objects with custom properties in bundles
2017-10-09 17:33:12 -04:00
Chris Lenk
2f58d7888b
Merge branch 'master' of https://github.com/oasis-open/cti-python-stix2
2017-10-06 15:09:35 -04:00
Chris Lenk
e57c36f525
Check custom extension properties is not empty
2017-10-06 15:05:39 -04:00
Chris Lenk
d0f3fb0b47
Merge pull request #62 from oasis-open/documentation
...
Documentation: Fixes #53 .
2017-10-06 14:33:14 -04:00
Emmanuelle Vargas-Gonzalez
2b65f7205b
Mutex 'name' is required. Bunch of formatting, update test
2017-10-06 14:24:46 -04:00
Chris Lenk
23e3b3cc20
Fix FileSystemSource.all_versions bug
...
If `get()` returned a single STIX object, `all_versions()` would return a
list of the properties/values of that object.
2017-10-06 14:02:25 -04:00
Chris Lenk
1821cdb197
Merge pull request #71 from oasis-open/more_ds_tests
...
FileSystem tests
2017-10-06 13:31:50 -04:00
Chris Lenk
63e9d6af70
Merge pull request #69 from emmanvg/master
...
Update required properties in SDOs
2017-10-06 13:30:14 -04:00
Chris Lenk
79902f361e
Merge pull request #61 from oasis-open/list_comp
...
frivolous list comprehensions converted to list()
2017-10-06 13:29:22 -04:00
=
a36922990f
removing list comps
2017-10-06 11:20:18 -04:00
=
a26e9b589f
FileSystem tests, and test directory of sample stix2 data
2017-10-06 10:56:24 -04:00
Emmanuelle Vargas-Gonzalez
24bc282d7e
Update required properties, indicator label and tests. closes #68
2017-10-06 10:29:30 -04:00
Greg Back
1414035e8d
Isolate TimestampConstant in test.
2017-10-05 21:54:58 +00:00
Greg Back
f3431c97da
nested summaries for sources
2017-10-05 18:45:31 +00:00
Richard Piazza
0dc3226048
added test for Timestamp_Constant
2017-10-05 13:43:56 -04:00
Chris Lenk
233ee7924e
Merge branch 'master' into documentation
2017-10-04 10:38:40 -04:00
Chris Lenk
2bdf83401a
Add a shortcut for marking functions
...
So marking functions like `add_markings()` can be directly called as methods on
SDO/SRO classes. Note that they return new versions of the objects
because objects are immutable.
2017-10-03 10:28:58 -04:00
Chris Lenk
035f1a6c73
Support MarkingDefinition objs, not just ID strs
...
(when passed into `add_markings()` or `remove_markings()`)
2017-10-02 12:28:47 -04:00
=
4af665bf81
merge conflicts
2017-09-29 15:47:39 -04:00
Greg Back
b31b4f29f8
Handle inconsistent error messages between Python 2 and Python 3.
2017-09-29 18:45:15 +00:00
=
ffa2242878
code changes brought about by discussion of pull request of 'bug_fixes' branch
2017-09-29 11:24:19 -04:00
=
55943847fa
updated corresponding tests that would have broke
2017-09-22 11:49:54 -04:00
Chris Lenk
21d978acc8
Fix errors when instantiating custom classes
...
Defining a custom object/observable/extension class with no custom
__init__() function would result in an `AttributeError` or `TypeError`,
depending on if the class sub-classed `object` or not.
2017-09-21 09:11:01 -04:00
Chris Lenk
be07c32500
Add parse() to Environment layer
...
The Environment layer does not keep its own mapping of custom object types.
If we think it likely that users will want to maintain separate lists of
custom object types between two or more Environments, we can add this
later.
2017-09-08 12:40:01 -04:00
Chris Lenk
4dfb5d2365
Test Environment layer
2017-09-08 09:01:12 -04:00
Greg Back
adac43708b
Merge pull request #46 from oasis-open/markings
...
Marking Support
2017-09-05 19:08:45 +00:00
Chris Lenk
42962e6675
Improve markings tests
...
- Test markings functions with both dictionaries and our _STIXBase-derived
classes as input.
- Slightly improve test coverage.
- Drop Python 2.6 support.
2017-09-01 16:41:16 -04:00
Chris Lenk
cc66e1a492
Make markings function signatures consistent
...
Put `marking` before `selectors`. The granular marking version of
`is_marked` requires selectors to not be None.
2017-09-01 10:50:01 -04:00
Emmanuelle Vargas-Gonzalez
6f36ea8488
Merge remote-tracking branch 'oasis/master' into datastores
2017-09-01 10:13:57 -04:00
Emmanuelle Vargas-Gonzalez
13f2810b25
Remove name positional argument, clean memory.py redundant codeother minor changes. Increase coverage.
2017-09-01 08:15:50 -04:00
Greg Back
124da846c3
Merge branch 'master' into markings
2017-08-31 20:36:59 +00:00
Greg Back
b1054e780a
Merge remote-tracking branch 'origin/master' into datastores
2017-08-31 19:52:48 +00:00
Greg Back
ba846f9501
Clean up some tests.
2017-08-31 18:23:08 +00:00
Greg Back
7b46283a5c
Build filter function map
2017-08-31 18:21:29 +00:00
Chris Lenk
9d45a3dca2
Keep MALWARE_KWARGS to a minimal set
...
...but use an additional set with a description for marking tests.
2017-08-31 12:51:13 -04:00
Chris Lenk
15287959a4
Modify versioning API to work on dictionaries
...
This includes new_version() and revoke().
2017-08-31 12:28:07 -04:00
clenk
8a33cb7716
Touch up ObjectReferenceProperty checks
...
- reword "_refs" error
- check with isinstance instead of __class__.__name__
2017-08-30 16:15:05 -04:00
clenk
0e658255a8
Move check to when custom observable is defined
...
Catch properties named "_ref" or "_refs" that aren't
ObjectReferenceProperty when the custom observable is defined, not when
it is instantiated.
2017-08-30 15:33:28 -04:00
Emmanuelle Vargas-Gonzalez
8ca2c3390b
Minor changes to DataSource.apply_common_filters(). Improve overall code coverage.
2017-08-29 15:15:32 -04:00
Emmanuelle Vargas-Gonzalez
415c53066f
Code coverage changes, fix some tests. Add stix2-validator dependency.
2017-08-28 15:19:55 -04:00
Emmanuelle Vargas-Gonzalez
aea076103c
Update tests to improve coverage.
2017-08-28 14:33:12 -04:00
Emmanuelle Vargas-Gonzalez
07bbe23a98
Add some tests for custom objects.
2017-08-28 14:32:05 -04:00
clenk
095c5066d5
Touch up markings tests
...
Increase code coverage and s/tlo/sdo/
2017-08-25 15:56:39 -04:00
clenk
0cd75e3fba
Increase code coverage
2017-08-24 17:53:43 -04:00
clenk
6fa3c84aa3
Improve tests and coverage for custom content
...
In ObservableProperty.clean(), parse_observable() will handle the issue
of non-cyber observable objects being presnt in an observable property.
The line raising a ValueError would not be reached so it was removed.
2017-08-24 15:46:36 -04:00
Emmanuelle Vargas-Gonzalez
dd17e88ae0
Code refactor/clean-up, changed some exceptions. Update docstrings.
2017-08-24 12:47:14 -04:00
clenk
ee49e78c72
Add custom extensions to cyber observables
...
Fix #31 .
2017-08-23 18:36:24 -04:00
Emmanuelle Vargas-Gonzalez
8d4c1d55b5
Minor style changes.
2017-08-23 13:12:40 -04:00
Emmanuelle Vargas-Gonzalez
f33427328b
Update tests for object and granular markings.
2017-08-23 13:07:22 -04:00
Emmanuelle Vargas-Gonzalez
f437a4df5b
Merge branch 'datastores' of github.com:oasis-open/cti-python-stix2 into datastores
2017-08-22 10:47:23 -04:00
Emmanuelle Vargas-Gonzalez
d060abbed5
Updated regex expressions. Thanks to @drothenberg for that contribution!
2017-08-22 10:47:13 -04:00