浏览代码

make linter happy and added submission exposed api

Toan Quach 1 年之前
父节点
当前提交
28b04cc939
共有 6 个文件被更改,包括 81 次插入11 次删除
  1. 39 0
      MANIFEST.in
  2. 2 0
      taipy/core/_init.py
  3. 5 5
      taipy/core/submission/submission.py
  4. 9 0
      taipy/core/taipy.py
  5. 6 0
      tests/core/conftest.py
  6. 20 6
      tests/core/test_taipy.py

+ 39 - 0
MANIFEST.in

@@ -12,3 +12,42 @@ include taipy/config/*.pyi
 include taipy/config/*.json
 recursive-include taipy/templates *
 include taipy/rest/*.json
+include taipy/core/*.json
+include taipy/core/config/*.json
+include taipy/*.json
+include taipy/gui_core/*.json
+include taipy/gui_core/lib/*.js
+recursive-include taipy/gui/webapp *
+include taipy/gui/version.json
+include taipy/gui/viselements.json
+include taipy/gui/*.pyi
+include taipy/config/*.pyi
+include taipy/config/*.json
+recursive-include taipy/templates *
+include taipy/rest/*.json
+include taipy/core/*.json
+include taipy/core/config/*.json
+include taipy/*.json
+include taipy/gui_core/*.json
+include taipy/gui_core/lib/*.js
+recursive-include taipy/gui/webapp *
+include taipy/gui/version.json
+include taipy/gui/viselements.json
+include taipy/gui/*.pyi
+include taipy/config/*.pyi
+include taipy/config/*.json
+recursive-include taipy/templates *
+include taipy/rest/*.json
+include taipy/core/*.json
+include taipy/core/config/*.json
+include taipy/*.json
+include taipy/gui_core/*.json
+include taipy/gui_core/lib/*.js
+recursive-include taipy/gui/webapp *
+include taipy/gui/version.json
+include taipy/gui/viselements.json
+include taipy/gui/*.pyi
+include taipy/config/*.pyi
+include taipy/config/*.json
+recursive-include taipy/templates *
+include taipy/rest/*.json

+ 2 - 0
taipy/core/_init.py

@@ -42,11 +42,13 @@ from .taipy import (
     get_entities_by_config_id,
     get_jobs,
     get_latest_job,
+    get_latest_submission,
     get_parents,
     get_primary,
     get_primary_scenarios,
     get_scenarios,
     get_sequences,
+    get_submissions,
     get_tasks,
     is_deletable,
     is_editable,

+ 5 - 5
taipy/core/submission/submission.py

@@ -119,7 +119,7 @@ class Submission(_Entity, _Labeled):
         """
         return self._get_simple_label()
 
-    @property
+    @property  # type: ignore
     @_self_reload(_MANAGER_NAME)
     def jobs(self) -> List[Job]:
         from ..job._job_manager_factory import _JobManagerFactory
@@ -158,7 +158,7 @@ class Submission(_Entity, _Labeled):
     def __eq__(self, other):
         return self.id == other.id
 
-    @property
+    @property  # type: ignore
     @_self_reload(_MANAGER_NAME)
     def submission_status(self) -> SubmissionStatus:
         return self._submission_status
@@ -168,7 +168,7 @@ class Submission(_Entity, _Labeled):
     def submission_status(self, submission_status):
         self._submission_status = submission_status
 
-    @property
+    @property  # type: ignore
     @_self_reload(_MANAGER_NAME)
     def is_abandoned(self) -> bool:
         return self._is_abandoned
@@ -178,7 +178,7 @@ class Submission(_Entity, _Labeled):
     def is_abandoned(self, val):
         self._is_abandoned = val
 
-    @property
+    @property  # type: ignore
     @_self_reload(_MANAGER_NAME)
     def is_completed(self) -> bool:
         return self._is_completed
@@ -188,7 +188,7 @@ class Submission(_Entity, _Labeled):
     def is_completed(self, val):
         self._is_completed = val
 
-    @property
+    @property  # type: ignore
     @_self_reload(_MANAGER_NAME)
     def is_canceled(self) -> bool:
         return self._is_canceled

+ 9 - 0
taipy/core/taipy.py

@@ -738,6 +738,15 @@ def get_jobs() -> List[Job]:
     return _JobManagerFactory._build_manager()._get_all()
 
 
+def get_submissions() -> List[Submission]:
+    """Return all the existing submissions.
+
+    Returns:
+        The list of all submissions.
+    """
+    return _SubmissionManagerFactory._build_manager()._get_all()
+
+
 def delete_job(job: Job, force: Optional[bool] = False):
     """Delete a job.
 

+ 6 - 0
tests/core/conftest.py

@@ -56,6 +56,7 @@ from taipy.core.sequence._sequence_manager_factory import _SequenceManagerFactor
 from taipy.core.sequence.sequence import Sequence
 from taipy.core.sequence.sequence_id import SequenceId
 from taipy.core.submission._submission_manager_factory import _SubmissionManagerFactory
+from taipy.core.submission.submission import Submission
 from taipy.core.task._task_manager_factory import _TaskManagerFactory
 from taipy.core.task.task import Task
 
@@ -285,6 +286,11 @@ def job(task):
     return Job(JobId("job"), task, "foo", "bar", version="random_version_number")
 
 
+@pytest.fixture(scope="function")
+def submission(task):
+    return Submission(task.id, task._ID_PREFIX, task.config_id, properties={})
+
+
 @pytest.fixture(scope="function")
 def _version():
     return _Version(id="foo", config=Config._applied_config)

+ 20 - 6
tests/core/test_taipy.py

@@ -58,7 +58,7 @@ def cb(s, j):
 
 
 class TestTaipy:
-    def test_set(self, scenario, cycle, sequence, data_node, task):
+    def test_set(self, scenario, cycle, sequence, data_node, task, submission):
         with mock.patch("taipy.core.data._data_manager._DataManager._set") as mck:
             tp.set(data_node)
             mck.assert_called_once_with(data_node)
@@ -74,6 +74,9 @@ class TestTaipy:
         with mock.patch("taipy.core.cycle._cycle_manager._CycleManager._set") as mck:
             tp.set(cycle)
             mck.assert_called_once_with(cycle)
+        with mock.patch("taipy.core.submission._submission_manager._SubmissionManager._set") as mck:
+            tp.set(submission)
+            mck.assert_called_once_with(submission)
 
     def test_is_editable_is_called(self, cycle, job, data_node):
         with mock.patch("taipy.core.cycle._cycle_manager._CycleManager._is_editable") as mck:
@@ -569,16 +572,27 @@ class TestTaipy:
             tp.get_latest_job(task)
             mck.assert_called_once_with(task)
 
-    def test_get_latest_submission(self, task):
-        with mock.patch("taipy.core.submission._submission_manager._SubmissionManager._get_latest") as mck:
-            tp.get_latest_submission(task)
-            mck.assert_called_once_with(task)
-
     def test_cancel_job(self):
         with mock.patch("taipy.core.job._job_manager._JobManager._cancel") as mck:
             tp.cancel_job("job_id")
             mck.assert_called_once_with("job_id")
 
+    def test_get_submissions(self):
+        with mock.patch("taipy.core.submission._submission_manager._SubmissionManager._get_all") as mck:
+            tp.get_submissions()
+            mck.assert_called_once_with()
+
+    def test_get_submission(self, task):
+        with mock.patch("taipy.core.submission._submission_manager._SubmissionManager._get") as mck:
+            submission_id = SubmissionId("SUBMISSION_id")
+            tp.get(submission_id)
+            mck.assert_called_once_with(submission_id)
+
+    def test_get_latest_submission(self, task):
+        with mock.patch("taipy.core.submission._submission_manager._SubmissionManager._get_latest") as mck:
+            tp.get_latest_submission(task)
+            mck.assert_called_once_with(task)
+
     def test_block_config_when_core_is_running(self):
         Config.configure_job_executions(mode=JobConfig._STANDALONE_MODE)
         input_cfg_1 = Config.configure_data_node(id="i1", storage_type="pickle", scope=Scope.SCENARIO, default_data=1)