Admin FE
\ No newline at end of file
+Admin FE
\ No newline at end of file
diff --git a/priv/static/adminfe/static/js/ZhIB.861df339.js b/priv/static/adminfe/static/js/ZhIB.861df339.js
deleted file mode 100644
index aeec873c8..000000000
Binary files a/priv/static/adminfe/static/js/ZhIB.861df339.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/ZhIB.861df339.js.map b/priv/static/adminfe/static/js/ZhIB.861df339.js.map
deleted file mode 100644
index ff11a2e71..000000000
Binary files a/priv/static/adminfe/static/js/ZhIB.861df339.js.map and /dev/null differ
diff --git a/priv/static/adminfe/static/js/app.9abe83aa.js b/priv/static/adminfe/static/js/app.9abe83aa.js
deleted file mode 100644
index c5cd1e386..000000000
Binary files a/priv/static/adminfe/static/js/app.9abe83aa.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/app.9abe83aa.js.map b/priv/static/adminfe/static/js/app.9abe83aa.js.map
deleted file mode 100644
index fb99b7519..000000000
Binary files a/priv/static/adminfe/static/js/app.9abe83aa.js.map and /dev/null differ
diff --git a/priv/static/adminfe/static/js/app.9c4316f1.js b/priv/static/adminfe/static/js/app.9c4316f1.js
new file mode 100644
index 000000000..6af94c36b
Binary files /dev/null and b/priv/static/adminfe/static/js/app.9c4316f1.js differ
diff --git a/priv/static/adminfe/static/js/app.9c4316f1.js.map b/priv/static/adminfe/static/js/app.9c4316f1.js.map
new file mode 100644
index 000000000..4b729c61a
Binary files /dev/null and b/priv/static/adminfe/static/js/app.9c4316f1.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-0620.c765c190.js b/priv/static/adminfe/static/js/chunk-0620.c765c190.js
new file mode 100644
index 000000000..72077a5ac
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-0620.c765c190.js differ
diff --git a/priv/static/adminfe/static/js/chunk-0620.c765c190.js.map b/priv/static/adminfe/static/js/chunk-0620.c765c190.js.map
new file mode 100644
index 000000000..f39b8237f
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-0620.c765c190.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-0cb6.b9f32e0c.js b/priv/static/adminfe/static/js/chunk-0cb6.b9f32e0c.js
new file mode 100644
index 000000000..967eefab2
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-0cb6.b9f32e0c.js differ
diff --git a/priv/static/adminfe/static/js/chunk-0cb6.b9f32e0c.js.map b/priv/static/adminfe/static/js/chunk-0cb6.b9f32e0c.js.map
new file mode 100644
index 000000000..c8ade8253
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-0cb6.b9f32e0c.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-15fa.bea28a69.js b/priv/static/adminfe/static/js/chunk-15fa.34dcb9d8.js
similarity index 99%
rename from priv/static/adminfe/static/js/chunk-15fa.bea28a69.js
rename to priv/static/adminfe/static/js/chunk-15fa.34dcb9d8.js
index d8b0379b2..b0819b138 100644
Binary files a/priv/static/adminfe/static/js/chunk-15fa.bea28a69.js and b/priv/static/adminfe/static/js/chunk-15fa.34dcb9d8.js differ
diff --git a/priv/static/adminfe/static/js/chunk-15fa.bea28a69.js.map b/priv/static/adminfe/static/js/chunk-15fa.34dcb9d8.js.map
similarity index 99%
rename from priv/static/adminfe/static/js/chunk-15fa.bea28a69.js.map
rename to priv/static/adminfe/static/js/chunk-15fa.34dcb9d8.js.map
index ba6f58b57..2ec54c8aa 100644
Binary files a/priv/static/adminfe/static/js/chunk-15fa.bea28a69.js.map and b/priv/static/adminfe/static/js/chunk-15fa.34dcb9d8.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-18dc.2eb81268.js b/priv/static/adminfe/static/js/chunk-18dc.2eb81268.js
deleted file mode 100644
index e2f5b6089..000000000
Binary files a/priv/static/adminfe/static/js/chunk-18dc.2eb81268.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-18dc.2eb81268.js.map b/priv/static/adminfe/static/js/chunk-18dc.2eb81268.js.map
deleted file mode 100644
index 1103fb1ac..000000000
Binary files a/priv/static/adminfe/static/js/chunk-18dc.2eb81268.js.map and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-18e1.5907d2f1.js b/priv/static/adminfe/static/js/chunk-18e1.f8bb78f3.js
similarity index 97%
rename from priv/static/adminfe/static/js/chunk-18e1.5907d2f1.js
rename to priv/static/adminfe/static/js/chunk-18e1.f8bb78f3.js
index eafc28fda..4ddfe2bc2 100644
Binary files a/priv/static/adminfe/static/js/chunk-18e1.5907d2f1.js and b/priv/static/adminfe/static/js/chunk-18e1.f8bb78f3.js differ
diff --git a/priv/static/adminfe/static/js/chunk-18e1.5907d2f1.js.map b/priv/static/adminfe/static/js/chunk-18e1.f8bb78f3.js.map
similarity index 98%
rename from priv/static/adminfe/static/js/chunk-18e1.5907d2f1.js.map
rename to priv/static/adminfe/static/js/chunk-18e1.f8bb78f3.js.map
index f8c886009..b61e3bc20 100644
Binary files a/priv/static/adminfe/static/js/chunk-18e1.5907d2f1.js.map and b/priv/static/adminfe/static/js/chunk-18e1.f8bb78f3.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-23b2.442bb8df.js b/priv/static/adminfe/static/js/chunk-23b2.442bb8df.js
new file mode 100644
index 000000000..61cfc7826
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-23b2.442bb8df.js differ
diff --git a/priv/static/adminfe/static/js/chunk-23b2.442bb8df.js.map b/priv/static/adminfe/static/js/chunk-23b2.442bb8df.js.map
new file mode 100644
index 000000000..474d1086e
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-23b2.442bb8df.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-2943.8ab5d0d9.js b/priv/static/adminfe/static/js/chunk-2943.8ab5d0d9.js
new file mode 100644
index 000000000..85b40b995
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-2943.8ab5d0d9.js differ
diff --git a/priv/static/adminfe/static/js/chunk-2943.8ab5d0d9.js.map b/priv/static/adminfe/static/js/chunk-2943.8ab5d0d9.js.map
new file mode 100644
index 000000000..0ecc45de4
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-2943.8ab5d0d9.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-3d1c.3334d3f1.js b/priv/static/adminfe/static/js/chunk-3d1c.3334d3f1.js
new file mode 100644
index 000000000..9a9c3b049
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-3d1c.3334d3f1.js differ
diff --git a/priv/static/adminfe/static/js/chunk-3d1c.3334d3f1.js.map b/priv/static/adminfe/static/js/chunk-3d1c.3334d3f1.js.map
new file mode 100644
index 000000000..3dd0d77a9
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-3d1c.3334d3f1.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-48d9.5e74b256.js b/priv/static/adminfe/static/js/chunk-48d9.5e74b256.js
deleted file mode 100644
index ed27be290..000000000
Binary files a/priv/static/adminfe/static/js/chunk-48d9.5e74b256.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-48d9.5e74b256.js.map b/priv/static/adminfe/static/js/chunk-48d9.5e74b256.js.map
deleted file mode 100644
index 0434b2dd2..000000000
Binary files a/priv/static/adminfe/static/js/chunk-48d9.5e74b256.js.map and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-4bb1.296363c0.js b/priv/static/adminfe/static/js/chunk-4bb1.296363c0.js
deleted file mode 100644
index f71148096..000000000
Binary files a/priv/static/adminfe/static/js/chunk-4bb1.296363c0.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-4bb1.296363c0.js.map b/priv/static/adminfe/static/js/chunk-4bb1.296363c0.js.map
deleted file mode 100644
index 539f0092b..000000000
Binary files a/priv/static/adminfe/static/js/chunk-4bb1.296363c0.js.map and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-4df4.9655f394.js b/priv/static/adminfe/static/js/chunk-4df4.9655f394.js
new file mode 100644
index 000000000..afed4bab6
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-4df4.9655f394.js differ
diff --git a/priv/static/adminfe/static/js/chunk-4df4.9655f394.js.map b/priv/static/adminfe/static/js/chunk-4df4.9655f394.js.map
new file mode 100644
index 000000000..a1e9bca7a
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-4df4.9655f394.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-538a.04530055.js b/priv/static/adminfe/static/js/chunk-538a.04530055.js
new file mode 100644
index 000000000..2455b9a9a
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-538a.04530055.js differ
diff --git a/priv/static/adminfe/static/js/chunk-538a.04530055.js.map b/priv/static/adminfe/static/js/chunk-538a.04530055.js.map
new file mode 100644
index 000000000..d3741c30a
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-538a.04530055.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-5668.d7d15598.js b/priv/static/adminfe/static/js/chunk-5668.d7d15598.js
deleted file mode 100644
index 4cee06146..000000000
Binary files a/priv/static/adminfe/static/js/chunk-5668.d7d15598.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-5668.d7d15598.js.map b/priv/static/adminfe/static/js/chunk-5668.d7d15598.js.map
deleted file mode 100644
index 559960c10..000000000
Binary files a/priv/static/adminfe/static/js/chunk-5668.d7d15598.js.map and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-63d0.298e8ca8.js b/priv/static/adminfe/static/js/chunk-63d0.298e8ca8.js
deleted file mode 100644
index 6a1e0060e..000000000
Binary files a/priv/static/adminfe/static/js/chunk-63d0.298e8ca8.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-63d0.298e8ca8.js.map b/priv/static/adminfe/static/js/chunk-63d0.298e8ca8.js.map
deleted file mode 100644
index c7ab8321c..000000000
Binary files a/priv/static/adminfe/static/js/chunk-63d0.298e8ca8.js.map and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-73af.31c5a652.js b/priv/static/adminfe/static/js/chunk-73af.31c5a652.js
deleted file mode 100644
index 0336d5fbc..000000000
Binary files a/priv/static/adminfe/static/js/chunk-73af.31c5a652.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-73af.31c5a652.js.map b/priv/static/adminfe/static/js/chunk-73af.31c5a652.js.map
deleted file mode 100644
index c055614d7..000000000
Binary files a/priv/static/adminfe/static/js/chunk-73af.31c5a652.js.map and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-7c6b.5240e052.js b/priv/static/adminfe/static/js/chunk-7c6b.5240e052.js
new file mode 100644
index 000000000..12eb54a32
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-7c6b.5240e052.js differ
diff --git a/priv/static/adminfe/static/js/chunk-7c6b.5240e052.js.map b/priv/static/adminfe/static/js/chunk-7c6b.5240e052.js.map
new file mode 100644
index 000000000..1463b8ba4
Binary files /dev/null and b/priv/static/adminfe/static/js/chunk-7c6b.5240e052.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-7f8e.e63a7023.js b/priv/static/adminfe/static/js/chunk-7f8e.c1eb619d.js
similarity index 99%
rename from priv/static/adminfe/static/js/chunk-7f8e.e63a7023.js
rename to priv/static/adminfe/static/js/chunk-7f8e.c1eb619d.js
index af0300833..56ce1d5ef 100644
Binary files a/priv/static/adminfe/static/js/chunk-7f8e.e63a7023.js and b/priv/static/adminfe/static/js/chunk-7f8e.c1eb619d.js differ
diff --git a/priv/static/adminfe/static/js/chunk-7f8e.e63a7023.js.map b/priv/static/adminfe/static/js/chunk-7f8e.c1eb619d.js.map
similarity index 99%
rename from priv/static/adminfe/static/js/chunk-7f8e.e63a7023.js.map
rename to priv/static/adminfe/static/js/chunk-7f8e.c1eb619d.js.map
index 5925cfd2e..459e7f785 100644
Binary files a/priv/static/adminfe/static/js/chunk-7f8e.e63a7023.js.map and b/priv/static/adminfe/static/js/chunk-7f8e.c1eb619d.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-ce58.20269345.js b/priv/static/adminfe/static/js/chunk-ce58.20269345.js
deleted file mode 100644
index 430de04ff..000000000
Binary files a/priv/static/adminfe/static/js/chunk-ce58.20269345.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-ce58.20269345.js.map b/priv/static/adminfe/static/js/chunk-ce58.20269345.js.map
deleted file mode 100644
index 107e05744..000000000
Binary files a/priv/static/adminfe/static/js/chunk-ce58.20269345.js.map and /dev/null differ
diff --git a/priv/static/adminfe/static/js/chunk-elementUI.adb56751.js b/priv/static/adminfe/static/js/chunk-elementUI.fa319e7b.js
similarity index 99%
rename from priv/static/adminfe/static/js/chunk-elementUI.adb56751.js
rename to priv/static/adminfe/static/js/chunk-elementUI.fa319e7b.js
index 3ae3eefc7..90ae35a35 100644
Binary files a/priv/static/adminfe/static/js/chunk-elementUI.adb56751.js and b/priv/static/adminfe/static/js/chunk-elementUI.fa319e7b.js differ
diff --git a/priv/static/adminfe/static/js/chunk-elementUI.adb56751.js.map b/priv/static/adminfe/static/js/chunk-elementUI.fa319e7b.js.map
similarity index 99%
rename from priv/static/adminfe/static/js/chunk-elementUI.adb56751.js.map
rename to priv/static/adminfe/static/js/chunk-elementUI.fa319e7b.js.map
index 841b540b8..678122a98 100644
Binary files a/priv/static/adminfe/static/js/chunk-elementUI.adb56751.js.map and b/priv/static/adminfe/static/js/chunk-elementUI.fa319e7b.js.map differ
diff --git a/priv/static/adminfe/static/js/chunk-libs.16bdd178.js b/priv/static/adminfe/static/js/chunk-libs.35c18287.js
similarity index 99%
rename from priv/static/adminfe/static/js/chunk-libs.16bdd178.js
rename to priv/static/adminfe/static/js/chunk-libs.35c18287.js
index 8541a42a7..4b76d98e6 100644
Binary files a/priv/static/adminfe/static/js/chunk-libs.16bdd178.js and b/priv/static/adminfe/static/js/chunk-libs.35c18287.js differ
diff --git a/priv/static/adminfe/static/js/chunk-libs.16bdd178.js.map b/priv/static/adminfe/static/js/chunk-libs.35c18287.js.map
similarity index 99%
rename from priv/static/adminfe/static/js/chunk-libs.16bdd178.js.map
rename to priv/static/adminfe/static/js/chunk-libs.35c18287.js.map
index 1dfa38d82..0a3580834 100644
Binary files a/priv/static/adminfe/static/js/chunk-libs.16bdd178.js.map and b/priv/static/adminfe/static/js/chunk-libs.35c18287.js.map differ
diff --git a/priv/static/adminfe/static/js/runtime.46db235c.js b/priv/static/adminfe/static/js/runtime.46db235c.js
new file mode 100644
index 000000000..898c5b505
Binary files /dev/null and b/priv/static/adminfe/static/js/runtime.46db235c.js differ
diff --git a/priv/static/adminfe/static/js/runtime.46db235c.js.map b/priv/static/adminfe/static/js/runtime.46db235c.js.map
new file mode 100644
index 000000000..33791c005
Binary files /dev/null and b/priv/static/adminfe/static/js/runtime.46db235c.js.map differ
diff --git a/priv/static/adminfe/static/js/runtime.5485cb1b.js b/priv/static/adminfe/static/js/runtime.5485cb1b.js
deleted file mode 100644
index c89e0b563..000000000
Binary files a/priv/static/adminfe/static/js/runtime.5485cb1b.js and /dev/null differ
diff --git a/priv/static/adminfe/static/js/runtime.5485cb1b.js.map b/priv/static/adminfe/static/js/runtime.5485cb1b.js.map
deleted file mode 100644
index e1f0c8771..000000000
Binary files a/priv/static/adminfe/static/js/runtime.5485cb1b.js.map and /dev/null differ
diff --git a/priv/static/index.html b/priv/static/index.html
index cd186d3d8..2467aa22a 100644
--- a/priv/static/index.html
+++ b/priv/static/index.html
@@ -1 +1 @@
-Pleroma
\ No newline at end of file
+Pleroma
\ No newline at end of file
diff --git a/priv/static/static/font/LICENSE.txt b/priv/static/static/font/LICENSE.txt
deleted file mode 100755
index 95966f00e..000000000
--- a/priv/static/static/font/LICENSE.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-Font license info
-
-
-## Font Awesome
-
- Copyright (C) 2016 by Dave Gandy
-
- Author: Dave Gandy
- License: SIL ()
- Homepage: http://fortawesome.github.com/Font-Awesome/
-
-
-## Entypo
-
- Copyright (C) 2012 by Daniel Bruce
-
- Author: Daniel Bruce
- License: SIL (http://scripts.sil.org/OFL)
- Homepage: http://www.entypo.com
-
-
-## Iconic
-
- Copyright (C) 2012 by P.J. Onori
-
- Author: P.J. Onori
- License: SIL (http://scripts.sil.org/OFL)
- Homepage: http://somerandomdude.com/work/iconic/
-
-
-## Fontelico
-
- Copyright (C) 2012 by Fontello project
-
- Author: Crowdsourced, for Fontello project
- License: SIL (http://scripts.sil.org/OFL)
- Homepage: http://fontello.com
-
-
diff --git a/priv/static/static/font/README.txt b/priv/static/static/font/README.txt
deleted file mode 100755
index beaab3366..000000000
--- a/priv/static/static/font/README.txt
+++ /dev/null
@@ -1,75 +0,0 @@
-This webfont is generated by http://fontello.com open source project.
-
-
-================================================================================
-Please, note, that you should obey original font licenses, used to make this
-webfont pack. Details available in LICENSE.txt file.
-
-- Usually, it's enough to publish content of LICENSE.txt file somewhere on your
- site in "About" section.
-
-- If your project is open-source, usually, it will be ok to make LICENSE.txt
- file publicly available in your repository.
-
-- Fonts, used in Fontello, don't require a clickable link on your site.
- But any kind of additional authors crediting is welcome.
-================================================================================
-
-
-Comments on archive content
----------------------------
-
-- /font/* - fonts in different formats
-
-- /css/* - different kinds of css, for all situations. Should be ok with
- twitter bootstrap. Also, you can skip style and assign icon classes
- directly to text elements, if you don't mind about IE7.
-
-- demo.html - demo file, to show your webfont content
-
-- LICENSE.txt - license info about source fonts, used to build your one.
-
-- config.json - keeps your settings. You can import it back into fontello
- anytime, to continue your work
-
-
-Why so many CSS files ?
------------------------
-
-Because we like to fit all your needs :)
-
-- basic file, .css - is usually enough, it contains @font-face
- and character code definitions
-
-- *-ie7.css - if you need IE7 support, but still don't wish to put char codes
- directly into html
-
-- *-codes.css and *-ie7-codes.css - if you like to use your own @font-face
- rules, but still wish to benefit from css generation. That can be very
- convenient for automated asset build systems. When you need to update font -
- no need to manually edit files, just override old version with archive
- content. See fontello source code for examples.
-
-- *-embedded.css - basic css file, but with embedded WOFF font, to avoid
- CORS issues in Firefox and IE9+, when fonts are hosted on the separate domain.
- We strongly recommend to resolve this issue by `Access-Control-Allow-Origin`
- server headers. But if you ok with dirty hack - this file is for you. Note,
- that data url moved to separate @font-face to avoid problems with
-
-
-
-
-
-
-
-
-
fontello font demo
-
-
-
-
-
icon-cancel0xe800
-
icon-upload0xe801
-
icon-star0xe802
-
icon-star-empty0xe803
-
-
-
icon-retweet0xe804
-
icon-eye-off0xe805
-
icon-search0xe806
-
icon-cog0xe807
-
-
-
icon-logout0xe808
-
icon-down-open0xe809
-
icon-attach0xe80a
-
icon-picture0xe80b
-
-
-
icon-video0xe80c
-
icon-right-open0xe80d
-
icon-left-open0xe80e
-
icon-up-open0xe80f
-
-
-
icon-bell-ringing-o0xe810
-
icon-lock0xe811
-
icon-globe0xe812
-
icon-brush0xe813
-
-
-
icon-attention0xe814
-
icon-plus0xe815
-
icon-adjust0xe816
-
icon-edit0xe817
-
-
-
icon-pencil0xe818
-
icon-pin0xe819
-
icon-wrench0xe81a
-
icon-chart-bar0xe81b
-
-
-
icon-zoom-in0xe81c
-
icon-spin30xe832
-
icon-spin40xe834
-
icon-link-ext0xf08e
-
-
-
icon-link-ext-alt0xf08f
-
icon-menu0xf0c9
-
icon-mail-alt0xf0e0
-
icon-gauge0xf0e4
-
-
-
icon-comment-empty0xf0e5
-
icon-bell-alt0xf0f3
-
icon-plus-squared0xf0fe
-
icon-reply0xf112
-
-
-
icon-smile0xf118
-
icon-lock-open-alt0xf13e
-
icon-ellipsis0xf141
-
icon-play-circled0xf144
-
-
-
icon-thumbs-up-alt0xf164
-
icon-binoculars0xf1e5
-
icon-user-plus0xf234
-
-
-
-
-
\ No newline at end of file
diff --git a/priv/static/static/font/font/fontello.eot b/priv/static/static/font/font/fontello.eot
deleted file mode 100755
index 1703fd97f..000000000
Binary files a/priv/static/static/font/font/fontello.eot and /dev/null differ
diff --git a/priv/static/static/font/font/fontello.woff2 b/priv/static/static/font/font/fontello.woff2
deleted file mode 100755
index 078991eb8..000000000
Binary files a/priv/static/static/font/font/fontello.woff2 and /dev/null differ
diff --git a/priv/static/static/font/fontello.1576078371855.svg b/priv/static/static/font/fontello.1576078371855.svg
deleted file mode 100644
index f5e497ce4..000000000
--- a/priv/static/static/font/fontello.1576078371855.svg
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-
\ No newline at end of file
diff --git a/priv/static/static/font/fontello.1576078371855.ttf b/priv/static/static/font/fontello.1576078371855.ttf
deleted file mode 100644
index 310bce50b..000000000
Binary files a/priv/static/static/font/fontello.1576078371855.ttf and /dev/null differ
diff --git a/priv/static/static/font/fontello.1576078371855.woff b/priv/static/static/font/fontello.1576078371855.woff
deleted file mode 100644
index 89f06fb57..000000000
Binary files a/priv/static/static/font/fontello.1576078371855.woff and /dev/null differ
diff --git a/priv/static/static/font/fontello.1576078371855.woff2 b/priv/static/static/font/fontello.1576078371855.woff2
deleted file mode 100644
index c8adc1fe0..000000000
Binary files a/priv/static/static/font/fontello.1576078371855.woff2 and /dev/null differ
diff --git a/priv/static/static/font/fontello.1576078371855.eot b/priv/static/static/font/fontello.1576166651574.eot
similarity index 98%
rename from priv/static/static/font/fontello.1576078371855.eot
rename to priv/static/static/font/fontello.1576166651574.eot
index 6ecbde0e7..fb27d4037 100644
Binary files a/priv/static/static/font/fontello.1576078371855.eot and b/priv/static/static/font/fontello.1576166651574.eot differ
diff --git a/priv/static/static/font/font/fontello.svg b/priv/static/static/font/fontello.1576166651574.svg
similarity index 100%
rename from priv/static/static/font/font/fontello.svg
rename to priv/static/static/font/fontello.1576166651574.svg
diff --git a/priv/static/static/font/font/fontello.ttf b/priv/static/static/font/fontello.1576166651574.ttf
old mode 100755
new mode 100644
similarity index 99%
rename from priv/static/static/font/font/fontello.ttf
rename to priv/static/static/font/fontello.1576166651574.ttf
index e9ed78031..c49743ec6
Binary files a/priv/static/static/font/font/fontello.ttf and b/priv/static/static/font/fontello.1576166651574.ttf differ
diff --git a/priv/static/static/font/font/fontello.woff b/priv/static/static/font/fontello.1576166651574.woff
old mode 100755
new mode 100644
similarity index 98%
rename from priv/static/static/font/font/fontello.woff
rename to priv/static/static/font/fontello.1576166651574.woff
index 1d5025d3c..bbffd6413
Binary files a/priv/static/static/font/font/fontello.woff and b/priv/static/static/font/fontello.1576166651574.woff differ
diff --git a/priv/static/static/font/fontello.1576166651574.woff2 b/priv/static/static/font/fontello.1576166651574.woff2
new file mode 100644
index 000000000..d35dce862
Binary files /dev/null and b/priv/static/static/font/fontello.1576166651574.woff2 differ
diff --git a/priv/static/static/fontello.1576078371855.css b/priv/static/static/fontello.1576166651574.css
similarity index 88%
rename from priv/static/static/fontello.1576078371855.css
rename to priv/static/static/fontello.1576166651574.css
index 7947a89d7..54f9fe05f 100644
Binary files a/priv/static/static/fontello.1576078371855.css and b/priv/static/static/fontello.1576166651574.css differ
diff --git a/priv/static/static/js/app.5879b8f3d0565ed4735f.js b/priv/static/static/js/app.5879b8f3d0565ed4735f.js
deleted file mode 100644
index d324a8ae4..000000000
Binary files a/priv/static/static/js/app.5879b8f3d0565ed4735f.js and /dev/null differ
diff --git a/priv/static/static/js/app.5879b8f3d0565ed4735f.js.map b/priv/static/static/js/app.5879b8f3d0565ed4735f.js.map
deleted file mode 100644
index f668b7a50..000000000
Binary files a/priv/static/static/js/app.5879b8f3d0565ed4735f.js.map and /dev/null differ
diff --git a/priv/static/static/js/app.a9b3f4c3e79baf3fa8b7.js b/priv/static/static/js/app.a9b3f4c3e79baf3fa8b7.js
new file mode 100644
index 000000000..124f284be
Binary files /dev/null and b/priv/static/static/js/app.a9b3f4c3e79baf3fa8b7.js differ
diff --git a/priv/static/static/js/app.a9b3f4c3e79baf3fa8b7.js.map b/priv/static/static/js/app.a9b3f4c3e79baf3fa8b7.js.map
new file mode 100644
index 000000000..7c369185e
Binary files /dev/null and b/priv/static/static/js/app.a9b3f4c3e79baf3fa8b7.js.map differ
diff --git a/priv/static/static/js/vendors~app.3f1ed7a4fdfc37ee27a7.js b/priv/static/static/js/vendors~app.3f1ed7a4fdfc37ee27a7.js
index 9fe9e5eb7..a64eee9a9 100644
Binary files a/priv/static/static/js/vendors~app.3f1ed7a4fdfc37ee27a7.js and b/priv/static/static/js/vendors~app.3f1ed7a4fdfc37ee27a7.js differ
diff --git a/priv/static/static/js/vendors~app.3f1ed7a4fdfc37ee27a7.js.map b/priv/static/static/js/vendors~app.3f1ed7a4fdfc37ee27a7.js.map
index cbcbb50c1..2e88b3ce2 100644
Binary files a/priv/static/static/js/vendors~app.3f1ed7a4fdfc37ee27a7.js.map and b/priv/static/static/js/vendors~app.3f1ed7a4fdfc37ee27a7.js.map differ
diff --git a/priv/static/sw-pleroma.js b/priv/static/sw-pleroma.js
index 94268126a..4738f3391 100644
Binary files a/priv/static/sw-pleroma.js and b/priv/static/sw-pleroma.js differ
diff --git a/priv/static/sw.js b/priv/static/sw.js
index c2de0cfe0..5605bb05e 100644
Binary files a/priv/static/sw.js and b/priv/static/sw.js differ
diff --git a/test/captcha_test.exs b/test/captcha_test.exs
index 9f395d6b4..393c8219e 100644
--- a/test/captcha_test.exs
+++ b/test/captcha_test.exs
@@ -8,6 +8,7 @@ defmodule Pleroma.CaptchaTest do
import Tesla.Mock
alias Pleroma.Captcha.Kocaptcha
+ alias Pleroma.Captcha.Native
@ets_options [:ordered_set, :private, :named_table, {:read_concurrency, true}]
@@ -43,4 +44,21 @@ test "new and validate" do
) == :ok
end
end
+
+ describe "Native" do
+ test "new and validate" do
+ new = Native.new()
+
+ assert %{
+ answer_data: answer,
+ token: token,
+ type: :native,
+ url: "data:image/png;base64," <> _
+ } = new
+
+ assert is_binary(answer)
+ assert :ok = Native.validate(token, answer, answer)
+ assert {:error, "Invalid CAPTCHA"} == Native.validate(token, answer, answer <> "foobar")
+ end
+ end
end
diff --git a/test/conversation/participation_test.exs b/test/conversation/participation_test.exs
index 9b2c97963..ba81c0d4b 100644
--- a/test/conversation/participation_test.exs
+++ b/test/conversation/participation_test.exs
@@ -5,7 +5,9 @@
defmodule Pleroma.Conversation.ParticipationTest do
use Pleroma.DataCase
import Pleroma.Factory
+ alias Pleroma.Conversation
alias Pleroma.Conversation.Participation
+ alias Pleroma.Repo
alias Pleroma.User
alias Pleroma.Web.CommonAPI
@@ -98,7 +100,9 @@ test "it creates a participation for a conversation and a user" do
assert participation.user_id == user.id
assert participation.conversation_id == conversation.id
+ # Needed because updated_at is accurate down to a second
:timer.sleep(1000)
+
# Creating again returns the same participation
{:ok, %Participation{} = participation_two} =
Participation.create_for_user_and_conversation(user, conversation)
@@ -150,9 +154,7 @@ test "it marks all the user's participations as read" do
test "gets all the participations for a user, ordered by updated at descending" do
user = insert(:user)
{:ok, activity_one} = CommonAPI.post(user, %{"status" => "x", "visibility" => "direct"})
- :timer.sleep(1000)
{:ok, activity_two} = CommonAPI.post(user, %{"status" => "x", "visibility" => "direct"})
- :timer.sleep(1000)
{:ok, activity_three} =
CommonAPI.post(user, %{
@@ -161,6 +163,17 @@ test "gets all the participations for a user, ordered by updated at descending"
"in_reply_to_status_id" => activity_one.id
})
+ # Offset participations because the accuracy of updated_at is down to a second
+
+ for {activity, offset} <- [{activity_two, 1}, {activity_three, 2}] do
+ conversation = Conversation.get_for_ap_id(activity.data["context"])
+ participation = Participation.for_user_and_conversation(user, conversation)
+ updated_at = NaiveDateTime.add(Map.get(participation, :updated_at), offset)
+
+ Ecto.Changeset.change(participation, %{updated_at: updated_at})
+ |> Repo.update!()
+ end
+
assert [participation_one, participation_two] = Participation.for_user(user)
object2 = Pleroma.Object.normalize(activity_two)
diff --git a/test/moderation_log_test.exs b/test/moderation_log_test.exs
index 4240f6a65..f2168b735 100644
--- a/test/moderation_log_test.exs
+++ b/test/moderation_log_test.exs
@@ -214,7 +214,7 @@ test "logging report response", %{moderator: moderator} do
{:ok, _} =
ModerationLog.insert_log(%{
actor: moderator,
- action: "report_response",
+ action: "report_note",
subject: report,
text: "look at this"
})
@@ -222,7 +222,7 @@ test "logging report response", %{moderator: moderator} do
log = Repo.one(ModerationLog)
assert log.data["message"] ==
- "@#{moderator.nickname} responded with 'look at this' to report ##{report.id}"
+ "@#{moderator.nickname} added note 'look at this' to report ##{report.id}"
end
test "logging status sensitivity update", %{moderator: moderator} do
diff --git a/test/plugs/rate_limiter_test.exs b/test/plugs/rate_limiter_test.exs
index f3343abca..06ffa7b70 100644
--- a/test/plugs/rate_limiter_test.exs
+++ b/test/plugs/rate_limiter_test.exs
@@ -178,10 +178,10 @@ test "are restricted based on remote IP" do
test "can have limits seperate from unauthenticated connections" do
limiter_name = :test_authenticated
- scale = 1000
+ scale = 50
limit = 5
Pleroma.Config.put([Pleroma.Web.Endpoint, :http, :ip], {8, 8, 8, 8})
- Pleroma.Config.put([:rate_limit, limiter_name], [{1, 10}, {scale, limit}])
+ Pleroma.Config.put([:rate_limit, limiter_name], [{1000, 1}, {scale, limit}])
opts = RateLimiter.init(name: limiter_name)
@@ -198,16 +198,6 @@ test "can have limits seperate from unauthenticated connections" do
assert %{"error" => "Throttled"} = Phoenix.ConnTest.json_response(conn, :too_many_requests)
assert conn.halted
-
- Process.sleep(1550)
-
- conn = conn(:get, "/") |> assign(:user, user)
- conn = RateLimiter.call(conn, opts)
- assert {1, 4} = RateLimiter.inspect_bucket(conn, limiter_name, opts)
-
- refute conn.status == Plug.Conn.Status.code(:too_many_requests)
- refute conn.resp_body
- refute conn.halted
end
test "diffrerent users are counted independently" do
diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs
index ad1fb6d02..1520c8a9b 100644
--- a/test/web/activity_pub/activity_pub_test.exs
+++ b/test/web/activity_pub/activity_pub_test.exs
@@ -1639,13 +1639,10 @@ test "returns a favourite activities sorted by adds to favorite" do
{:ok, _, _} = CommonAPI.favorite(a4.id, user)
{:ok, _, _} = CommonAPI.favorite(a3.id, other_user)
- Process.sleep(1000)
{:ok, _, _} = CommonAPI.favorite(a3.id, user)
{:ok, _, _} = CommonAPI.favorite(a5.id, other_user)
- Process.sleep(1000)
{:ok, _, _} = CommonAPI.favorite(a5.id, user)
{:ok, _, _} = CommonAPI.favorite(a4.id, other_user)
- Process.sleep(1000)
{:ok, _, _} = CommonAPI.favorite(a1.id, user)
{:ok, _, _} = CommonAPI.favorite(a1.id, other_user)
result = ActivityPub.fetch_favourites(user)
diff --git a/test/web/activity_pub/views/user_view_test.exs b/test/web/activity_pub/views/user_view_test.exs
index 3299be2d5..8374b8d23 100644
--- a/test/web/activity_pub/views/user_view_test.exs
+++ b/test/web/activity_pub/views/user_view_test.exs
@@ -126,7 +126,7 @@ test "sets totalItems to zero when followers are hidden" do
{:ok, _other_user, user, _activity} = CommonAPI.follow(other_user, user)
assert %{"totalItems" => 1} = UserView.render("followers.json", %{user: user})
user = Map.merge(user, %{hide_followers_count: true, hide_followers: true})
- assert %{"totalItems" => 0} = UserView.render("followers.json", %{user: user})
+ refute UserView.render("followers.json", %{user: user}) |> Map.has_key?("totalItems")
end
test "sets correct totalItems when followers are hidden but the follower counter is not" do
diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs
index 23ca7f110..49ff005b6 100644
--- a/test/web/admin_api/admin_api_controller_test.exs
+++ b/test/web/admin_api/admin_api_controller_test.exs
@@ -10,6 +10,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
alias Pleroma.HTML
alias Pleroma.ModerationLog
alias Pleroma.Repo
+ alias Pleroma.ReportNote
alias Pleroma.Tests.ObanHelpers
alias Pleroma.User
alias Pleroma.UserInviteToken
@@ -1831,61 +1832,6 @@ test "account not empty if status was deleted", %{
end
end
- describe "POST /api/pleroma/admin/reports/:id/respond" do
- setup %{conn: conn} do
- admin = insert(:user, is_admin: true)
-
- %{conn: assign(conn, :user, admin), admin: admin}
- end
-
- test "returns created dm", %{conn: conn, admin: admin} do
- [reporter, target_user] = insert_pair(:user)
- activity = insert(:note_activity, user: target_user)
-
- {:ok, %{id: report_id}} =
- CommonAPI.report(reporter, %{
- "account_id" => target_user.id,
- "comment" => "I feel offended",
- "status_ids" => [activity.id]
- })
-
- response =
- conn
- |> post("/api/pleroma/admin/reports/#{report_id}/respond", %{
- "status" => "I will check it out"
- })
- |> json_response(:ok)
-
- recipients = Enum.map(response["mentions"], & &1["username"])
-
- assert reporter.nickname in recipients
- assert response["content"] == "I will check it out"
- assert response["visibility"] == "direct"
-
- log_entry = Repo.one(ModerationLog)
-
- assert ModerationLog.get_log_entry_message(log_entry) ==
- "@#{admin.nickname} responded with 'I will check it out' to report ##{
- response["id"]
- }"
- end
-
- test "returns 400 when status is missing", %{conn: conn} do
- conn = post(conn, "/api/pleroma/admin/reports/test/respond")
-
- assert json_response(conn, :bad_request) == "Invalid parameters"
- end
-
- test "returns 404 when report id is invalid", %{conn: conn} do
- conn =
- post(conn, "/api/pleroma/admin/reports/test/respond", %{
- "status" => "foo"
- })
-
- assert json_response(conn, :not_found) == "Not found"
- end
- end
-
describe "PUT /api/pleroma/admin/statuses/:id" do
setup %{conn: conn} do
admin = insert(:user, is_admin: true)
@@ -3082,6 +3028,77 @@ test "it resend emails for two users", %{admin: admin} do
}"
end
end
+
+ describe "POST /reports/:id/notes" do
+ setup do
+ admin = insert(:user, is_admin: true)
+ [reporter, target_user] = insert_pair(:user)
+ activity = insert(:note_activity, user: target_user)
+
+ {:ok, %{id: report_id}} =
+ CommonAPI.report(reporter, %{
+ "account_id" => target_user.id,
+ "comment" => "I feel offended",
+ "status_ids" => [activity.id]
+ })
+
+ build_conn()
+ |> assign(:user, admin)
+ |> post("/api/pleroma/admin/reports/#{report_id}/notes", %{
+ content: "this is disgusting!"
+ })
+
+ build_conn()
+ |> assign(:user, admin)
+ |> post("/api/pleroma/admin/reports/#{report_id}/notes", %{
+ content: "this is disgusting2!"
+ })
+
+ %{
+ admin_id: admin.id,
+ report_id: report_id,
+ admin: admin
+ }
+ end
+
+ test "it creates report note", %{admin_id: admin_id, report_id: report_id} do
+ [note, _] = Repo.all(ReportNote)
+
+ assert %{
+ activity_id: ^report_id,
+ content: "this is disgusting!",
+ user_id: ^admin_id
+ } = note
+ end
+
+ test "it returns reports with notes", %{admin: admin} do
+ conn =
+ build_conn()
+ |> assign(:user, admin)
+ |> get("/api/pleroma/admin/reports")
+
+ response = json_response(conn, 200)
+ notes = hd(response["reports"])["notes"]
+ [note, _] = notes
+
+ assert note["user"]["nickname"] == admin.nickname
+ assert note["content"] == "this is disgusting!"
+ assert note["created_at"]
+ assert response["total"] == 1
+ end
+
+ test "it deletes the note", %{admin: admin, report_id: report_id} do
+ assert ReportNote |> Repo.all() |> length() == 2
+
+ [note, _] = Repo.all(ReportNote)
+
+ build_conn()
+ |> assign(:user, admin)
+ |> delete("/api/pleroma/admin/reports/#{report_id}/notes/#{note.id}")
+
+ assert ReportNote |> Repo.all() |> length() == 1
+ end
+ end
end
# Needed for testing
diff --git a/test/web/admin_api/views/report_view_test.exs b/test/web/admin_api/views/report_view_test.exs
index ef4a806e4..a0c6eab3c 100644
--- a/test/web/admin_api/views/report_view_test.exs
+++ b/test/web/admin_api/views/report_view_test.exs
@@ -30,6 +30,7 @@ test "renders a report" do
Pleroma.Web.AdminAPI.AccountView.render("show.json", %{user: other_user})
),
statuses: [],
+ notes: [],
state: "open",
id: activity.id
}
@@ -65,6 +66,7 @@ test "includes reported statuses" do
),
statuses: [StatusView.render("show.json", %{activity: activity})],
state: "open",
+ notes: [],
id: report_activity.id
}
diff --git a/test/web/oauth/oauth_controller_test.exs b/test/web/oauth/oauth_controller_test.exs
index beb995cd8..901f2ae41 100644
--- a/test/web/oauth/oauth_controller_test.exs
+++ b/test/web/oauth/oauth_controller_test.exs
@@ -567,33 +567,41 @@ test "with existing authentication and OOB `redirect_uri`, redirects to app with
end
describe "POST /oauth/authorize" do
- test "redirects with oauth authorization" do
- user = insert(:user)
- app = insert(:oauth_app, scopes: ["read", "write", "follow"])
+ test "redirects with oauth authorization, " <>
+ "keeping only non-admin scopes for non-admin user" do
+ app = insert(:oauth_app, scopes: ["read", "write", "admin"])
redirect_uri = OAuthController.default_redirect_uri(app)
- conn =
- build_conn()
- |> post("/oauth/authorize", %{
- "authorization" => %{
- "name" => user.nickname,
- "password" => "test",
- "client_id" => app.client_id,
- "redirect_uri" => redirect_uri,
- "scope" => "read:subscope write",
- "state" => "statepassed"
- }
- })
+ non_admin = insert(:user, is_admin: false)
+ admin = insert(:user, is_admin: true)
- target = redirected_to(conn)
- assert target =~ redirect_uri
+ for {user, expected_scopes} <- %{
+ non_admin => ["read:subscope", "write"],
+ admin => ["read:subscope", "write", "admin"]
+ } do
+ conn =
+ build_conn()
+ |> post("/oauth/authorize", %{
+ "authorization" => %{
+ "name" => user.nickname,
+ "password" => "test",
+ "client_id" => app.client_id,
+ "redirect_uri" => redirect_uri,
+ "scope" => "read:subscope write admin",
+ "state" => "statepassed"
+ }
+ })
- query = URI.parse(target).query |> URI.query_decoder() |> Map.new()
+ target = redirected_to(conn)
+ assert target =~ redirect_uri
- assert %{"state" => "statepassed", "code" => code} = query
- auth = Repo.get_by(Authorization, token: code)
- assert auth
- assert auth.scopes == ["read:subscope", "write"]
+ query = URI.parse(target).query |> URI.query_decoder() |> Map.new()
+
+ assert %{"state" => "statepassed", "code" => code} = query
+ auth = Repo.get_by(Authorization, token: code)
+ assert auth
+ assert auth.scopes == expected_scopes
+ end
end
test "returns 401 for wrong credentials", %{conn: conn} do
@@ -623,31 +631,34 @@ test "returns 401 for wrong credentials", %{conn: conn} do
assert result =~ "Invalid Username/Password"
end
- test "returns 401 for missing scopes", %{conn: conn} do
- user = insert(:user)
- app = insert(:oauth_app)
+ test "returns 401 for missing scopes " <>
+ "(including all admin-only scopes for non-admin user)" do
+ user = insert(:user, is_admin: false)
+ app = insert(:oauth_app, scopes: ["read", "write", "admin"])
redirect_uri = OAuthController.default_redirect_uri(app)
- result =
- conn
- |> post("/oauth/authorize", %{
- "authorization" => %{
- "name" => user.nickname,
- "password" => "test",
- "client_id" => app.client_id,
- "redirect_uri" => redirect_uri,
- "state" => "statepassed",
- "scope" => ""
- }
- })
- |> html_response(:unauthorized)
+ for scope_param <- ["", "admin:read admin:write"] do
+ result =
+ build_conn()
+ |> post("/oauth/authorize", %{
+ "authorization" => %{
+ "name" => user.nickname,
+ "password" => "test",
+ "client_id" => app.client_id,
+ "redirect_uri" => redirect_uri,
+ "state" => "statepassed",
+ "scope" => scope_param
+ }
+ })
+ |> html_response(:unauthorized)
- # Keep the details
- assert result =~ app.client_id
- assert result =~ redirect_uri
+ # Keep the details
+ assert result =~ app.client_id
+ assert result =~ redirect_uri
- # Error message
- assert result =~ "This action is outside the authorized scopes"
+ # Error message
+ assert result =~ "This action is outside the authorized scopes"
+ end
end
test "returns 401 for scopes beyond app scopes hierarchy", %{conn: conn} do
diff --git a/test/web/streamer/streamer_test.exs b/test/web/streamer/streamer_test.exs
index 8911c46b1..7166d6f0b 100644
--- a/test/web/streamer/streamer_test.exs
+++ b/test/web/streamer/streamer_test.exs
@@ -16,6 +16,10 @@ defmodule Pleroma.Web.StreamerTest do
alias Pleroma.Web.Streamer.Worker
@moduletag needs_streamer: true, capture_log: true
+
+ @streamer_timeout 150
+ @streamer_start_wait 10
+
clear_config_all([:instance, :skip_thread_containment])
describe "user streams" do
@@ -28,7 +32,7 @@ defmodule Pleroma.Web.StreamerTest do
test "it sends notify to in the 'user' stream", %{user: user, notify: notify} do
task =
Task.async(fn ->
- assert_receive {:text, _}, 4_000
+ assert_receive {:text, _}, @streamer_timeout
end)
Streamer.add_socket(
@@ -43,7 +47,7 @@ test "it sends notify to in the 'user' stream", %{user: user, notify: notify} do
test "it sends notify to in the 'user:notification' stream", %{user: user, notify: notify} do
task =
Task.async(fn ->
- assert_receive {:text, _}, 4_000
+ assert_receive {:text, _}, @streamer_timeout
end)
Streamer.add_socket(
@@ -61,7 +65,7 @@ test "it doesn't send notify to the 'user:notification' stream when a user is bl
blocked = insert(:user)
{:ok, _user_relationship} = User.block(user, blocked)
- task = Task.async(fn -> refute_receive {:text, _}, 4_000 end)
+ task = Task.async(fn -> refute_receive {:text, _}, @streamer_timeout end)
Streamer.add_socket(
"user:notification",
@@ -79,7 +83,7 @@ test "it doesn't send notify to the 'user:notification' stream when a thread is
user: user
} do
user2 = insert(:user)
- task = Task.async(fn -> refute_receive {:text, _}, 4_000 end)
+ task = Task.async(fn -> refute_receive {:text, _}, @streamer_timeout end)
Streamer.add_socket(
"user:notification",
@@ -97,7 +101,7 @@ test "it doesn't send notify to the 'user:notification' stream' when a domain is
user: user
} do
user2 = insert(:user, %{ap_id: "https://hecking-lewd-place.com/user/meanie"})
- task = Task.async(fn -> refute_receive {:text, _}, 4_000 end)
+ task = Task.async(fn -> refute_receive {:text, _}, @streamer_timeout end)
Streamer.add_socket(
"user:notification",
@@ -116,7 +120,9 @@ test "it sends follow activities to the 'user:notification' stream", %{
user: user
} do
user2 = insert(:user)
- task = Task.async(fn -> assert_receive {:text, _}, 4_000 end)
+ task = Task.async(fn -> assert_receive {:text, _}, @streamer_timeout end)
+
+ Process.sleep(@streamer_start_wait)
Streamer.add_socket(
"user:notification",
@@ -137,7 +143,7 @@ test "it sends to public" do
task =
Task.async(fn ->
- assert_receive {:text, _}, 4_000
+ assert_receive {:text, _}, @streamer_timeout
end)
fake_socket = %StreamerSocket{
@@ -164,7 +170,7 @@ test "it sends to public" do
}
|> Jason.encode!()
- assert_receive {:text, received_event}, 4_000
+ assert_receive {:text, received_event}, @streamer_timeout
assert received_event == expected_event
end)
@@ -458,9 +464,7 @@ test "it doesn't send posts from muted threads" do
{:ok, activity} = CommonAPI.add_mute(user2, activity)
- task = Task.async(fn -> refute_receive {:text, _}, 4_000 end)
-
- Process.sleep(4000)
+ task = Task.async(fn -> refute_receive {:text, _}, @streamer_timeout end)
Streamer.add_socket(
"user",
@@ -482,7 +486,7 @@ test "it sends conversation update to the 'direct' stream", %{} do
task =
Task.async(fn ->
- assert_receive {:text, received_event}, 4_000
+ assert_receive {:text, received_event}, @streamer_timeout
assert %{"event" => "conversation", "payload" => received_payload} =
Jason.decode!(received_event)
@@ -518,13 +522,13 @@ test "it doesn't send conversation update to the 'direct' stream when the last m
task =
Task.async(fn ->
- assert_receive {:text, received_event}, 4_000
+ assert_receive {:text, received_event}, @streamer_timeout
assert %{"event" => "delete", "payload" => _} = Jason.decode!(received_event)
- refute_receive {:text, _}, 4_000
+ refute_receive {:text, _}, @streamer_timeout
end)
- Process.sleep(1000)
+ Process.sleep(@streamer_start_wait)
Streamer.add_socket(
"direct",
@@ -555,10 +559,10 @@ test "it sends conversation update to the 'direct' stream when a message is dele
task =
Task.async(fn ->
- assert_receive {:text, received_event}, 4_000
+ assert_receive {:text, received_event}, @streamer_timeout
assert %{"event" => "delete", "payload" => _} = Jason.decode!(received_event)
- assert_receive {:text, received_event}, 4_000
+ assert_receive {:text, received_event}, @streamer_timeout
assert %{"event" => "conversation", "payload" => received_payload} =
Jason.decode!(received_event)
@@ -567,7 +571,7 @@ test "it sends conversation update to the 'direct' stream when a message is dele
assert last_status["id"] == to_string(create_activity.id)
end)
- Process.sleep(1000)
+ Process.sleep(@streamer_start_wait)
Streamer.add_socket(
"direct",
diff --git a/test/web/twitter_api/util_controller_test.exs b/test/web/twitter_api/util_controller_test.exs
index 734cd2211..43299e147 100644
--- a/test/web/twitter_api/util_controller_test.exs
+++ b/test/web/twitter_api/util_controller_test.exs
@@ -898,8 +898,6 @@ test "with credentials and valid password", %{conn: conn, user: current_user} do
|> post("/api/pleroma/delete_account", %{"password" => "test"})
assert json_response(conn, 200) == %{"status" => "success"}
- # Wait a second for the started task to end
- :timer.sleep(1000)
end
end
end