dkist-processing-test 1.9.13rc2__tar.gz → 1.10.0rc1__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.

Potentially problematic release.


This version of dkist-processing-test might be problematic. Click here for more details.

Files changed (40) hide show
  1. {dkist-processing-test-1.9.13rc2/dkist_processing_test.egg-info → dkist-processing-test-1.10.0rc1}/PKG-INFO +2 -1
  2. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/quality.py +4 -4
  3. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/trial_output_data.py +4 -0
  4. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tests/test_tasks.py +25 -0
  5. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/workflows/common_tasks.py +23 -10
  6. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/workflows/end_to_end.py +9 -5
  7. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/workflows/trial_end_to_end.py +17 -1
  8. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1/dkist_processing_test.egg-info}/PKG-INFO +2 -1
  9. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test.egg-info/requires.txt +5 -1
  10. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/setup.cfg +4 -1
  11. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/.gitignore +0 -0
  12. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/.pre-commit-config.yaml +0 -0
  13. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/README.rst +0 -0
  14. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/bitbucket-pipelines.yml +0 -0
  15. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/__init__.py +0 -0
  16. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/models/__init__.py +0 -0
  17. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/models/parameters.py +0 -0
  18. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/__init__.py +0 -0
  19. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/exercise_numba.py +0 -0
  20. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/fail.py +0 -0
  21. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/fake_science.py +0 -0
  22. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/high_memory.py +0 -0
  23. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/manual.py +0 -0
  24. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/movie.py +0 -0
  25. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/noop.py +0 -0
  26. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/parse.py +0 -0
  27. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tasks/write_l1.py +0 -0
  28. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tests/__init__.py +0 -0
  29. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tests/conftest.py +0 -0
  30. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tests/test_parameters.py +0 -0
  31. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/tests/test_workflows.py +0 -0
  32. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/workflows/__init__.py +0 -0
  33. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/workflows/exercise_numba.py +0 -0
  34. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/workflows/fail.py +0 -0
  35. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/workflows/noop.py +0 -0
  36. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test/workflows/resource_queue.py +0 -0
  37. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test.egg-info/SOURCES.txt +0 -0
  38. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test.egg-info/dependency_links.txt +0 -0
  39. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/dkist_processing_test.egg-info/top_level.txt +0 -0
  40. {dkist-processing-test-1.9.13rc2 → dkist-processing-test-1.10.0rc1}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dkist-processing-test
3
- Version: 1.9.13rc2
3
+ Version: 1.10.0rc1
4
4
  Summary: Example Instrument code that is used by the DKIST Science Data Processing pipelines to test processing infrastructure.
5
5
  Home-page: https://bitbucket.org/dkistdc/dkist-processing-test/src/main/
6
6
  Author: NSO / AURA
@@ -13,6 +13,7 @@ Requires-Python: >=3.11
13
13
  Provides-Extra: test
14
14
  Provides-Extra: inventory
15
15
  Provides-Extra: asdf
16
+ Provides-Extra: quality
16
17
 
17
18
  dkist-processing-test
18
19
  ---------------------
@@ -1,9 +1,9 @@
1
1
  """Quality task definition."""
2
2
  from dkist_processing_common.models.tags import Tag
3
+ from dkist_processing_common.tasks import AssembleQualityData
3
4
  from dkist_processing_common.tasks import QualityL0Metrics
4
- from dkist_processing_common.tasks import SubmitQuality
5
5
 
6
- __all__ = ["TestQualityL0Metrics", "TestSubmitQuality"]
6
+ __all__ = ["TestQualityL0Metrics", "TestAssembleQualityData"]
7
7
 
8
8
 
9
9
  class TestQualityL0Metrics(QualityL0Metrics):
@@ -12,7 +12,7 @@ class TestQualityL0Metrics(QualityL0Metrics):
12
12
  self.calculate_l0_metrics(paths=paths)
13
13
 
14
14
 
15
- class TestSubmitQuality(SubmitQuality):
15
+ class TestAssembleQualityData(AssembleQualityData):
16
16
  @property
17
17
  def polcal_label_list(self) -> list[str] | None:
18
- return ["Beam1"]
18
+ return ["Beam 1"]
@@ -33,6 +33,10 @@ class TransferTestTrialData(TransferTrialDataBase):
33
33
 
34
34
  transfer_list += self.build_output_asdf_transfer_list()
35
35
 
36
+ transfer_list += self.build_output_quality_data_transfer_list()
37
+
38
+ transfer_list += self.build_output_quality_report_transfer_list()
39
+
36
40
  transfer_list += self.build_output_movie_transfer_list()
37
41
 
38
42
  transfer_list += self.build_transfer_list_from_tag_lists([["FOO", "BAR"], ["BAZ"]])
@@ -488,6 +488,31 @@ def trial_output_task(recipe_run_id, tmp_path, mocker):
488
488
  task.write(output_file_obj, tags=[Tag.output(), Tag.frame()])
489
489
  file_count += 1
490
490
 
491
+ # Output dataset inventory
492
+ dsi_file_obj = uuid4().hex.encode("utf8")
493
+ task.write(dsi_file_obj, tags=[Tag.output(), Tag.dataset_inventory()])
494
+ file_count += 1
495
+
496
+ # Output asdf
497
+ asdf_file_obj = uuid4().hex.encode("utf8")
498
+ task.write(asdf_file_obj, tags=[Tag.output(), Tag.asdf()])
499
+ file_count += 1
500
+
501
+ # Output movie
502
+ movie_file_obj = uuid4().hex.encode("utf8")
503
+ task.write(movie_file_obj, tags=[Tag.output(), Tag.movie()])
504
+ file_count += 1
505
+
506
+ # Output quality data
507
+ quality_data_file_obj = uuid4().hex.encode("utf8")
508
+ task.write(quality_data_file_obj, tags=Tag.quality_data())
509
+ file_count += 1
510
+
511
+ # Output quality report
512
+ quality_report_file_obj = uuid4().hex.encode("utf8")
513
+ task.write(quality_report_file_obj, tags=[Tag.output(), Tag.quality_report()])
514
+ file_count += 1
515
+
491
516
  # Specifically tagged files
492
517
  task.write(uuid4().hex.encode("utf8"), tags=[Tag.frame(), "FOO", "BAR"])
493
518
  file_count += 1
@@ -1,11 +1,12 @@
1
1
  """
2
2
  Workflow which exercises the common tasks in an end to end scenario
3
3
  """
4
- from dkist_processing_common.tasks import AddDatasetReceiptAccount
5
4
  from dkist_processing_common.tasks import CreateTrialAsdf
6
5
  from dkist_processing_common.tasks import CreateTrialDatasetInventory
6
+ from dkist_processing_common.tasks import CreateTrialQualityReport
7
7
  from dkist_processing_common.tasks import PublishCatalogAndQualityMessages
8
8
  from dkist_processing_common.tasks import QualityL1Metrics
9
+ from dkist_processing_common.tasks import SubmitDatasetMetadata
9
10
  from dkist_processing_common.tasks import Teardown
10
11
  from dkist_processing_common.tasks import TransferL0Data
11
12
  from dkist_processing_common.tasks import TransferL1Data
@@ -16,8 +17,8 @@ from dkist_processing_test.tasks import AssembleTestMovie
16
17
  from dkist_processing_test.tasks import GenerateCalibratedData
17
18
  from dkist_processing_test.tasks import MakeTestMovieFrames
18
19
  from dkist_processing_test.tasks import ParseL0TestInputData
20
+ from dkist_processing_test.tasks import TestAssembleQualityData
19
21
  from dkist_processing_test.tasks import TestQualityL0Metrics
20
- from dkist_processing_test.tasks import TestSubmitQuality
21
22
  from dkist_processing_test.tasks import TransferTestTrialData
22
23
  from dkist_processing_test.tasks import WriteL1Data
23
24
  from dkist_processing_test.tasks.manual import ManualWithoutProvenance
@@ -63,15 +64,15 @@ quality_l1_metrics = Workflow(
63
64
  )
64
65
  quality_l1_metrics.add_node(task=QualityL1Metrics, upstreams=None)
65
66
 
66
- # SubmitQuality Task
67
- quality_submit_metrics = Workflow(
67
+ # TestAssembleQualityData Task
68
+ quality_assemble_data = Workflow(
68
69
  input_data="input",
69
70
  output_data="output",
70
71
  category="test",
71
- detail="quality-submit-metrics",
72
+ detail="quality-assemble-data",
72
73
  workflow_package=__package__,
73
74
  )
74
- quality_submit_metrics.add_node(task=TestSubmitQuality, upstreams=None)
75
+ quality_assemble_data.add_node(task=TestAssembleQualityData, upstreams=None)
75
76
 
76
77
  # GenerateL1CalibratedData Task
77
78
  generate_calibrated_data = Workflow(
@@ -133,15 +134,15 @@ transfer_trial_data = Workflow(
133
134
  )
134
135
  transfer_trial_data.add_node(task=TransferTestTrialData, upstreams=None)
135
136
 
136
- # AddDatasetReceiptAccount Task
137
- add_dataset_receipt_account = Workflow(
137
+ # SubmitDatasetMetadata Task
138
+ submit_dataset_metadata = Workflow(
138
139
  input_data="input",
139
140
  output_data="output",
140
141
  category="test",
141
- detail="add-dataset-receipt-account",
142
+ detail="submit-dataset-metadata",
142
143
  workflow_package=__package__,
143
144
  )
144
- add_dataset_receipt_account.add_node(task=AddDatasetReceiptAccount, upstreams=None)
145
+ submit_dataset_metadata.add_node(task=SubmitDatasetMetadata, upstreams=None)
145
146
 
146
147
  # PublishCatalogMessages Task
147
148
  publish_catalog_messages = Workflow(
@@ -195,6 +196,18 @@ create_trial_asdf = Workflow(
195
196
  )
196
197
  create_trial_asdf.add_node(task=CreateTrialAsdf, upstreams=None, pip_extras=["asdf"])
197
198
 
199
+ # CreateTrialQualityReport Task
200
+ create_trial_quality_report = Workflow(
201
+ input_data="input",
202
+ output_data="output",
203
+ category="test",
204
+ detail="create-trial-quality",
205
+ workflow_package=__package__,
206
+ )
207
+ create_trial_quality_report.add_node(
208
+ task=CreateTrialQualityReport, upstreams=None, pip_extras=["quality"]
209
+ )
210
+
198
211
 
199
212
  # ManualWithProvenance Task
200
213
  manual_with_provenance = Workflow(
@@ -1,10 +1,9 @@
1
1
  """
2
2
  Workflow which exercises the common tasks in an end to end scenario
3
3
  """
4
- from dkist_processing_common.tasks import AddDatasetReceiptAccount
5
4
  from dkist_processing_common.tasks import PublishCatalogAndQualityMessages
6
5
  from dkist_processing_common.tasks import QualityL1Metrics
7
- from dkist_processing_common.tasks import SubmitQuality
6
+ from dkist_processing_common.tasks import SubmitDatasetMetadata
8
7
  from dkist_processing_common.tasks import Teardown
9
8
  from dkist_processing_common.tasks import TransferL0Data
10
9
  from dkist_processing_common.tasks import TransferL1Data
@@ -15,6 +14,7 @@ from dkist_processing_test.tasks import AssembleTestMovie
15
14
  from dkist_processing_test.tasks import GenerateCalibratedData
16
15
  from dkist_processing_test.tasks import MakeTestMovieFrames
17
16
  from dkist_processing_test.tasks import ParseL0TestInputData
17
+ from dkist_processing_test.tasks import TestAssembleQualityData
18
18
  from dkist_processing_test.tasks import TestQualityL0Metrics
19
19
  from dkist_processing_test.tasks import WriteL1Data
20
20
 
@@ -35,10 +35,14 @@ end_to_end.add_node(
35
35
  )
36
36
  end_to_end.add_node(task=WriteL1Data, upstreams=GenerateCalibratedData)
37
37
  end_to_end.add_node(task=QualityL1Metrics, upstreams=WriteL1Data)
38
- end_to_end.add_node(task=SubmitQuality, upstreams=[QualityL1Metrics, TestQualityL0Metrics])
38
+ end_to_end.add_node(
39
+ task=TestAssembleQualityData, upstreams=[TestQualityL0Metrics, QualityL1Metrics]
40
+ )
39
41
  end_to_end.add_node(task=MakeTestMovieFrames, upstreams=WriteL1Data)
40
42
  end_to_end.add_node(task=AssembleTestMovie, upstreams=MakeTestMovieFrames)
41
- end_to_end.add_node(task=AddDatasetReceiptAccount, upstreams=[AssembleTestMovie, SubmitQuality])
42
- end_to_end.add_node(task=TransferL1Data, upstreams=AddDatasetReceiptAccount)
43
+ end_to_end.add_node(
44
+ task=SubmitDatasetMetadata, upstreams=[AssembleTestMovie, TestAssembleQualityData]
45
+ )
46
+ end_to_end.add_node(task=TransferL1Data, upstreams=SubmitDatasetMetadata)
43
47
  end_to_end.add_node(task=PublishCatalogAndQualityMessages, upstreams=TransferL1Data)
44
48
  end_to_end.add_node(task=Teardown, upstreams=PublishCatalogAndQualityMessages)
@@ -3,6 +3,8 @@ Workflow which exercises the common tasks end to end in a trial scenario
3
3
  """
4
4
  from dkist_processing_common.tasks import CreateTrialAsdf
5
5
  from dkist_processing_common.tasks import CreateTrialDatasetInventory
6
+ from dkist_processing_common.tasks import CreateTrialQualityReport
7
+ from dkist_processing_common.tasks import QualityL1Metrics
6
8
  from dkist_processing_common.tasks import TransferL0Data
7
9
  from dkist_processing_common.tasks import TrialTeardown
8
10
  from dkist_processing_core import Workflow
@@ -11,6 +13,8 @@ from dkist_processing_test.tasks import AssembleTestMovie
11
13
  from dkist_processing_test.tasks import GenerateCalibratedData
12
14
  from dkist_processing_test.tasks import MakeTestMovieFrames
13
15
  from dkist_processing_test.tasks import ParseL0TestInputData
16
+ from dkist_processing_test.tasks import TestAssembleQualityData
17
+ from dkist_processing_test.tasks import TestQualityL0Metrics
14
18
  from dkist_processing_test.tasks import TransferTestTrialData
15
19
  from dkist_processing_test.tasks import WriteL1Data
16
20
 
@@ -21,16 +25,28 @@ trial = Workflow(
21
25
  detail="trial-e2e",
22
26
  workflow_package=__package__,
23
27
  )
28
+
24
29
  trial.add_node(task=TransferL0Data, upstreams=None)
25
30
  trial.add_node(task=ParseL0TestInputData, upstreams=TransferL0Data)
31
+ trial.add_node(task=TestQualityL0Metrics, upstreams=ParseL0TestInputData)
26
32
  trial.add_node(task=GenerateCalibratedData, upstreams=ParseL0TestInputData)
27
33
  trial.add_node(task=WriteL1Data, upstreams=GenerateCalibratedData)
34
+ trial.add_node(task=QualityL1Metrics, upstreams=WriteL1Data)
28
35
  trial.add_node(task=MakeTestMovieFrames, upstreams=WriteL1Data)
29
36
  trial.add_node(task=AssembleTestMovie, upstreams=MakeTestMovieFrames)
37
+ trial.add_node(task=TestAssembleQualityData, upstreams=[TestQualityL0Metrics, QualityL1Metrics])
30
38
  trial.add_node(task=CreateTrialDatasetInventory, upstreams=WriteL1Data, pip_extras=["inventory"])
31
39
  trial.add_node(task=CreateTrialAsdf, upstreams=WriteL1Data, pip_extras=["asdf"])
40
+ trial.add_node(
41
+ task=CreateTrialQualityReport, upstreams=TestAssembleQualityData, pip_extras=["quality"]
42
+ )
32
43
  trial.add_node(
33
44
  task=TransferTestTrialData,
34
- upstreams=[CreateTrialDatasetInventory, CreateTrialAsdf, AssembleTestMovie],
45
+ upstreams=[
46
+ CreateTrialDatasetInventory,
47
+ CreateTrialAsdf,
48
+ CreateTrialQualityReport,
49
+ AssembleTestMovie,
50
+ ],
35
51
  )
36
52
  trial.add_node(task=TrialTeardown, upstreams=TransferTestTrialData)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dkist-processing-test
3
- Version: 1.9.13rc2
3
+ Version: 1.10.0rc1
4
4
  Summary: Example Instrument code that is used by the DKIST Science Data Processing pipelines to test processing infrastructure.
5
5
  Home-page: https://bitbucket.org/dkistdc/dkist-processing-test/src/main/
6
6
  Author: NSO / AURA
@@ -13,6 +13,7 @@ Requires-Python: >=3.11
13
13
  Provides-Extra: test
14
14
  Provides-Extra: inventory
15
15
  Provides-Extra: asdf
16
+ Provides-Extra: quality
16
17
 
17
18
  dkist-processing-test
18
19
  ---------------------
@@ -1,4 +1,4 @@
1
- dkist-processing-common==6.2.1rc2
1
+ dkist-processing-common==6.2.0rc3
2
2
  dkist-header-validator==5.1.0
3
3
  dkist-service-configuration==1.1.0
4
4
  dkist-fits-specifications==4.1.1
@@ -15,6 +15,9 @@ dkist-inventory[asdf]==1.3.1
15
15
  dkist-processing-common[inventory]
16
16
  dkist-inventory==1.3.1
17
17
 
18
+ [quality]
19
+ dkist-quality==1.0.1
20
+
18
21
  [test]
19
22
  pytest
20
23
  pytest-xdist
@@ -25,3 +28,4 @@ dkist-processing-common[inventory]
25
28
  dkist-inventory==1.3.1
26
29
  dkist-processing-common[asdf]
27
30
  dkist-inventory[asdf]==1.3.1
31
+ dkist-quality==1.0.1
@@ -17,7 +17,7 @@ setup_requires = setuptools_scm
17
17
  packages = find:
18
18
  include_package_data = True
19
19
  install_requires =
20
- dkist-processing-common == 6.2.1rc2
20
+ dkist-processing-common == 6.2.0rc3
21
21
  dkist-header-validator == 5.1.0
22
22
  dkist-service-configuration == 1.1.0
23
23
  dkist-fits-specifications == 4.1.1
@@ -35,12 +35,15 @@ test =
35
35
  dkist-data-simulator >= 5.1.1
36
36
  %(inventory)s # identify pip conflicts in test
37
37
  %(asdf)s # identify pip conflicts in test
38
+ %(quality)s # identify pip conflicts in test
38
39
  inventory =
39
40
  dkist-processing-common[inventory]
40
41
  dkist-inventory==1.3.1
41
42
  asdf =
42
43
  dkist-processing-common[asdf]
43
44
  dkist-inventory[asdf]==1.3.1
45
+ quality =
46
+ dkist-quality == 1.0.1
44
47
 
45
48
  [tool:pytest]
46
49
  markers =