jherve пре 2 година
родитељ
комит
5f343755a9
3 измењених фајлова са 3756 додато и 1 уклоњено
  1. 1 0
      src/LinkedIn/Jobs/JobOffer.purs
  2. 20 1
      test/JobsUnifiedTopCard.purs
  3. 3735 0
      test/examples/job_offer.html

+ 1 - 0
src/LinkedIn/Jobs/JobOffer.purs

@@ -21,6 +21,7 @@ data JobOffer = JobOffer {
   hasSimplifiedApplicationProcess :: Boolean
   hasSimplifiedApplicationProcess :: Boolean
 }
 }
 
 
+derive instance Eq JobOffer
 derive instance Generic JobOffer _
 derive instance Generic JobOffer _
 instance Show JobOffer where
 instance Show JobOffer where
   show = genericShow
   show = genericShow

+ 20 - 1
test/JobsUnifiedTopCard.purs

@@ -2,7 +2,7 @@ module Test.JobsUnifiedTopCard where
 
 
 import Prelude
 import Prelude
 
 
-import Data.Either (hush, isRight)
+import Data.Either (Either(..), hush, isRight)
 import Data.List (List(..), (:))
 import Data.List (List(..), (:))
 import Data.List.NonEmpty (NonEmptyList(..))
 import Data.List.NonEmpty (NonEmptyList(..))
 import Data.Maybe (Maybe(..), fromJust)
 import Data.Maybe (Maybe(..), fromJust)
@@ -10,9 +10,12 @@ import Data.NonEmpty (NonEmpty(..))
 import Data.Traversable (traverse)
 import Data.Traversable (traverse)
 import Effect (Effect)
 import Effect (Effect)
 import LinkedIn.DetachedNode (DetachedNode(..), toDetached)
 import LinkedIn.DetachedNode (DetachedNode(..), toDetached)
+import LinkedIn.Jobs.JobOffer (JobOffer(..))
+import LinkedIn.Jobs.JobOffer as JJO
 import LinkedIn.JobsUnifiedTopCard (JobsUnifiedTopCardElement(..), TopCardAction(..), TopCardInsight(..), TopCardInsightContent(..), TopCardPrimaryDescription(..), TopCardSecondaryInsight(..))
 import LinkedIn.JobsUnifiedTopCard (JobsUnifiedTopCardElement(..), TopCardAction(..), TopCardInsight(..), TopCardInsightContent(..), TopCardPrimaryDescription(..), TopCardSecondaryInsight(..))
 import LinkedIn.Page.JobOffer (JobOfferPage(..))
 import LinkedIn.Page.JobOffer (JobOfferPage(..))
 import LinkedIn.Page.JobOffer as PageJO
 import LinkedIn.Page.JobOffer as PageJO
+import LinkedIn.Profile.Utils (fromDetachedToUI)
 import LinkedIn.QueryRunner (runQuery)
 import LinkedIn.QueryRunner (runQuery)
 import Node.JsDom (jsDomFromFile)
 import Node.JsDom (jsDomFromFile)
 import Partial.Unsafe (unsafePartial)
 import Partial.Unsafe (unsafePartial)
@@ -127,3 +130,19 @@ main = do
       })
       })
     }
     }
   }
   }
+
+
+  assertEqual {
+    actual: (JJO.fromUI <=< fromDetachedToUI) topCard,
+    expected:
+      Right (JobOffer {
+        companyDomain: (Just "Technologies et services de l’information"),
+        companyLink: "https://www.linkedin.com/company/lincoln-/life",
+        companyName: "LINCOLN",
+        companySize: (Just "201-500 employés"),
+        hasSimplifiedApplicationProcess: true,
+        location: (Just "Boulogne-Billancourt, Île-de-France, France"),
+        remote: (Just "Sur site"),
+        title: "Data Engineer H/F - Secteur Energie"
+      })
+  }

Разлика између датотеке није приказан због своје велике величине
+ 3735 - 0
test/examples/job_offer.html