Browse Source

Remove some dead Python code

jherve 1 năm trước cách đây
mục cha
commit
52636b8027

+ 0 - 6
native/src/job_search/job_storage.py

@@ -183,12 +183,6 @@ class JobStorage:
     def read_all(self) -> dict[str, JobOffer]:
         return {r["id"]: JobOffer.from_storage(r) for r in self.select_all("job_offer")}
 
-    def add_job(self, offer: JobOffer):
-        self.insert(offer)
-
-    def insert(self, offer: JobOffer):
-        self.insert_record("job_offer", offer.to_storage())
-
     def insert_record(self, type_, fields):
         cmd_args = [
             arg

+ 0 - 39
native/src/job_search/messages.py

@@ -38,8 +38,6 @@ class BackgroundScriptMessage(Message):
         values = {to_snake_case(k): v for k, v in values.items()}
 
         match tag:
-            case "NativeMessageVisitedJobPage":
-                return VisitedLinkedInJobPageMessage(**values)
             case "NativeMessageInitialConfiguration":
                 return InitialConfigurationMessage(**values)
             case "NativeMessageAddJob":
@@ -55,43 +53,6 @@ class NativeMessage(Message):
         raise NotImplementedError(f"No tag was associated to {type(self)} for serialization")
 
 
-@dataclass
-class VisitedLinkedInJobPageMessage(BackgroundScriptMessage):
-    url: str
-    job_title: str
-    page_title: str
-    company: str
-    location: str
-    has_simplified_process: bool
-    company_url: str
-    flexibility: Optional[str] = None
-    company_domain: Optional[str] = None
-
-    def extract_job_offer(self):
-        application_process = (
-            ApplicationProcess.LINKED_IN_SIMPLIFIED
-            if self.has_simplified_process
-            else ApplicationProcess.REGULAR
-        )
-
-        if isinstance(self.flexibility, str):
-            flexibility = Flexibility(self.flexibility)
-        elif self.flexibility is None:
-            flexibility = None
-
-        return JobOffer(
-            url=self.url,
-            title=self.job_title,
-            company=self.company,
-            origin=JobOfferOrigin.LINKED_IN,
-            application_process=application_process,
-            location=self.location,
-            company_domain=self.company_domain,
-            company_url=self.company_url,
-            flexibility=flexibility,
-        )
-
-
 @dataclass
 class AddJobMessage(BackgroundScriptMessage):
     id: str

+ 1 - 11
native/src/job_search/writer.py

@@ -4,9 +4,8 @@ from pathlib import Path
 from dataclasses import asdict
 
 from job_search.read_write import ReadWriter
-from job_search.job_storage import JobStorage, JobOffer
+from job_search.job_storage import JobStorage
 from job_search.messages import (
-    VisitedLinkedInJobPageMessage,
     AddJobMessage,
     InitialConfigurationMessage,
     StorageReadyMessage,
@@ -26,15 +25,6 @@ class Application:
 
     def handle_message(self, message: Message):
         match message:
-            case VisitedLinkedInJobPageMessage():
-                offer = message.extract_job_offer()
-
-                try:
-                    self.job_storage.add_job(offer)
-                    self.read_writer.send_message(JobAddedMessage(offer))
-                except FileExistsError as e:
-                    self.read_writer.send_message(JobAlreadyExistsMessage(offer.id))
-
             case AddJobMessage():
                 try:
                     self.job_storage.insert_record("job_offer", asdict(message))

+ 0 - 47
native/tests/test_input.py

@@ -1,47 +0,0 @@
-import pytest
-from datetime import date, datetime
-from job_search.messages import VisitedLinkedInJobPageMessage
-from job_search.job_storage import (
-    JobOffer,
-    JobOfferOrigin,
-    ApplicationProcess,
-    Flexibility,
-)
-
-
-@pytest.fixture(
-    params=[
-        (
-            VisitedLinkedInJobPageMessage(
-                url="https://www.linkedin.com/jobs/view/3755217595",
-                job_title="Job title",
-                page_title="Page title",
-                company="Company",
-                location="location",
-                company_domain="domain",
-                company_url="https://www.linkedin.com/company/the-company/life",
-                has_simplified_process=True,
-                flexibility=Flexibility.FULL_REMOTE.value,
-            ),
-            JobOffer(
-                url="https://www.linkedin.com/jobs/view/3755217595",
-                title="Job title",
-                company="Company",
-                origin=JobOfferOrigin.LINKED_IN,
-                application_process=ApplicationProcess.LINKED_IN_SIMPLIFIED,
-                location="location",
-                company_domain="domain",
-                company_url="https://www.linkedin.com/company/the-company/life",
-                flexibility=Flexibility.FULL_REMOTE,
-            ),
-        ),
-    ]
-)
-def message_job_offer(request):
-    return request.param
-
-
-class TestJobOfferExtraction:
-    def test_extract_from_visited_linkedin(self, message_job_offer):
-        (message, expected_job_offer) = message_job_offer
-        assert message.extract_job_offer() == expected_job_offer

+ 3 - 31
native/tests/test_read_write.py

@@ -7,7 +7,6 @@ from dataclasses import asdict
 from job_search.read_write import StdReadWriter, ReadWriter
 from job_search.messages import (
     InitialConfigurationMessage,
-    VisitedLinkedInJobPageMessage,
     JobOfferListMessage,
     JobAddedMessage,
     JobAlreadyExistsMessage,
@@ -84,34 +83,7 @@ class TestReadWriter:
             (
                 {"tag": "NativeMessageInitialConfiguration", "values": [{"jobsPath": "jobs_path"}]},
                 InitialConfigurationMessage(jobs_path="jobs_path"),
-            ),
-            (
-                {
-                    "tag": "NativeMessageVisitedJobPage",
-                    "values": [{
-                        "url": "url",
-                        "jobTitle": "job_title",
-                        "pageTitle": "page_title",
-                        "company": "company",
-                        "companyUrl": "company_url",
-                        "companyDomain": "company_domain",
-                        "location": "location",
-                        "hasSimplifiedProcess": True,
-                        "flexibility": "hybrid"
-                    }]
-                },
-                VisitedLinkedInJobPageMessage(
-                    url="url",
-                    job_title="job_title",
-                    page_title="page_title",
-                    company="company",
-                    company_url="company_url",
-                    company_domain="company_domain",
-                    location="location",
-                    has_simplified_process=True,
-                    flexibility="hybrid",
-                ),
-            ),
+            )
         ]
     )
     def input_message(self, request):
@@ -133,8 +105,8 @@ class TestReadWriter:
                 {"tag": "NativeMessageJobOfferList", "values": [[{"id": "job_offer_1"}, {"id": "job_offer_2"}]]},
             ),
             (
-                JobAddedMessage(job="job"),
-                {"tag": "NativeMessageJobAdded", "values": [{"job": "job"}]},
+                JobAddedMessage(job_id="job_id"),
+                {"tag": "NativeMessageJobAdded", "values": [{"job_id": "job_id"}]},
             ),
             (
                 JobAlreadyExistsMessage(job_id="job_id"),

+ 3 - 3
native/tests/test_storage.py

@@ -78,7 +78,7 @@ class TestJobStorage:
         assert job_storage.read_all() == {}
 
     def test_job_addition(self, job_storage, linked_in_job_offer):
-        job_storage.add_job(linked_in_job_offer)
+        job_storage.insert_record("job_offer", linked_in_job_offer.to_storage())
 
         all_items = job_storage.read_all().items()
         assert len(all_items) == 1
@@ -92,9 +92,9 @@ class TestJobStorage:
         assert stored_job == linked_in_job_offer
 
     def test_job_duplicate_addition(self, job_storage, linked_in_job_offer):
-        job_storage.add_job(linked_in_job_offer)
+        job_storage.insert_record("job_offer", linked_in_job_offer.to_storage())
 
         with pytest.raises(FileExistsError) as excinfo:
-            job_storage.add_job(linked_in_job_offer)
+            job_storage.insert_record("job_offer", linked_in_job_offer.to_storage())
 
         assert linked_in_job_offer.id in str(excinfo.value)