mmisp-lib 0.6.0__tar.gz → 0.6.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/PKG-INFO +1 -1
  2. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/pyproject.toml +1 -1
  3. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/organisations.py +16 -3
  4. mmisp_lib-0.6.1/src/mmisp/lib/fallbacks.py +18 -0
  5. mmisp_lib-0.6.1/src/mmisp/lib/serialisation_helper.py +9 -0
  6. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/fixtures.py +122 -0
  7. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp_lib.egg-info/PKG-INFO +1 -1
  8. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp_lib.egg-info/SOURCES.txt +2 -0
  9. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/LICENSE +0 -0
  10. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/README.md +0 -0
  11. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/setup.cfg +0 -0
  12. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/__init__.py +0 -0
  13. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/attributes.py +0 -0
  14. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/auth_keys.py +0 -0
  15. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/authentication.py +0 -0
  16. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/common.py +0 -0
  17. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/events.py +0 -0
  18. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/feeds.py +0 -0
  19. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/galaxies.py +0 -0
  20. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/galaxy_clusters.py +0 -0
  21. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/galaxy_common.py +0 -0
  22. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/jobs.py +0 -0
  23. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/logs.py +0 -0
  24. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/noticelists.py +0 -0
  25. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/objects.py +0 -0
  26. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/py.typed +0 -0
  27. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/responses/__init__.py +0 -0
  28. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/responses/check_graph_response.py +0 -0
  29. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/responses/standard_status_response.py +0 -0
  30. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/roles.py +0 -0
  31. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/servers.py +0 -0
  32. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/sharing_groups.py +0 -0
  33. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/sightings.py +0 -0
  34. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/statistics.py +0 -0
  35. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/tags.py +0 -0
  36. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/taxonomies.py +0 -0
  37. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/user_settings.py +0 -0
  38. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/users.py +0 -0
  39. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/warninglists.py +0 -0
  40. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/api_schemas/workflows.py +0 -0
  41. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/commandline_tool/__init__.py +0 -0
  42. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/commandline_tool/main.py +0 -0
  43. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/commandline_tool/organisation.py +0 -0
  44. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/commandline_tool/py.typed +0 -0
  45. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/commandline_tool/setup.py +0 -0
  46. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/commandline_tool/user.py +0 -0
  47. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/__init__.py +0 -0
  48. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/additional_properties.py +0 -0
  49. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/all_models.py +0 -0
  50. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/config.py +0 -0
  51. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/database.py +0 -0
  52. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/mixins.py +0 -0
  53. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/__init__.py +0 -0
  54. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/admin_setting.py +0 -0
  55. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/attribute.py +0 -0
  56. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/auth_key.py +0 -0
  57. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/event.py +0 -0
  58. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/feed.py +0 -0
  59. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/galaxy.py +0 -0
  60. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/galaxy_cluster.py +0 -0
  61. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/identity_provider.py +0 -0
  62. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/log.py +0 -0
  63. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/noticelist.py +0 -0
  64. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/object.py +0 -0
  65. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/organisation.py +0 -0
  66. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/role.py +0 -0
  67. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/server.py +0 -0
  68. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/sharing_group.py +0 -0
  69. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/sighting.py +0 -0
  70. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/tag.py +0 -0
  71. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/taxonomy.py +0 -0
  72. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/user.py +0 -0
  73. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/user_setting.py +0 -0
  74. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/warninglist.py +0 -0
  75. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/workflow.py +0 -0
  76. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/models/workflow_blueprint.py +0 -0
  77. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/mypy.py +0 -0
  78. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/print_changes.py +0 -0
  79. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/db/py.typed +0 -0
  80. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/lib/__init__.py +0 -0
  81. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/lib/actions.py +0 -0
  82. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/lib/attribute_search_filter.py +0 -0
  83. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/lib/attributes.py +0 -0
  84. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/lib/galaxies.py +0 -0
  85. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/lib/logging.py +0 -0
  86. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/lib/permissions.py +0 -0
  87. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/lib/py.typed +0 -0
  88. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/lib/uuid.py +0 -0
  89. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/plugins/py.typed +0 -0
  90. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/__init__.py +0 -0
  91. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/compatibility_helpers.py +0 -0
  92. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/feed_generator.py +0 -0
  93. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/attribute_generator.py +0 -0
  94. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/auth_key_generator.py +0 -0
  95. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/event_generator.py +0 -0
  96. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/galaxy_generator.py +0 -0
  97. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/identity_provider_generator.py +0 -0
  98. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/noticelist_generator.py +0 -0
  99. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/organisation_generator.py +0 -0
  100. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/role_generator.py +0 -0
  101. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/server_generator.py +0 -0
  102. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/sharing_group_generator.py +0 -0
  103. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/tag_generator.py +0 -0
  104. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/taxonomy_generator.py +0 -0
  105. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/user_generator.py +0 -0
  106. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/user_setting_generator.py +0 -0
  107. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/warninglist_generator.py +0 -0
  108. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/model_generators/workflow_generator.py +0 -0
  109. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/object_generator.py +0 -0
  110. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/sighting_generator.py +0 -0
  111. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/tag_generator.py +0 -0
  112. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/tests/generators/taxonomies_generator.py +0 -0
  113. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/util/__init__.py +0 -0
  114. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/util/crypto.py +0 -0
  115. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/util/models.py +0 -0
  116. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/util/partial.py +0 -0
  117. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/util/py.typed +0 -0
  118. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/util/uuid.py +0 -0
  119. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/workflows/__init__.py +0 -0
  120. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/workflows/execution.py +0 -0
  121. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/workflows/fastapi.py +0 -0
  122. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/workflows/graph.py +0 -0
  123. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/workflows/input.py +0 -0
  124. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/workflows/legacy.py +0 -0
  125. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/workflows/misp_core_format.py +0 -0
  126. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/workflows/modules.py +0 -0
  127. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp/workflows/py.typed +0 -0
  128. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp_lib.egg-info/dependency_links.txt +0 -0
  129. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp_lib.egg-info/requires.txt +0 -0
  130. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/src/mmisp_lib.egg-info/top_level.txt +0 -0
  131. {mmisp_lib-0.6.0 → mmisp_lib-0.6.1}/tests/test_commandline_tool.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mmisp-lib
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Requires-Python: >=3.11.0
5
5
  Description-Content-Type: text/markdown
6
6
  License-File: LICENSE
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mmisp-lib"
3
- version = "0.6.0"
3
+ version = "0.6.1"
4
4
  description = ""
5
5
  authors = []
6
6
  readme = "README.md"
@@ -1,7 +1,10 @@
1
1
  from datetime import datetime
2
+ from typing import Self
2
3
 
3
4
  from pydantic import BaseModel
4
5
 
6
+ from mmisp.lib.serialisation_helper import timestamp_or_empty_string
7
+
5
8
 
6
9
  class BaseOrganisation(BaseModel):
7
10
  id: str | None = None
@@ -34,15 +37,25 @@ class GetOrganisationResponse(BaseModel):
34
37
  sector: str | None = None
35
38
  type: str | None = None
36
39
  uuid: str | None = None
37
- date_created: datetime
38
- date_modified: datetime
40
+ # the fallback GENERIC_MISP_ORGANISATION doesn't have this property
41
+ # str is needed because its returned as string
42
+ date_created: datetime | None | str = None
43
+ date_modified: datetime | None | str = None
39
44
  description: str | None = None
40
45
  created_by: str
41
46
  contacts: str | None = None
42
47
  local: bool
43
- restricted_to_domain: str | None = None
48
+ restricted_to_domain: str | list | None = None
44
49
  landingpage: str | None = None
45
50
 
51
+ def dict(self: Self, *args, **kwargs) -> dict:
52
+ d = super().dict(*args, **kwargs)
53
+
54
+ d["date_created"] = timestamp_or_empty_string(d["date_created"])
55
+ d["date_modified"] = timestamp_or_empty_string(d["date_modified"])
56
+
57
+ return d
58
+
46
59
 
47
60
  class GetAllOrganisationsOrganisation(BaseModel):
48
61
  id: str
@@ -0,0 +1,18 @@
1
+ from mmisp.db.models.organisation import Organisation
2
+
3
+ GENERIC_MISP_ORGANISATION = Organisation(
4
+ id="0",
5
+ name="MISP",
6
+ date_created=None,
7
+ date_modified=None,
8
+ description="Automatically generated MISP organisation",
9
+ type="",
10
+ nationality="Not specified",
11
+ sector="",
12
+ created_by="0",
13
+ uuid="0",
14
+ contacts="",
15
+ local=True,
16
+ restricted_to_domain=[],
17
+ landingpage=None,
18
+ )
@@ -0,0 +1,9 @@
1
+ from datetime import datetime
2
+
3
+
4
+ def timestamp_or_empty_string(ts: datetime | str | None) -> str:
5
+ if isinstance(ts, datetime):
6
+ return ts.strftime("%Y-%m-%d %H:%M:%S")
7
+ if ts is None:
8
+ return ""
9
+ return ts
@@ -469,6 +469,16 @@ def galaxy_cluster_collection_uuid():
469
469
  return uuid()
470
470
 
471
471
 
472
+ @pytest.fixture
473
+ def galaxy_default_cluster_one_uuid():
474
+ return uuid()
475
+
476
+
477
+ @pytest.fixture
478
+ def galaxy_default_cluster_two_uuid():
479
+ return uuid()
480
+
481
+
472
482
  @pytest.fixture
473
483
  def galaxy_cluster_one_uuid():
474
484
  return uuid()
@@ -479,6 +489,118 @@ def galaxy_cluster_two_uuid():
479
489
  return uuid()
480
490
 
481
491
 
492
+ @pytest_asyncio.fixture
493
+ async def test_default_galaxy(db, galaxy_default_cluster_one_uuid, galaxy_default_cluster_two_uuid):
494
+ galaxy = Galaxy(
495
+ namespace="misp",
496
+ name="test galaxy",
497
+ type="test galaxy type",
498
+ description="test",
499
+ version="1",
500
+ kill_chain_order=None,
501
+ uuid=uuid(),
502
+ enabled=True,
503
+ local_only=False,
504
+ )
505
+
506
+ db.add(galaxy)
507
+ await db.commit()
508
+ await db.refresh(galaxy)
509
+
510
+ galaxy_cluster = GalaxyCluster(
511
+ uuid=galaxy_default_cluster_one_uuid,
512
+ collection_uuid="",
513
+ type="test galaxy type",
514
+ value="test",
515
+ tag_name=galaxy_tag_name_from_uuid(galaxy_default_cluster_one_uuid),
516
+ description="test",
517
+ galaxy_id=galaxy.id,
518
+ source="me",
519
+ authors='["Konstantin Zangerle", "Test Writer"]',
520
+ version=1,
521
+ distribution=3,
522
+ sharing_group_id=None,
523
+ org_id=0,
524
+ orgc_id=0,
525
+ default=0,
526
+ locked=0,
527
+ extends_uuid=None,
528
+ extends_version=None,
529
+ published=True,
530
+ deleted=False,
531
+ )
532
+ galaxy_cluster2 = GalaxyCluster(
533
+ uuid=galaxy_default_cluster_two_uuid,
534
+ collection_uuid="",
535
+ type="test galaxy type",
536
+ value="test",
537
+ tag_name=galaxy_tag_name_from_uuid(galaxy_default_cluster_two_uuid),
538
+ description="test",
539
+ galaxy_id=galaxy.id,
540
+ source="me",
541
+ authors='["Konstantin Zangerle", "Test Writer"]',
542
+ version=1,
543
+ distribution=3,
544
+ sharing_group_id=None,
545
+ org_id=0,
546
+ orgc_id=0,
547
+ default=0,
548
+ locked=0,
549
+ extends_uuid=None,
550
+ extends_version=None,
551
+ published=True,
552
+ deleted=False,
553
+ )
554
+
555
+ db.add(galaxy_cluster)
556
+ db.add(galaxy_cluster2)
557
+
558
+ await db.commit()
559
+ await db.refresh(galaxy_cluster)
560
+ await db.refresh(galaxy_cluster2)
561
+
562
+ galaxy_element = GalaxyElement(
563
+ galaxy_cluster_id=galaxy_cluster.id, key="refs", value="http://test-one-one.example.com"
564
+ )
565
+ galaxy_element2 = GalaxyElement(
566
+ galaxy_cluster_id=galaxy_cluster.id, key="refs", value="http://test-one-two.example.com"
567
+ )
568
+
569
+ galaxy_element21 = GalaxyElement(
570
+ galaxy_cluster_id=galaxy_cluster2.id, key="refs", value="http://test-two-one.example.com"
571
+ )
572
+ galaxy_element22 = GalaxyElement(
573
+ galaxy_cluster_id=galaxy_cluster2.id, key="refs", value="http://test-two-two.example.com"
574
+ )
575
+
576
+ db.add(galaxy_element)
577
+ db.add(galaxy_element2)
578
+
579
+ db.add(galaxy_element21)
580
+ db.add(galaxy_element22)
581
+
582
+ await db.commit()
583
+
584
+ yield {
585
+ "galaxy": galaxy,
586
+ "galaxy_cluster": galaxy_cluster,
587
+ "galaxy_cluster2": galaxy_cluster2,
588
+ "galaxy_element": galaxy_element,
589
+ "galaxy_element2": galaxy_element2,
590
+ "galaxy_element21": galaxy_element21,
591
+ "galaxy_element22": galaxy_element22,
592
+ }
593
+
594
+ await db.delete(galaxy_element22)
595
+ await db.delete(galaxy_element21)
596
+ await db.delete(galaxy_element2)
597
+ await db.delete(galaxy_element)
598
+ await db.delete(galaxy_cluster2)
599
+ await db.delete(galaxy_cluster)
600
+ await db.delete(galaxy)
601
+ await db.commit()
602
+
603
+
482
604
  @pytest_asyncio.fixture
483
605
  async def test_galaxy(db, instance_owner_org, galaxy_cluster_one_uuid, galaxy_cluster_two_uuid):
484
606
  galaxy = Galaxy(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mmisp-lib
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Requires-Python: >=3.11.0
5
5
  Description-Content-Type: text/markdown
6
6
  License-File: LICENSE
@@ -74,10 +74,12 @@ src/mmisp/lib/__init__.py
74
74
  src/mmisp/lib/actions.py
75
75
  src/mmisp/lib/attribute_search_filter.py
76
76
  src/mmisp/lib/attributes.py
77
+ src/mmisp/lib/fallbacks.py
77
78
  src/mmisp/lib/galaxies.py
78
79
  src/mmisp/lib/logging.py
79
80
  src/mmisp/lib/permissions.py
80
81
  src/mmisp/lib/py.typed
82
+ src/mmisp/lib/serialisation_helper.py
81
83
  src/mmisp/lib/uuid.py
82
84
  src/mmisp/plugins/py.typed
83
85
  src/mmisp/tests/__init__.py
File without changes
File without changes
File without changes