Files
ccn/Services/Website/Tests/Library/Cases/Internal/Components/SiteFooterTests.swift
T

41 lines
1016 B
Swift

import Elementary
import Testing
@testable import WebsiteLibrary
@Suite(
"SiteFooter component",
.tags(.component)
)
struct SiteFooterTests {
// MARK: Functional tests
@Test
func `renders its link columns`() {
let html = SiteFooter().render()
for title in ["Browse", "Sell", "Account", "Language"] {
#expect(html.contains(">\(title)</h2>"))
}
for path in [String.Route.series, .Route.openShop, .Route.gradingGuide, .Route.signIn, .Route.recover, .Route.terms] {
#expect(html.contains(#"href="\#(path)""#))
}
}
@Test
func `escapes the ampersands in its labels`() {
#expect(SiteFooter().render().contains("Want list &amp; alerts"))
}
@Test
func `presses the one language the prototype serves`() {
let html = SiteFooter().render()
#expect(html.components(separatedBy: #"aria-pressed="true""#).count - 1 == 1)
#expect(html.contains(#"aria-pressed="true">EN<"#))
}
}