mirror of
https://github.com/LemmyNet/lemmy.git
synced 2024-11-25 22:01:19 +00:00
local_subscribers test
This commit is contained in:
parent
fc0b7a9638
commit
735107e1f7
1 changed files with 35 additions and 5 deletions
|
@ -59,6 +59,10 @@ mod tests {
|
||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
|
let another_inserted_instance = Instance::read_or_create(pool, "my_domain_2.tld".to_string())
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
|
|
||||||
let new_person = PersonInsertForm::builder()
|
let new_person = PersonInsertForm::builder()
|
||||||
.name("thommy_community_agg".into())
|
.name("thommy_community_agg".into())
|
||||||
.public_key("pubkey".to_string())
|
.public_key("pubkey".to_string())
|
||||||
|
@ -75,6 +79,14 @@ mod tests {
|
||||||
|
|
||||||
let another_inserted_person = Person::create(pool, &another_person).await.unwrap();
|
let another_inserted_person = Person::create(pool, &another_person).await.unwrap();
|
||||||
|
|
||||||
|
let third_person = PersonInsertForm::builder()
|
||||||
|
.name("ismail_community_agg".into())
|
||||||
|
.public_key("pubkey".to_string())
|
||||||
|
.instance_id(another_inserted_instance.id)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
let third_inserted_person = Person::create(pool, &third_person).await.unwrap();
|
||||||
|
|
||||||
let new_community = CommunityInsertForm::builder()
|
let new_community = CommunityInsertForm::builder()
|
||||||
.name("TIL_community_agg".into())
|
.name("TIL_community_agg".into())
|
||||||
.title("nada".to_owned())
|
.title("nada".to_owned())
|
||||||
|
@ -113,9 +125,19 @@ mod tests {
|
||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
|
let third_person_follow = CommunityFollowerForm {
|
||||||
|
community_id: inserted_community.id,
|
||||||
|
person_id: third_inserted_person.id,
|
||||||
|
pending: false,
|
||||||
|
};
|
||||||
|
|
||||||
|
CommunityFollower::follow(pool, &third_person_follow)
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
|
|
||||||
let another_community_follow = CommunityFollowerForm {
|
let another_community_follow = CommunityFollowerForm {
|
||||||
community_id: another_inserted_community.id,
|
community_id: another_inserted_community.id,
|
||||||
person_id: inserted_person.id,
|
person_id: third_inserted_person.id,
|
||||||
pending: false,
|
pending: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -154,7 +176,8 @@ mod tests {
|
||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
assert_eq!(2, community_aggregates_before_delete.subscribers);
|
assert_eq!(3, community_aggregates_before_delete.subscribers);
|
||||||
|
assert_eq!(2, community_aggregates_before_delete.local_subscribers);
|
||||||
assert_eq!(1, community_aggregates_before_delete.posts);
|
assert_eq!(1, community_aggregates_before_delete.posts);
|
||||||
assert_eq!(2, community_aggregates_before_delete.comments);
|
assert_eq!(2, community_aggregates_before_delete.comments);
|
||||||
|
|
||||||
|
@ -163,6 +186,7 @@ mod tests {
|
||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
assert_eq!(1, another_community_aggs.subscribers);
|
assert_eq!(1, another_community_aggs.subscribers);
|
||||||
|
assert_eq!(1, another_community_aggs.local_subscribers);
|
||||||
assert_eq!(0, another_community_aggs.posts);
|
assert_eq!(0, another_community_aggs.posts);
|
||||||
assert_eq!(0, another_community_aggs.comments);
|
assert_eq!(0, another_community_aggs.comments);
|
||||||
|
|
||||||
|
@ -173,7 +197,8 @@ mod tests {
|
||||||
let after_unfollow = CommunityAggregates::read(pool, inserted_community.id)
|
let after_unfollow = CommunityAggregates::read(pool, inserted_community.id)
|
||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
assert_eq!(1, after_unfollow.subscribers);
|
assert_eq!(2, after_unfollow.subscribers);
|
||||||
|
assert_eq!(1, after_unfollow.local_subscribers);
|
||||||
|
|
||||||
// Follow again just for the later tests
|
// Follow again just for the later tests
|
||||||
CommunityFollower::follow(pool, &second_person_follow)
|
CommunityFollower::follow(pool, &second_person_follow)
|
||||||
|
@ -182,7 +207,8 @@ mod tests {
|
||||||
let after_follow_again = CommunityAggregates::read(pool, inserted_community.id)
|
let after_follow_again = CommunityAggregates::read(pool, inserted_community.id)
|
||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
assert_eq!(2, after_follow_again.subscribers);
|
assert_eq!(3, after_follow_again.subscribers);
|
||||||
|
assert_eq!(2, after_follow_again.local_subscribers);
|
||||||
|
|
||||||
// Remove a parent post (the comment count should also be 0)
|
// Remove a parent post (the comment count should also be 0)
|
||||||
Post::delete(pool, inserted_post.id).await.unwrap();
|
Post::delete(pool, inserted_post.id).await.unwrap();
|
||||||
|
@ -192,14 +218,18 @@ mod tests {
|
||||||
assert_eq!(0, after_parent_post_delete.comments);
|
assert_eq!(0, after_parent_post_delete.comments);
|
||||||
assert_eq!(0, after_parent_post_delete.posts);
|
assert_eq!(0, after_parent_post_delete.posts);
|
||||||
|
|
||||||
// Remove the 2nd person
|
// Remove the 2nd and 3rd person
|
||||||
Person::delete(pool, another_inserted_person.id)
|
Person::delete(pool, another_inserted_person.id)
|
||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
Person::delete(pool, third_inserted_person.id)
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
let after_person_delete = CommunityAggregates::read(pool, inserted_community.id)
|
let after_person_delete = CommunityAggregates::read(pool, inserted_community.id)
|
||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
assert_eq!(1, after_person_delete.subscribers);
|
assert_eq!(1, after_person_delete.subscribers);
|
||||||
|
assert_eq!(1, after_person_delete.local_subscribers);
|
||||||
|
|
||||||
// This should delete all the associated rows, and fire triggers
|
// This should delete all the associated rows, and fire triggers
|
||||||
let person_num_deleted = Person::delete(pool, inserted_person.id).await.unwrap();
|
let person_num_deleted = Person::delete(pool, inserted_person.id).await.unwrap();
|
||||||
|
|
Loading…
Reference in a new issue