defmodule Readability.Candidate.FinderTest.A do use ExUnit.Case, async: true doctest Readability.Candidate.Finder alias Readability.Candidate.Finder alias Readability.Candidate.MisusedTrasformer alias Readability.Candidate.UnlikelyCandidatesRemover @unlikey_sample """
HEADER
ARTICLE
SOCIAL
""" test "remove unlikely tag nodes" do expected = {"html", [], [ {"body", [], [ {"article", [{"class", "community"}], ["ARTICLE"]} ]} ]} result = @unlikey_sample |> Readability.parse |> UnlikelyCandidatesRemover.remove assert expected == result end @misused_sample """
here

not here

""" test "transform misused div tag" do expected = {"html", [], [{"body", [], [{"p", [], [{"span", [], ["here"]}] }, {"div", [], [{"p", [], ["not here"]}] }] }] } result = @misused_sample |> Readability.parse |> MisusedTrasformer.transform assert expected == result end @candidate_sample [{"div", [], [{"p", [], ["12345678901234567890123456"]}, {"p", [], ["12345678901234567890123456"]} ] },{"div" }] def read_html(name) do {:ok, body} = File.read("./test/fixtures/#{name}.html") body end end