Skip to content

Commit

Permalink
fix: Domain - Equality operator
Browse files Browse the repository at this point in the history
Also inspect TLD.
  • Loading branch information
mihaigalos committed Aug 4, 2024
1 parent 99e731f commit 1d014dd
Showing 1 changed file with 33 additions and 1 deletion.
34 changes: 33 additions & 1 deletion src/core/global.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ pub struct Domain<'a> {
impl<'a> PartialEq for Domain<'a> {
/// Enables comparison between two domain objects.
fn eq(&self, other: &Self) -> bool {
self.subdomain == other.subdomain && self.domain == other.domain
self.subdomain == other.subdomain && self.domain == other.domain && self.top_level_domain == other.top_level_domain
}
}

Expand Down Expand Up @@ -38,4 +38,36 @@ mod tests {

assert_eq!(result, expected);
}

#[test]
fn test_domain_equals_when_typical() {
let left = Domain{ subdomain: Some("one"), domain: Some("two"), top_level_domain: Some("three")};
let right = Domain{ subdomain: Some("one"), domain: Some("two"), top_level_domain: Some("three")};

assert_eq!(left, right);
}

#[test]
fn test_domain_not_equals_when_diff_subdomain() {
let left = Domain{ subdomain: Some("one"), domain: Some("two"), top_level_domain: Some("three")};
let right = Domain{ subdomain: Some("X"), domain: Some("two"), top_level_domain: Some("three")};

assert_ne!(left, right);
}

#[test]
fn test_domain_not_equals_when_diff_domain() {
let left = Domain{ subdomain: Some("one"), domain: Some("two"), top_level_domain: Some("three")};
let right = Domain{ subdomain: Some("one"), domain: Some("X"), top_level_domain: Some("three")};

assert_ne!(left, right);
}

#[test]
fn test_domain_not_equals_when_diff_top_level_domain() {
let left = Domain{ subdomain: Some("one"), domain: Some("two"), top_level_domain: Some("three")};
let right = Domain{ subdomain: Some("one"), domain: Some("two"), top_level_domain: Some("X")};

assert_ne!(left, right);
}
}

0 comments on commit 1d014dd

Please sign in to comment.