Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F113039
announcement_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
announcement_test.exs
View Options
# Pleroma: A lightweight social networking server
# Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
defmodule
Pleroma.AnnouncementTest
do
alias
Pleroma.Announcement
use
Pleroma.DataCase
,
async
:
true
import
Pleroma.Factory
describe
"list_all_visible_when/1"
do
setup
do
:
{
:ok
,
time
:
NaiveDateTime
.
utc_now
()}
test
"with no start or end time"
,
%{
time
:
time
}
do
_announcement
=
insert
(
:announcement
)
assert
[
_
]
=
Announcement
.
list_all_visible_when
(
time
)
end
test
"with start time before current"
,
%{
time
:
time
}
do
before_now
=
NaiveDateTime
.
add
(
time
,
-
10
,
:second
)
_announcement
=
insert
(
:announcement
,
%{
starts_at
:
before_now
})
assert
[
_
]
=
Announcement
.
list_all_visible_when
(
time
)
end
test
"with start time after current"
,
%{
time
:
time
}
do
after_now
=
NaiveDateTime
.
add
(
time
,
10
,
:second
)
_announcement
=
insert
(
:announcement
,
%{
starts_at
:
after_now
})
assert
[]
=
Announcement
.
list_all_visible_when
(
time
)
end
test
"with end time after current"
,
%{
time
:
time
}
do
after_now
=
NaiveDateTime
.
add
(
time
,
10
,
:second
)
_announcement
=
insert
(
:announcement
,
%{
ends_at
:
after_now
})
assert
[
_
]
=
Announcement
.
list_all_visible_when
(
time
)
end
test
"with end time before current"
,
%{
time
:
time
}
do
before_now
=
NaiveDateTime
.
add
(
time
,
-
10
,
:second
)
_announcement
=
insert
(
:announcement
,
%{
ends_at
:
before_now
})
assert
[]
=
Announcement
.
list_all_visible_when
(
time
)
end
test
"with both start and end time"
,
%{
time
:
time
}
do
before_now
=
NaiveDateTime
.
add
(
time
,
-
10
,
:second
)
after_now
=
NaiveDateTime
.
add
(
time
,
10
,
:second
)
_announcement
=
insert
(
:announcement
,
%{
starts_at
:
before_now
,
ends_at
:
after_now
})
assert
[
_
]
=
Announcement
.
list_all_visible_when
(
time
)
end
test
"with both start and end time, current not in the range"
,
%{
time
:
time
}
do
before_now
=
NaiveDateTime
.
add
(
time
,
-
10
,
:second
)
after_now
=
NaiveDateTime
.
add
(
time
,
10
,
:second
)
_announcement
=
insert
(
:announcement
,
%{
starts_at
:
after_now
,
ends_at
:
before_now
})
assert
[]
=
Announcement
.
list_all_visible_when
(
time
)
end
end
describe
"announcements formatting"
do
test
"it formats links"
do
raw
=
"something on https://pleroma.social ."
announcement
=
insert
(
:announcement
,
%{
data
:
%{
"content"
=>
raw
}})
assert
announcement
.
rendered
[
"content"
]
=~
~r(<a.+?https://pleroma.social)
assert
announcement
.
data
[
"content"
]
==
raw
end
test
"it formats mentions"
do
user
=
insert
(
:user
)
raw
=
"something on @
#{
user
.
nickname
}
."
announcement
=
insert
(
:announcement
,
%{
data
:
%{
"content"
=>
raw
}})
assert
announcement
.
rendered
[
"content"
]
=~
~r(<a.+?
#{
user
.
nickname
}
)
assert
announcement
.
data
[
"content"
]
==
raw
end
test
"it formats tags"
do
raw
=
"something on
#
mew ."
announcement
=
insert
(
:announcement
,
%{
data
:
%{
"content"
=>
raw
}})
assert
announcement
.
rendered
[
"content"
]
=~
~r(<a.+?
#
mew)
assert
announcement
.
data
[
"content"
]
==
raw
end
end
end
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Nov 24, 5:41 AM (19 h, 48 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
39359
Default Alt Text
announcement_test.exs (3 KB)
Attached To
Mode
rPUBE pleroma-upstream
Attached
Detach File
Event Timeline
Log In to Comment