Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F7687220
list_test.exs
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
3 KB
Referenced Files
None
Subscribers
None
list_test.exs
View Options
defmodule
Pleroma.ListTest
do
alias
Pleroma.Repo
use
Pleroma.DataCase
import
Pleroma.Factory
test
"creating a list"
do
user
=
insert
(
:user
)
{
:ok
,
%
Pleroma.List
{}
=
list
}
=
Pleroma.List
.
create
(
"title"
,
user
)
%
Pleroma.List
{
title
:
title
}
=
Pleroma.List
.
get
(
list
.
id
,
user
)
assert
title
==
"title"
end
test
"getting a list not belonging to the user"
do
user
=
insert
(
:user
)
other_user
=
insert
(
:user
)
{
:ok
,
%
Pleroma.List
{}
=
list
}
=
Pleroma.List
.
create
(
"title"
,
user
)
ret
=
Pleroma.List
.
get
(
list
.
id
,
other_user
)
assert
is_nil
(
ret
)
end
test
"adding an user to a list"
do
user
=
insert
(
:user
)
other_user
=
insert
(
:user
)
{
:ok
,
list
}
=
Pleroma.List
.
create
(
"title"
,
user
)
{
:ok
,
%{
following
:
following
}}
=
Pleroma.List
.
follow
(
list
,
other_user
)
assert
[
other_user
.
follower_address
]
==
following
end
test
"removing an user from a list"
do
user
=
insert
(
:user
)
other_user
=
insert
(
:user
)
{
:ok
,
list
}
=
Pleroma.List
.
create
(
"title"
,
user
)
{
:ok
,
%{
following
:
_following
}}
=
Pleroma.List
.
follow
(
list
,
other_user
)
{
:ok
,
%{
following
:
following
}}
=
Pleroma.List
.
unfollow
(
list
,
other_user
)
assert
[]
==
following
end
test
"renaming a list"
do
user
=
insert
(
:user
)
{
:ok
,
list
}
=
Pleroma.List
.
create
(
"title"
,
user
)
{
:ok
,
%{
title
:
title
}}
=
Pleroma.List
.
rename
(
list
,
"new"
)
assert
"new"
==
title
end
test
"deleting a list"
do
user
=
insert
(
:user
)
{
:ok
,
list
}
=
Pleroma.List
.
create
(
"title"
,
user
)
{
:ok
,
list
}
=
Pleroma.List
.
delete
(
list
)
assert
is_nil
(
Repo
.
get
(
Pleroma.List
,
list
.
id
))
end
test
"getting users in a list"
do
user
=
insert
(
:user
)
other_user
=
insert
(
:user
)
third_user
=
insert
(
:user
)
{
:ok
,
list
}
=
Pleroma.List
.
create
(
"title"
,
user
)
{
:ok
,
list
}
=
Pleroma.List
.
follow
(
list
,
other_user
)
{
:ok
,
list
}
=
Pleroma.List
.
follow
(
list
,
third_user
)
{
:ok
,
following
}
=
Pleroma.List
.
get_following
(
list
)
assert
other_user
in
following
assert
third_user
in
following
end
test
"getting all lists by an user"
do
user
=
insert
(
:user
)
other_user
=
insert
(
:user
)
{
:ok
,
list_one
}
=
Pleroma.List
.
create
(
"title"
,
user
)
{
:ok
,
list_two
}
=
Pleroma.List
.
create
(
"other title"
,
user
)
{
:ok
,
list_three
}
=
Pleroma.List
.
create
(
"third title"
,
other_user
)
lists
=
Pleroma.List
.
for_user
(
user
,
%{})
assert
list_one
in
lists
assert
list_two
in
lists
refute
list_three
in
lists
end
test
"getting all lists the user is a member of"
do
user
=
insert
(
:user
)
other_user
=
insert
(
:user
)
{
:ok
,
list_one
}
=
Pleroma.List
.
create
(
"title"
,
user
)
{
:ok
,
list_two
}
=
Pleroma.List
.
create
(
"other title"
,
user
)
{
:ok
,
list_three
}
=
Pleroma.List
.
create
(
"third title"
,
other_user
)
{
:ok
,
list_one
}
=
Pleroma.List
.
follow
(
list_one
,
other_user
)
{
:ok
,
list_two
}
=
Pleroma.List
.
follow
(
list_two
,
other_user
)
{
:ok
,
list_three
}
=
Pleroma.List
.
follow
(
list_three
,
user
)
lists
=
Pleroma.List
.
get_lists_from_activity
(%
Pleroma.Activity
{
actor
:
other_user
.
ap_id
})
assert
list_one
in
lists
assert
list_two
in
lists
refute
list_three
in
lists
end
test
"getting own lists a given user belongs to"
do
owner
=
insert
(
:user
)
not_owner
=
insert
(
:user
)
member_1
=
insert
(
:user
)
member_2
=
insert
(
:user
)
{
:ok
,
owned_list
}
=
Pleroma.List
.
create
(
"owned"
,
owner
)
{
:ok
,
not_owned_list
}
=
Pleroma.List
.
create
(
"not owned"
,
not_owner
)
{
:ok
,
owned_list
}
=
Pleroma.List
.
follow
(
owned_list
,
member_1
)
{
:ok
,
owned_list
}
=
Pleroma.List
.
follow
(
owned_list
,
member_2
)
{
:ok
,
not_owned_list
}
=
Pleroma.List
.
follow
(
not_owned_list
,
member_1
)
{
:ok
,
not_owned_list
}
=
Pleroma.List
.
follow
(
not_owned_list
,
member_2
)
lists_1
=
Pleroma.List
.
get_lists_account_belongs
(
owner
,
member_1
.
id
)
assert
owned_list
in
lists_1
refute
not_owned_list
in
lists_1
lists_2
=
Pleroma.List
.
get_lists_account_belongs
(
owner
,
member_2
.
id
)
assert
owned_list
in
lists_2
refute
not_owned_list
in
lists_2
end
end
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Wed, Sep 3, 7:40 PM (1 d, 13 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
439205
Default Alt Text
list_test.exs (3 KB)
Attached To
Mode
rPUBE pleroma-upstream
Attached
Detach File
Event Timeline
Log In to Comment