mycelium-ai 0.5.0__py3-none-any.whl

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 (164) hide show
  1. mycelium/__init__.py +0 -0
  2. mycelium/api/__init__.py +0 -0
  3. mycelium/api/app.py +1147 -0
  4. mycelium/api/client_app.py +170 -0
  5. mycelium/api/generated_sources/__init__.py +0 -0
  6. mycelium/api/generated_sources/server_schemas/__init__.py +97 -0
  7. mycelium/api/generated_sources/server_schemas/api/__init__.py +5 -0
  8. mycelium/api/generated_sources/server_schemas/api/default_api.py +2473 -0
  9. mycelium/api/generated_sources/server_schemas/api_client.py +766 -0
  10. mycelium/api/generated_sources/server_schemas/api_response.py +25 -0
  11. mycelium/api/generated_sources/server_schemas/configuration.py +434 -0
  12. mycelium/api/generated_sources/server_schemas/exceptions.py +166 -0
  13. mycelium/api/generated_sources/server_schemas/models/__init__.py +41 -0
  14. mycelium/api/generated_sources/server_schemas/models/api_section.py +71 -0
  15. mycelium/api/generated_sources/server_schemas/models/chroma_section.py +69 -0
  16. mycelium/api/generated_sources/server_schemas/models/clap_section.py +75 -0
  17. mycelium/api/generated_sources/server_schemas/models/compute_on_server200_response.py +79 -0
  18. mycelium/api/generated_sources/server_schemas/models/compute_on_server_request.py +67 -0
  19. mycelium/api/generated_sources/server_schemas/models/compute_text_search_request.py +69 -0
  20. mycelium/api/generated_sources/server_schemas/models/config_request.py +81 -0
  21. mycelium/api/generated_sources/server_schemas/models/config_response.py +107 -0
  22. mycelium/api/generated_sources/server_schemas/models/create_playlist_request.py +71 -0
  23. mycelium/api/generated_sources/server_schemas/models/get_similar_by_track200_response.py +143 -0
  24. mycelium/api/generated_sources/server_schemas/models/library_stats_response.py +77 -0
  25. mycelium/api/generated_sources/server_schemas/models/logging_section.py +67 -0
  26. mycelium/api/generated_sources/server_schemas/models/media_server_section.py +67 -0
  27. mycelium/api/generated_sources/server_schemas/models/playlist_response.py +73 -0
  28. mycelium/api/generated_sources/server_schemas/models/plex_section.py +71 -0
  29. mycelium/api/generated_sources/server_schemas/models/processing_response.py +90 -0
  30. mycelium/api/generated_sources/server_schemas/models/save_config_response.py +73 -0
  31. mycelium/api/generated_sources/server_schemas/models/scan_library_response.py +75 -0
  32. mycelium/api/generated_sources/server_schemas/models/search_result_response.py +75 -0
  33. mycelium/api/generated_sources/server_schemas/models/server_section.py +67 -0
  34. mycelium/api/generated_sources/server_schemas/models/stop_processing_response.py +71 -0
  35. mycelium/api/generated_sources/server_schemas/models/task_status_response.py +87 -0
  36. mycelium/api/generated_sources/server_schemas/models/track_database_stats.py +75 -0
  37. mycelium/api/generated_sources/server_schemas/models/track_response.py +77 -0
  38. mycelium/api/generated_sources/server_schemas/models/tracks_list_response.py +81 -0
  39. mycelium/api/generated_sources/server_schemas/rest.py +329 -0
  40. mycelium/api/generated_sources/server_schemas/test/__init__.py +0 -0
  41. mycelium/api/generated_sources/server_schemas/test/test_api_section.py +57 -0
  42. mycelium/api/generated_sources/server_schemas/test/test_chroma_section.py +55 -0
  43. mycelium/api/generated_sources/server_schemas/test/test_clap_section.py +60 -0
  44. mycelium/api/generated_sources/server_schemas/test/test_compute_on_server200_response.py +52 -0
  45. mycelium/api/generated_sources/server_schemas/test/test_compute_on_server_request.py +53 -0
  46. mycelium/api/generated_sources/server_schemas/test/test_compute_text_search_request.py +54 -0
  47. mycelium/api/generated_sources/server_schemas/test/test_config_request.py +66 -0
  48. mycelium/api/generated_sources/server_schemas/test/test_config_response.py +97 -0
  49. mycelium/api/generated_sources/server_schemas/test/test_create_playlist_request.py +60 -0
  50. mycelium/api/generated_sources/server_schemas/test/test_default_api.py +150 -0
  51. mycelium/api/generated_sources/server_schemas/test/test_get_similar_by_track200_response.py +61 -0
  52. mycelium/api/generated_sources/server_schemas/test/test_library_stats_response.py +63 -0
  53. mycelium/api/generated_sources/server_schemas/test/test_logging_section.py +53 -0
  54. mycelium/api/generated_sources/server_schemas/test/test_media_server_section.py +53 -0
  55. mycelium/api/generated_sources/server_schemas/test/test_playlist_response.py +58 -0
  56. mycelium/api/generated_sources/server_schemas/test/test_plex_section.py +56 -0
  57. mycelium/api/generated_sources/server_schemas/test/test_processing_response.py +61 -0
  58. mycelium/api/generated_sources/server_schemas/test/test_save_config_response.py +58 -0
  59. mycelium/api/generated_sources/server_schemas/test/test_scan_library_response.py +61 -0
  60. mycelium/api/generated_sources/server_schemas/test/test_search_result_response.py +69 -0
  61. mycelium/api/generated_sources/server_schemas/test/test_server_section.py +53 -0
  62. mycelium/api/generated_sources/server_schemas/test/test_stop_processing_response.py +55 -0
  63. mycelium/api/generated_sources/server_schemas/test/test_task_status_response.py +71 -0
  64. mycelium/api/generated_sources/server_schemas/test/test_track_database_stats.py +60 -0
  65. mycelium/api/generated_sources/server_schemas/test/test_track_response.py +63 -0
  66. mycelium/api/generated_sources/server_schemas/test/test_tracks_list_response.py +75 -0
  67. mycelium/api/generated_sources/worker_schemas/__init__.py +61 -0
  68. mycelium/api/generated_sources/worker_schemas/api/__init__.py +5 -0
  69. mycelium/api/generated_sources/worker_schemas/api/default_api.py +318 -0
  70. mycelium/api/generated_sources/worker_schemas/api_client.py +766 -0
  71. mycelium/api/generated_sources/worker_schemas/api_response.py +25 -0
  72. mycelium/api/generated_sources/worker_schemas/configuration.py +434 -0
  73. mycelium/api/generated_sources/worker_schemas/exceptions.py +166 -0
  74. mycelium/api/generated_sources/worker_schemas/models/__init__.py +23 -0
  75. mycelium/api/generated_sources/worker_schemas/models/save_config_response.py +73 -0
  76. mycelium/api/generated_sources/worker_schemas/models/worker_clap_section.py +75 -0
  77. mycelium/api/generated_sources/worker_schemas/models/worker_client_api_section.py +69 -0
  78. mycelium/api/generated_sources/worker_schemas/models/worker_client_section.py +79 -0
  79. mycelium/api/generated_sources/worker_schemas/models/worker_config_request.py +73 -0
  80. mycelium/api/generated_sources/worker_schemas/models/worker_config_response.py +89 -0
  81. mycelium/api/generated_sources/worker_schemas/models/worker_logging_section.py +67 -0
  82. mycelium/api/generated_sources/worker_schemas/rest.py +329 -0
  83. mycelium/api/generated_sources/worker_schemas/test/__init__.py +0 -0
  84. mycelium/api/generated_sources/worker_schemas/test/test_default_api.py +45 -0
  85. mycelium/api/generated_sources/worker_schemas/test/test_save_config_response.py +58 -0
  86. mycelium/api/generated_sources/worker_schemas/test/test_worker_clap_section.py +60 -0
  87. mycelium/api/generated_sources/worker_schemas/test/test_worker_client_api_section.py +55 -0
  88. mycelium/api/generated_sources/worker_schemas/test/test_worker_client_section.py +65 -0
  89. mycelium/api/generated_sources/worker_schemas/test/test_worker_config_request.py +59 -0
  90. mycelium/api/generated_sources/worker_schemas/test/test_worker_config_response.py +89 -0
  91. mycelium/api/generated_sources/worker_schemas/test/test_worker_logging_section.py +53 -0
  92. mycelium/api/worker_models.py +99 -0
  93. mycelium/application/__init__.py +11 -0
  94. mycelium/application/job_queue.py +323 -0
  95. mycelium/application/library_management_use_cases.py +292 -0
  96. mycelium/application/search_use_cases.py +96 -0
  97. mycelium/application/services.py +340 -0
  98. mycelium/client.py +554 -0
  99. mycelium/client_config.py +251 -0
  100. mycelium/client_frontend_dist/404.html +1 -0
  101. mycelium/client_frontend_dist/_next/static/a4iyRdfsvkjdyMAK9cE9Y/_buildManifest.js +1 -0
  102. mycelium/client_frontend_dist/_next/static/a4iyRdfsvkjdyMAK9cE9Y/_ssgManifest.js +1 -0
  103. mycelium/client_frontend_dist/_next/static/chunks/4bd1b696-cf72ae8a39fa05aa.js +1 -0
  104. mycelium/client_frontend_dist/_next/static/chunks/964-830f77d7ce1c2463.js +1 -0
  105. mycelium/client_frontend_dist/_next/static/chunks/app/_not-found/page-d25eede5a9099bd3.js +1 -0
  106. mycelium/client_frontend_dist/_next/static/chunks/app/layout-9b3d32f96dfe13b6.js +1 -0
  107. mycelium/client_frontend_dist/_next/static/chunks/app/page-cc6bad295789134e.js +1 -0
  108. mycelium/client_frontend_dist/_next/static/chunks/framework-7c95b8e5103c9e90.js +1 -0
  109. mycelium/client_frontend_dist/_next/static/chunks/main-6b37be50736577a2.js +1 -0
  110. mycelium/client_frontend_dist/_next/static/chunks/main-app-4153d115599d3126.js +1 -0
  111. mycelium/client_frontend_dist/_next/static/chunks/pages/_app-0a0020ddd67f79cf.js +1 -0
  112. mycelium/client_frontend_dist/_next/static/chunks/pages/_error-03529f2c21436739.js +1 -0
  113. mycelium/client_frontend_dist/_next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  114. mycelium/client_frontend_dist/_next/static/chunks/webpack-c81e624915b2ea70.js +1 -0
  115. mycelium/client_frontend_dist/_next/static/css/1eb7f0e2c78e0734.css +1 -0
  116. mycelium/client_frontend_dist/favicon.ico +0 -0
  117. mycelium/client_frontend_dist/file.svg +1 -0
  118. mycelium/client_frontend_dist/globe.svg +1 -0
  119. mycelium/client_frontend_dist/index.html +1 -0
  120. mycelium/client_frontend_dist/index.txt +20 -0
  121. mycelium/client_frontend_dist/next.svg +1 -0
  122. mycelium/client_frontend_dist/vercel.svg +1 -0
  123. mycelium/client_frontend_dist/window.svg +1 -0
  124. mycelium/config.py +346 -0
  125. mycelium/domain/__init__.py +13 -0
  126. mycelium/domain/models.py +71 -0
  127. mycelium/domain/repositories.py +98 -0
  128. mycelium/domain/worker.py +77 -0
  129. mycelium/frontend_dist/404.html +1 -0
  130. mycelium/frontend_dist/_next/static/chunks/4bd1b696-cf72ae8a39fa05aa.js +1 -0
  131. mycelium/frontend_dist/_next/static/chunks/964-830f77d7ce1c2463.js +1 -0
  132. mycelium/frontend_dist/_next/static/chunks/app/_not-found/page-d25eede5a9099bd3.js +1 -0
  133. mycelium/frontend_dist/_next/static/chunks/app/layout-9b3d32f96dfe13b6.js +1 -0
  134. mycelium/frontend_dist/_next/static/chunks/app/page-a761463485e0540b.js +1 -0
  135. mycelium/frontend_dist/_next/static/chunks/framework-7c95b8e5103c9e90.js +1 -0
  136. mycelium/frontend_dist/_next/static/chunks/main-6b37be50736577a2.js +1 -0
  137. mycelium/frontend_dist/_next/static/chunks/main-app-4153d115599d3126.js +1 -0
  138. mycelium/frontend_dist/_next/static/chunks/pages/_app-0a0020ddd67f79cf.js +1 -0
  139. mycelium/frontend_dist/_next/static/chunks/pages/_error-03529f2c21436739.js +1 -0
  140. mycelium/frontend_dist/_next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  141. mycelium/frontend_dist/_next/static/chunks/webpack-c81e624915b2ea70.js +1 -0
  142. mycelium/frontend_dist/_next/static/css/1eb7f0e2c78e0734.css +1 -0
  143. mycelium/frontend_dist/_next/static/glVJ0yJSL0zWN7anTTG3_/_buildManifest.js +1 -0
  144. mycelium/frontend_dist/_next/static/glVJ0yJSL0zWN7anTTG3_/_ssgManifest.js +1 -0
  145. mycelium/frontend_dist/favicon.ico +0 -0
  146. mycelium/frontend_dist/file.svg +1 -0
  147. mycelium/frontend_dist/globe.svg +1 -0
  148. mycelium/frontend_dist/index.html +10 -0
  149. mycelium/frontend_dist/index.txt +20 -0
  150. mycelium/frontend_dist/next.svg +1 -0
  151. mycelium/frontend_dist/vercel.svg +1 -0
  152. mycelium/frontend_dist/window.svg +1 -0
  153. mycelium/infrastructure/__init__.py +17 -0
  154. mycelium/infrastructure/chroma_adapter.py +232 -0
  155. mycelium/infrastructure/clap_adapter.py +280 -0
  156. mycelium/infrastructure/plex_adapter.py +145 -0
  157. mycelium/infrastructure/track_database.py +467 -0
  158. mycelium/main.py +183 -0
  159. mycelium_ai-0.5.0.dist-info/METADATA +312 -0
  160. mycelium_ai-0.5.0.dist-info/RECORD +164 -0
  161. mycelium_ai-0.5.0.dist-info/WHEEL +5 -0
  162. mycelium_ai-0.5.0.dist-info/entry_points.txt +2 -0
  163. mycelium_ai-0.5.0.dist-info/licenses/LICENSE +21 -0
  164. mycelium_ai-0.5.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,66 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Mycelium API
5
+
6
+ Plex music collection and recommendation system using CLAP embeddings
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ import unittest
16
+ import datetime
17
+
18
+ from mycelium.api.generated_sources.server_schemas.models.config_request import ConfigRequest # noqa: E501
19
+
20
+ class TestConfigRequest(unittest.TestCase):
21
+ """ConfigRequest unit test stubs"""
22
+
23
+ def setUp(self):
24
+ pass
25
+
26
+ def tearDown(self):
27
+ pass
28
+
29
+ def make_instance(self, include_optional) -> ConfigRequest:
30
+ """Test ConfigRequest
31
+ include_option is a boolean, when False only required
32
+ params are included, when True both required and
33
+ optional params are included """
34
+ # uncomment below to create an instance of `ConfigRequest`
35
+ """
36
+ model = ConfigRequest() # noqa: E501
37
+ if include_optional:
38
+ return ConfigRequest(
39
+ media_server = { },
40
+ plex = { },
41
+ api = { },
42
+ chroma = { },
43
+ clap = { },
44
+ server = { },
45
+ logging = { },
46
+ database = { }
47
+ )
48
+ else:
49
+ return ConfigRequest(
50
+ media_server = { },
51
+ plex = { },
52
+ api = { },
53
+ chroma = { },
54
+ clap = { },
55
+ server = { },
56
+ logging = { },
57
+ )
58
+ """
59
+
60
+ def testConfigRequest(self):
61
+ """Test ConfigRequest"""
62
+ # inst_req_only = self.make_instance(include_optional=False)
63
+ # inst_req_and_optional = self.make_instance(include_optional=True)
64
+
65
+ if __name__ == '__main__':
66
+ unittest.main()
@@ -0,0 +1,97 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Mycelium API
5
+
6
+ Plex music collection and recommendation system using CLAP embeddings
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ import unittest
16
+ import datetime
17
+
18
+ from mycelium.api.generated_sources.server_schemas.models.config_response import ConfigResponse # noqa: E501
19
+
20
+ class TestConfigResponse(unittest.TestCase):
21
+ """ConfigResponse unit test stubs"""
22
+
23
+ def setUp(self):
24
+ pass
25
+
26
+ def tearDown(self):
27
+ pass
28
+
29
+ def make_instance(self, include_optional) -> ConfigResponse:
30
+ """Test ConfigResponse
31
+ include_option is a boolean, when False only required
32
+ params are included, when True both required and
33
+ optional params are included """
34
+ # uncomment below to create an instance of `ConfigResponse`
35
+ """
36
+ model = ConfigResponse() # noqa: E501
37
+ if include_optional:
38
+ return ConfigResponse(
39
+ media_server = mycelium.api.generated_sources.server_schemas.models.media_server_section.MediaServerSection(
40
+ type = '', ),
41
+ plex = mycelium.api.generated_sources.server_schemas.models.plex_section.PlexSection(
42
+ url = '',
43
+ token = '',
44
+ music_library_name = '', ),
45
+ server = mycelium.api.generated_sources.server_schemas.models.server_section.ServerSection(
46
+ gpu_batch_size = 56, ),
47
+ api = mycelium.api.generated_sources.server_schemas.models.api_section.APISection(
48
+ host = '',
49
+ port = 56,
50
+ reload = True, ),
51
+ chroma = mycelium.api.generated_sources.server_schemas.models.chroma_section.ChromaSection(
52
+ collection_name = '',
53
+ batch_size = 56, ),
54
+ clap = mycelium.api.generated_sources.server_schemas.models.clap_section.ClapSection(
55
+ model_id = '',
56
+ target_sr = 56,
57
+ chunk_duration_s = 56,
58
+ num_chunks = 56,
59
+ max_load_duration_s = 56, ),
60
+ logging = mycelium.api.generated_sources.server_schemas.models.logging_section.LoggingSection(
61
+ level = '', )
62
+ )
63
+ else:
64
+ return ConfigResponse(
65
+ media_server = mycelium.api.generated_sources.server_schemas.models.media_server_section.MediaServerSection(
66
+ type = '', ),
67
+ plex = mycelium.api.generated_sources.server_schemas.models.plex_section.PlexSection(
68
+ url = '',
69
+ token = '',
70
+ music_library_name = '', ),
71
+ server = mycelium.api.generated_sources.server_schemas.models.server_section.ServerSection(
72
+ gpu_batch_size = 56, ),
73
+ api = mycelium.api.generated_sources.server_schemas.models.api_section.APISection(
74
+ host = '',
75
+ port = 56,
76
+ reload = True, ),
77
+ chroma = mycelium.api.generated_sources.server_schemas.models.chroma_section.ChromaSection(
78
+ collection_name = '',
79
+ batch_size = 56, ),
80
+ clap = mycelium.api.generated_sources.server_schemas.models.clap_section.ClapSection(
81
+ model_id = '',
82
+ target_sr = 56,
83
+ chunk_duration_s = 56,
84
+ num_chunks = 56,
85
+ max_load_duration_s = 56, ),
86
+ logging = mycelium.api.generated_sources.server_schemas.models.logging_section.LoggingSection(
87
+ level = '', ),
88
+ )
89
+ """
90
+
91
+ def testConfigResponse(self):
92
+ """Test ConfigResponse"""
93
+ # inst_req_only = self.make_instance(include_optional=False)
94
+ # inst_req_and_optional = self.make_instance(include_optional=True)
95
+
96
+ if __name__ == '__main__':
97
+ unittest.main()
@@ -0,0 +1,60 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Mycelium API
5
+
6
+ Plex music collection and recommendation system using CLAP embeddings
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ import unittest
16
+ import datetime
17
+
18
+ from mycelium.api.generated_sources.server_schemas.models.create_playlist_request import CreatePlaylistRequest # noqa: E501
19
+
20
+ class TestCreatePlaylistRequest(unittest.TestCase):
21
+ """CreatePlaylistRequest unit test stubs"""
22
+
23
+ def setUp(self):
24
+ pass
25
+
26
+ def tearDown(self):
27
+ pass
28
+
29
+ def make_instance(self, include_optional) -> CreatePlaylistRequest:
30
+ """Test CreatePlaylistRequest
31
+ include_option is a boolean, when False only required
32
+ params are included, when True both required and
33
+ optional params are included """
34
+ # uncomment below to create an instance of `CreatePlaylistRequest`
35
+ """
36
+ model = CreatePlaylistRequest() # noqa: E501
37
+ if include_optional:
38
+ return CreatePlaylistRequest(
39
+ name = '',
40
+ track_ids = [
41
+ ''
42
+ ],
43
+ batch_size = 56
44
+ )
45
+ else:
46
+ return CreatePlaylistRequest(
47
+ name = '',
48
+ track_ids = [
49
+ ''
50
+ ],
51
+ )
52
+ """
53
+
54
+ def testCreatePlaylistRequest(self):
55
+ """Test CreatePlaylistRequest"""
56
+ # inst_req_only = self.make_instance(include_optional=False)
57
+ # inst_req_and_optional = self.make_instance(include_optional=True)
58
+
59
+ if __name__ == '__main__':
60
+ unittest.main()
@@ -0,0 +1,150 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Mycelium API
5
+
6
+ Plex music collection and recommendation system using CLAP embeddings
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ import unittest
16
+
17
+ from mycelium.api.generated_sources.server_schemas.api.default_api import DefaultApi # noqa: E501
18
+
19
+
20
+ class TestDefaultApi(unittest.TestCase):
21
+ """DefaultApi unit test stubs"""
22
+
23
+ def setUp(self) -> None:
24
+ self.api = DefaultApi()
25
+
26
+ def tearDown(self) -> None:
27
+ self.api.api_client.close()
28
+
29
+ def test_compute_audio_search(self) -> None:
30
+ """Test case for compute_audio_search
31
+
32
+ Compute audio search on server # noqa: E501
33
+ """
34
+ pass
35
+
36
+ def test_compute_on_server(self) -> None:
37
+ """Test case for compute_on_server
38
+
39
+ Compute embedding on server # noqa: E501
40
+ """
41
+ pass
42
+
43
+ def test_compute_text_search(self) -> None:
44
+ """Test case for compute_text_search
45
+
46
+ Compute text search on server # noqa: E501
47
+ """
48
+ pass
49
+
50
+ def test_create_playlist(self) -> None:
51
+ """Test case for create_playlist
52
+
53
+ Create a playlist from track IDs # noqa: E501
54
+ """
55
+ pass
56
+
57
+ def test_get_config(self) -> None:
58
+ """Test case for get_config
59
+
60
+ Get configuration # noqa: E501
61
+ """
62
+ pass
63
+
64
+ def test_get_library_stats(self) -> None:
65
+ """Test case for get_library_stats
66
+
67
+ Get library statistics # noqa: E501
68
+ """
69
+ pass
70
+
71
+ def test_get_library_tracks(self) -> None:
72
+ """Test case for get_library_tracks
73
+
74
+ List library tracks # noqa: E501
75
+ """
76
+ pass
77
+
78
+ def test_get_processing_progress(self) -> None:
79
+ """Test case for get_processing_progress
80
+
81
+ Get processing progress # noqa: E501
82
+ """
83
+ pass
84
+
85
+ def test_get_similar_by_track(self) -> None:
86
+ """Test case for get_similar_by_track
87
+
88
+ Similar tracks by track_id # noqa: E501
89
+ """
90
+ pass
91
+
92
+ def test_get_task_status(self) -> None:
93
+ """Test case for get_task_status
94
+
95
+ Get task status # noqa: E501
96
+ """
97
+ pass
98
+
99
+ def test_process_library(self) -> None:
100
+ """Test case for process_library
101
+
102
+ Start embeddings processing # noqa: E501
103
+ """
104
+ pass
105
+
106
+ def test_process_library_on_server(self) -> None:
107
+ """Test case for process_library_on_server
108
+
109
+ Start server-side processing # noqa: E501
110
+ """
111
+ pass
112
+
113
+ def test_save_config(self) -> None:
114
+ """Test case for save_config
115
+
116
+ Save configuration # noqa: E501
117
+ """
118
+ pass
119
+
120
+ def test_scan_library(self) -> None:
121
+ """Test case for scan_library
122
+
123
+ Scan the Plex music library # noqa: E501
124
+ """
125
+ pass
126
+
127
+ def test_search_audio(self) -> None:
128
+ """Test case for search_audio
129
+
130
+ Search by audio file # noqa: E501
131
+ """
132
+ pass
133
+
134
+ def test_search_text(self) -> None:
135
+ """Test case for search_text
136
+
137
+ Search by text # noqa: E501
138
+ """
139
+ pass
140
+
141
+ def test_stop_processing(self) -> None:
142
+ """Test case for stop_processing
143
+
144
+ Stop processing # noqa: E501
145
+ """
146
+ pass
147
+
148
+
149
+ if __name__ == '__main__':
150
+ unittest.main()
@@ -0,0 +1,61 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Mycelium API
5
+
6
+ Plex music collection and recommendation system using CLAP embeddings
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ import unittest
16
+ import datetime
17
+
18
+ from mycelium.api.generated_sources.server_schemas.models.get_similar_by_track200_response import GetSimilarByTrack200Response # noqa: E501
19
+
20
+ class TestGetSimilarByTrack200Response(unittest.TestCase):
21
+ """GetSimilarByTrack200Response unit test stubs"""
22
+
23
+ def setUp(self):
24
+ pass
25
+
26
+ def tearDown(self):
27
+ pass
28
+
29
+ def make_instance(self, include_optional) -> GetSimilarByTrack200Response:
30
+ """Test GetSimilarByTrack200Response
31
+ include_option is a boolean, when False only required
32
+ params are included, when True both required and
33
+ optional params are included """
34
+ # uncomment below to create an instance of `GetSimilarByTrack200Response`
35
+ """
36
+ model = GetSimilarByTrack200Response() # noqa: E501
37
+ if include_optional:
38
+ return GetSimilarByTrack200Response(
39
+ status = 'processing',
40
+ message = '',
41
+ task_id = '',
42
+ track_id = '',
43
+ query = '',
44
+ filename = '',
45
+ active_workers = 56,
46
+ tasks_created = 56,
47
+ confirmation_required = True
48
+ )
49
+ else:
50
+ return GetSimilarByTrack200Response(
51
+ status = 'processing',
52
+ )
53
+ """
54
+
55
+ def testGetSimilarByTrack200Response(self):
56
+ """Test GetSimilarByTrack200Response"""
57
+ # inst_req_only = self.make_instance(include_optional=False)
58
+ # inst_req_and_optional = self.make_instance(include_optional=True)
59
+
60
+ if __name__ == '__main__':
61
+ unittest.main()
@@ -0,0 +1,63 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Mycelium API
5
+
6
+ Plex music collection and recommendation system using CLAP embeddings
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ import unittest
16
+ import datetime
17
+
18
+ from mycelium.api.generated_sources.server_schemas.models.library_stats_response import LibraryStatsResponse # noqa: E501
19
+
20
+ class TestLibraryStatsResponse(unittest.TestCase):
21
+ """LibraryStatsResponse unit test stubs"""
22
+
23
+ def setUp(self):
24
+ pass
25
+
26
+ def tearDown(self):
27
+ pass
28
+
29
+ def make_instance(self, include_optional) -> LibraryStatsResponse:
30
+ """Test LibraryStatsResponse
31
+ include_option is a boolean, when False only required
32
+ params are included, when True both required and
33
+ optional params are included """
34
+ # uncomment below to create an instance of `LibraryStatsResponse`
35
+ """
36
+ model = LibraryStatsResponse() # noqa: E501
37
+ if include_optional:
38
+ return LibraryStatsResponse(
39
+ total_embeddings = 56,
40
+ collection_name = '',
41
+ database_path = '',
42
+ track_database_stats = mycelium.api.generated_sources.server_schemas.models.track_database_stats.TrackDatabaseStats(
43
+ total_tracks = 56,
44
+ processed_tracks = 56,
45
+ unprocessed_tracks = 56,
46
+ progress_percentage = 1.337,
47
+ is_processing = True, )
48
+ )
49
+ else:
50
+ return LibraryStatsResponse(
51
+ total_embeddings = 56,
52
+ collection_name = '',
53
+ database_path = '',
54
+ )
55
+ """
56
+
57
+ def testLibraryStatsResponse(self):
58
+ """Test LibraryStatsResponse"""
59
+ # inst_req_only = self.make_instance(include_optional=False)
60
+ # inst_req_and_optional = self.make_instance(include_optional=True)
61
+
62
+ if __name__ == '__main__':
63
+ unittest.main()
@@ -0,0 +1,53 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Mycelium API
5
+
6
+ Plex music collection and recommendation system using CLAP embeddings
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ import unittest
16
+ import datetime
17
+
18
+ from mycelium.api.generated_sources.server_schemas.models.logging_section import LoggingSection # noqa: E501
19
+
20
+ class TestLoggingSection(unittest.TestCase):
21
+ """LoggingSection unit test stubs"""
22
+
23
+ def setUp(self):
24
+ pass
25
+
26
+ def tearDown(self):
27
+ pass
28
+
29
+ def make_instance(self, include_optional) -> LoggingSection:
30
+ """Test LoggingSection
31
+ include_option is a boolean, when False only required
32
+ params are included, when True both required and
33
+ optional params are included """
34
+ # uncomment below to create an instance of `LoggingSection`
35
+ """
36
+ model = LoggingSection() # noqa: E501
37
+ if include_optional:
38
+ return LoggingSection(
39
+ level = ''
40
+ )
41
+ else:
42
+ return LoggingSection(
43
+ level = '',
44
+ )
45
+ """
46
+
47
+ def testLoggingSection(self):
48
+ """Test LoggingSection"""
49
+ # inst_req_only = self.make_instance(include_optional=False)
50
+ # inst_req_and_optional = self.make_instance(include_optional=True)
51
+
52
+ if __name__ == '__main__':
53
+ unittest.main()
@@ -0,0 +1,53 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Mycelium API
5
+
6
+ Plex music collection and recommendation system using CLAP embeddings
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ import unittest
16
+ import datetime
17
+
18
+ from mycelium.api.generated_sources.server_schemas.models.media_server_section import MediaServerSection # noqa: E501
19
+
20
+ class TestMediaServerSection(unittest.TestCase):
21
+ """MediaServerSection unit test stubs"""
22
+
23
+ def setUp(self):
24
+ pass
25
+
26
+ def tearDown(self):
27
+ pass
28
+
29
+ def make_instance(self, include_optional) -> MediaServerSection:
30
+ """Test MediaServerSection
31
+ include_option is a boolean, when False only required
32
+ params are included, when True both required and
33
+ optional params are included """
34
+ # uncomment below to create an instance of `MediaServerSection`
35
+ """
36
+ model = MediaServerSection() # noqa: E501
37
+ if include_optional:
38
+ return MediaServerSection(
39
+ type = ''
40
+ )
41
+ else:
42
+ return MediaServerSection(
43
+ type = '',
44
+ )
45
+ """
46
+
47
+ def testMediaServerSection(self):
48
+ """Test MediaServerSection"""
49
+ # inst_req_only = self.make_instance(include_optional=False)
50
+ # inst_req_and_optional = self.make_instance(include_optional=True)
51
+
52
+ if __name__ == '__main__':
53
+ unittest.main()
@@ -0,0 +1,58 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Mycelium API
5
+
6
+ Plex music collection and recommendation system using CLAP embeddings
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ import unittest
16
+ import datetime
17
+
18
+ from mycelium.api.generated_sources.server_schemas.models.playlist_response import PlaylistResponse # noqa: E501
19
+
20
+ class TestPlaylistResponse(unittest.TestCase):
21
+ """PlaylistResponse unit test stubs"""
22
+
23
+ def setUp(self):
24
+ pass
25
+
26
+ def tearDown(self):
27
+ pass
28
+
29
+ def make_instance(self, include_optional) -> PlaylistResponse:
30
+ """Test PlaylistResponse
31
+ include_option is a boolean, when False only required
32
+ params are included, when True both required and
33
+ optional params are included """
34
+ # uncomment below to create an instance of `PlaylistResponse`
35
+ """
36
+ model = PlaylistResponse() # noqa: E501
37
+ if include_optional:
38
+ return PlaylistResponse(
39
+ name = '',
40
+ track_count = 56,
41
+ created_at = '',
42
+ server_id = ''
43
+ )
44
+ else:
45
+ return PlaylistResponse(
46
+ name = '',
47
+ track_count = 56,
48
+ created_at = '',
49
+ )
50
+ """
51
+
52
+ def testPlaylistResponse(self):
53
+ """Test PlaylistResponse"""
54
+ # inst_req_only = self.make_instance(include_optional=False)
55
+ # inst_req_and_optional = self.make_instance(include_optional=True)
56
+
57
+ if __name__ == '__main__':
58
+ unittest.main()