Doug Lauder
2023-03-22 17:22:27 -04:00
коммит произвёл GitHub
родитель b61c096497
Коммит c943ed6859
13276 изменённых файлов: 1695615 добавлений и 223189 удалений

Двоичные данные
server/tests/10000x1.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 283 B

Двоичные данные
server/tests/10000x1_expected_preview.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 92 B

Двоичные данные
server/tests/10000x1_expected_thumb.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 76 B

Двоичные данные
server/tests/1x10000.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 307 B

Двоичные данные
server/tests/1x10000_expected_preview.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 121 B

Двоичные данные
server/tests/1x10000_expected_thumb.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 79 B

Двоичные данные
server/tests/Fake_Team_Import.rar Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/Fake_Team_Import.tar.gz Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/Fake_Team_Import.zip Обычный файл

Двоичный файл не отображается.

40
server/tests/README.md Обычный файл
Просмотреть файл

@@ -0,0 +1,40 @@
# Testing Text Processing
The text processing tests located in the [doc/developer/tests folder](https://github.com/mattermost/platform/tree/master/doc/developer/tests) are designed for use with the `/test url` command. This command posts the raw contents of a specified .md file in the doc/developer/test folder into Mattermost.
## Turning on /test
Access the **System Console** from the Main Menu. Under *Service Settings* make sure that *Enable Testing* is set to `true`, then click **Save**. You may also change this setting from `config.json` by setting `”EnableTesting”: true`. Changing this setting requires a server restart to take effect.
## Running the Tests
In the text input box in Mattermost, type: `/test url [file-name-in-testing-folder].md`. Some examples:
`/test url test-emoticons.md`
`/test url test-links.md`
#### Notes:
1. If a test has prerequisites, make sure your Mattermost setup meets the requirements described at the top of the test file.
2. Some tests are over 4000 characters in length and will render across multiple posts.
## Manual Testing
It is possible to manually test specific sections of any test, instead of using the /test command. Do this by clicking **Raw** in the header for the file when its open in GitHub, then copy and paste any section into Mattermost to post it. Manual testing only supports sections of 4000 characters or less per post.
## Test plugins
There are two test plugins: `testplugin.tar.gz` and `testplugin2.tar.gz`. These are use in some integration tests in the `api4` package. Any changes to the plugin bundles require updating the corresponding signatures.
First, import the public and private development key:
```sh
gpg --import ./development-public-key.gpg
gpg --import ./development-private-key.asc
```
This has to be done only once.
Then update the signatures:
```sh
gpg -u F3FACE45E0DE642C8BD6A8E64C7C6562C192CC1F --verbose --personal-digest-preferences SHA256 --detach-sign testplugin.tar.gz
gpg -u F3FACE45E0DE642C8BD6A8E64C7C6562C192CC1F --verbose --personal-digest-preferences SHA256 --detach-sign --armor testplugin.tar.gz
gpg -u F3FACE45E0DE642C8BD6A8E64C7C6562C192CC1F --verbose --personal-digest-preferences SHA256 --detach-sign testplugin2.tar.gz
gpg -u F3FACE45E0DE642C8BD6A8E64C7C6562C192CC1F --verbose --personal-digest-preferences SHA256 --detach-sign --armor testplugin2.tar.gz
```
Finally, include the updates bundles and signatures in your commit.

Просмотреть файл

@@ -0,0 +1,17 @@
"let p be ""higher-scoped scheme has the permission""","let q be ""permission is moderated""","let r be ""channel scheme has the permission""","let s be ""channel role is channel_admin""","""channel role has the permission"" = p ∧ (s (q → r))"
TRUE,TRUE,TRUE,TRUE,TRUE
TRUE,TRUE,TRUE,FALSE,TRUE
TRUE,TRUE,FALSE,TRUE,TRUE
TRUE,TRUE,FALSE,FALSE,FALSE
TRUE,FALSE,TRUE,TRUE,TRUE
TRUE,FALSE,TRUE,FALSE,TRUE
TRUE,FALSE,FALSE,TRUE,TRUE
TRUE,FALSE,FALSE,FALSE,TRUE
FALSE,TRUE,TRUE,TRUE,FALSE
FALSE,TRUE,TRUE,FALSE,FALSE
FALSE,TRUE,FALSE,TRUE,FALSE
FALSE,TRUE,FALSE,FALSE,FALSE
FALSE,FALSE,TRUE,TRUE,FALSE
FALSE,FALSE,TRUE,FALSE,FALSE
FALSE,FALSE,FALSE,TRUE,FALSE
FALSE,FALSE,FALSE,FALSE,FALSE
1 let p be "higher-scoped scheme has the permission" let q be "permission is moderated" let r be "channel scheme has the permission" let s be "channel role is channel_admin" "channel role has the permission" = p ∧ (s ∨ (q → r))
2 TRUE TRUE TRUE TRUE TRUE
3 TRUE TRUE TRUE FALSE TRUE
4 TRUE TRUE FALSE TRUE TRUE
5 TRUE TRUE FALSE FALSE FALSE
6 TRUE FALSE TRUE TRUE TRUE
7 TRUE FALSE TRUE FALSE TRUE
8 TRUE FALSE FALSE TRUE TRUE
9 TRUE FALSE FALSE FALSE TRUE
10 FALSE TRUE TRUE TRUE FALSE
11 FALSE TRUE TRUE FALSE FALSE
12 FALSE TRUE FALSE TRUE FALSE
13 FALSE TRUE FALSE FALSE FALSE
14 FALSE FALSE TRUE TRUE FALSE
15 FALSE FALSE TRUE FALSE FALSE
16 FALSE FALSE FALSE TRUE FALSE
17 FALSE FALSE FALSE FALSE FALSE

82
server/tests/development-private-key.asc Обычный файл
Просмотреть файл

@@ -0,0 +1,82 @@
-----BEGIN PGP PRIVATE KEY BLOCK-----
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
9ZvfTj7FR/OcwlB77uGrGoi3EQ==
=F0gN
-----END PGP PRIVATE KEY BLOCK-----

41
server/tests/development-public-key.asc Обычный файл
Просмотреть файл

@@ -0,0 +1,41 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQGNBF2gen8BDADKQObdPa6PagvYYMHNGIswCU9mVjOxr5g6niGQ/AxMW7AaHpkk
16/oAzJ+DSyJRRgJMlFbN0iKBrZ6pi1pO5eS4l1CWW3eATr+32gW40SuS/sgzVrS
OYPocqtsC9XWHK2j/UFbaI7aivnUYKIuBzhAWdcUYggjd1qgmM18zWYkuV1Jnywu
Xue3Vsc/pLGqybG/EkBmZHRktr4fNn2xEjmKnUKp28vMF4Pz5e8/2qklSsc9UVl5
avkex+glOeJSWF3L7S5CmHAWVgQNwKoJrvq7pKOUsZqrHScjyujeKp1Y6cUZdcBF
8bsF1I+J2RxQFqcC6O08x29948P8UkOv4/FpUGYhx6tcqnQ0PdT4fjPslRapvdZo
RiGdlvJLKUvhfRF0cgPxflde7M42cV5saOXKyaF2hPJi/SsFkTVSnyCyixdr8z+M
QMIcgtrQ26ig9s5J0h2j3y9sgvvTh1nxE/XWOlrXjCVohNSRWZBjX1PEd2dAk4ZK
OEB5YcST61kbhd0AEQEAAbRBTWF0dGVybW9zdCBJbmMuIChQbHVnaW4gc2lnbmlu
ZyBSU0EgZGV2LWtleSkgPGFsaUBtYXR0ZXJtb3N0LmNvbT6JAc4EEwEIADgWIQTz
+s5F4N5kLIvWqOZMfGViwZLMHwUCXaB6fwIbAwULCQgHAgYVCgkICwIEFgIDAQIe
AQIXgAAKCRBMfGViwZLMH/NoC/0UAvpTvT1sBD6qFpUOPZUmUSLLndtLzuYoMqID
0vvTdxb1PdbQpVX2sMuS19upyAmkVRh50uxGcsOLU/lUaF8C1C22zeGvtdkbw+79
Gv1AYlyCCEanhQSdH4z/t8W8nBcSw8kA+423guSzlIrrRSPCIyHSTP/MlwituN1+
wEUlXMXnjY4nNpyik+e9LoKK05zCy1mYswAnx1I5IH44iOfjqjz2FGv3iFhuc5rt
cEC26RyYCNVH7mIcCwd25/Np+IQbftfUVEugr1OGsSvdbAA3qWRtC9Q7VcFXy3A8
1svxkGPiZw60oxkG9V5v1l/ETCWztzvZvXXXZcWNaDb81rpn2LFeFulJKBxLLonC
gR/8l1hJAt8uS8ymOQRpVK9QVztlyxtZWZ7FxsfsC4AXthU3VFZjLUd1Tf4k5eW2
ov9JPjcSHHBQp6ScjtSgLTb4s2B5mD7VFBhuFOTWs1mbpVaRVIpguvYKIdxtDfek
0bjPQSI62K9G8mKGE4SqibfXhhO5AY0EXaB6fwEMALrPejAgOh7IWxmWJPO++8Fv
8eJD5nU7I3I4cWgJolXDSP4gEpkwlfHzAn7BJwTKTvZ5oDqpQCQV3mwqumQlRBKS
DHXU3b1Z4MOq3SbQlFfNduTCzKa7a79/DFf96TXilpVW/XT3HdN69810oCfo87Ub
/fx2G6h9JLaxdwJ57b/8Ej4eNbclGgE4GYHP9Xf0FX7F2xIqaIm/RCTGf7uGlaU0
RmeEFmy69T7jUAGI7g1gN1eldQ0F1q2HPuhP4iP39ZAz9K4Oyzl+B2IcHXyH2MjP
WXfgjVi87O5rEUvA/cpYU5WFc8hflP7cil16rb/PiALzEx+GCpdARxvtMT/IbK/3
luC2l/uw2ZYwtaL+8e9vyDOkVaWTD408Q51qrIANWwwLUSn71TuImGxCDzeuN79V
/T5PSjR5o/s6lR0CGzNL/B3MziuD2Vr5Wl1LYkJfTlgmGrnm6aJ/zKbrOMnkeAu5
Q0VgVOyibKhTu31WdXJ/jbhPQ5yd4UkduSAODStsRQARAQABiQG2BBgBCAAgFiEE
8/rOReDeZCyL1qjmTHxlYsGSzB8FAl2gen8CGwwACgkQTHxlYsGSzB8v7Av+IC9I
t7U3W51hCXH2wNcaSi8hxSYpFMl7GMX9zSKE8nKDmKBXUV7RJtU3cpGiGvgl+LLw
qBtjahRP+PU8AQSLL/4W97ldQrrdnOET6mtEiJylliA187SkimSixyy31YnUKDn6
PIeapJaoJ+JI22VhqbGd5tJCDbjTRFyiJP0L6vCEUAoLhpaqsqUiUw86//USl3uh
P+G9m2z3QPmxVFP/xZFEbihprpe/AccDLFjTwEWAMag6vV0NoI0E+JGeICKtzkxB
Pgi71N/jHKULPVMPXkaD30GT4k72lmuwqfvLz9uEhgSeAHakma8wUlp0aSw+kk4a
dZmqpBXcl6VFSDpCJXANUS4IUqjVqnK4nAGONR4JFaoejtAnmlz61EtjWuzPYjQS
0dL1Jv69WXLal7tzTJOZLekHas8DxzMgkID4IXCaSjwDb34mVgdaWyD1E302U3eX
IfS6J8Zp6Bs1baubHXFifXU6SV805b6i46/1m99OPsVH85zCUHvu4asaiLcR
=qIjw
-----END PGP PUBLIC KEY BLOCK-----

Двоичные данные
server/tests/development-public-key.gpg Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/export_test.zip Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/fill_test_16bit_rgb.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 1.2 KiB

Двоичные данные
server/tests/fill_test_16bit_rgb_out.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 1011 B

Двоичные данные
server/tests/fill_test_16bit_rgba.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 1.5 KiB

Двоичные данные
server/tests/fill_test_16bit_rgba_out.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 1.3 KiB

Двоичные данные
server/tests/fill_test_8bit_palette.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 724 B

Двоичные данные
server/tests/fill_test_8bit_palette_out.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 140 B

Двоичные данные
server/tests/fill_test_8bit_rgb.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 889 B

Двоичные данные
server/tests/fill_test_8bit_rgb_out.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 700 B

Двоичные данные
server/tests/fill_test_8bit_rgba.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 1.1 KiB

Двоичные данные
server/tests/fill_test_8bit_rgba_out.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 897 B

Двоичные данные
server/tests/fill_test_opaque.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 299 B

8
server/tests/group-role-has-permission.csv Обычный файл
Просмотреть файл

@@ -0,0 +1,8 @@
"let p be ""system role has permission""","let q be ""is group member""","let r be ""group role has permission""","""permission granted"" = p (q ∧ r)"
TRUE,TRUE,TRUE,TRUE
TRUE,TRUE,FALSE,TRUE
TRUE,FALSE,TRUE,TRUE
TRUE,FALSE,FALSE,TRUE
FALSE,TRUE,TRUE,TRUE
FALSE,TRUE,FALSE,FALSE
FALSE,FALSE,TRUE,FALSE
1 let p be "system role has permission" let q be "is group member" let r be "group role has permission" "permission granted" = p ∨ (q ∧ r)
2 TRUE TRUE TRUE TRUE
3 TRUE TRUE FALSE TRUE
4 TRUE FALSE TRUE TRUE
5 TRUE FALSE FALSE TRUE
6 FALSE TRUE TRUE TRUE
7 FALSE TRUE FALSE FALSE
8 FALSE FALSE TRUE FALSE

Двоичные данные
server/tests/import_test.zip Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/large_image_file.jpg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 2.6 MiB

Двоичные данные
server/tests/orientation_test.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 182 KiB

Двоичные данные
server/tests/orientation_test_1.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 312 KiB

Двоичные данные
server/tests/orientation_test_1_expected_preview.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 300 KiB

Двоичные данные
server/tests/orientation_test_1_expected_thumb.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 7.8 KiB

Двоичные данные
server/tests/orientation_test_2.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 458 KiB

Двоичные данные
server/tests/orientation_test_2_expected_preview.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 300 KiB

Двоичные данные
server/tests/orientation_test_2_expected_thumb.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 7.8 KiB

Двоичные данные
server/tests/orientation_test_3.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 575 KiB

Двоичные данные
server/tests/orientation_test_3_expected_preview.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 302 KiB

Двоичные данные
server/tests/orientation_test_3_expected_thumb.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 7.8 KiB

Двоичные данные
server/tests/orientation_test_4.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 484 KiB

Двоичные данные
server/tests/orientation_test_4_expected_preview.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 302 KiB

Двоичные данные
server/tests/orientation_test_4_expected_thumb.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 7.8 KiB

Двоичные данные
server/tests/orientation_test_5.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 315 KiB

Двоичные данные
server/tests/orientation_test_5_expected_preview.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 300 KiB

Двоичные данные
server/tests/orientation_test_5_expected_thumb.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 7.8 KiB

Двоичные данные
server/tests/orientation_test_6.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 459 KiB

Двоичные данные
server/tests/orientation_test_6_expected_preview.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 301 KiB

Двоичные данные
server/tests/orientation_test_6_expected_thumb.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 7.8 KiB

Двоичные данные
server/tests/orientation_test_7.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 576 KiB

Двоичные данные
server/tests/orientation_test_7_expected_preview.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 302 KiB

Двоичные данные
server/tests/orientation_test_7_expected_thumb.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 7.8 KiB

Двоичные данные
server/tests/orientation_test_8.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 488 KiB

Двоичные данные
server/tests/orientation_test_8_expected_preview.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 301 KiB

Двоичные данные
server/tests/orientation_test_8_expected_thumb.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 7.8 KiB

Двоичные данные
server/tests/qa-data-graph.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 40 KiB

103
server/tests/qa-data.ldif Обычный файл
Просмотреть файл

@@ -0,0 +1,103 @@
dn: ou=groups,dc=mm,dc=test,dc=com
changetype: add
objectclass: organizationalunit
dn: ou=users,dc=mm,dc=test,dc=com
changetype: add
objectclass: organizationalunit
dn: uid=corey.test,ou=users,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
cn: Corey
sn: Test
mail: corey.test@simulator.amazonses.com
userPassword: Password1
dn: uid=william.test,ou=users,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
cn: William
sn: Test
mail: william.test@simulator.amazonses.com
userPassword: Password1
dn: uid=linda.test,ou=users,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
cn: Linda
sn: Test
mail: linda.test@simulator.amazonses.com
userPassword: Password1
dn: uid=lindy.test,ou=users,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
cn: Lindy
sn: Test
mail: lindy.test@simulator.amazonses.com
userPassword: Password1
dn: uid=george.test,ou=users,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
cn: George
sn: Test
mail: george.test@simulator.amazonses.com
userPassword: Password1
dn: uid=jesus.test,ou=users,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
cn: Jesus
sn: Test
mail: jesus.test@simulator.amazonses.com
userPassword: Password1
dn: uid=carlos.test,ou=users,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
cn: Carlos
sn: Test
mail: carlos.test@simulator.amazonses.com
userPassword: Password1
dn: uid=jesse.test,ou=users,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
cn: Jesse
sn: Test
mail: jesse.test@simulator.amazonses.com
userPassword: Password1
dn: cn=engineering,ou=groups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: uid=corey.test,ou=users,dc=mm,dc=test,dc=com
member: cn=qa,ou=groups,dc=mm,dc=test,dc=com
member: cn=developers,ou=groups,dc=mm,dc=test,dc=com
dn: cn=qa,ou=groups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: uid=lindy.test,ou=users,dc=mm,dc=test,dc=com
member: uid=linda.test,ou=users,dc=mm,dc=test,dc=com
dn: cn=developers,ou=groups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: uid=william.test,ou=users,dc=mm,dc=test,dc=com
member: cn=xyz,ou=groups,dc=mm,dc=test,dc=com
member: cn=abc,ou=groups,dc=mm,dc=test,dc=com
dn: cn=xyz,ou=groups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: uid=jesus.test,ou=users,dc=mm,dc=test,dc=com
member: uid=george.test,ou=users,dc=mm,dc=test,dc=com
dn: cn=abc,ou=groups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: uid=carlos.test,ou=users,dc=mm,dc=test,dc=com
member: uid=jesse.test,ou=users,dc=mm,dc=test,dc=com

Двоичные данные
server/tests/sample-doc.doc Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/sample-doc.docx Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/sample-doc.odp Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/sample-doc.odt Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/sample-doc.pdf Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/sample-doc.pptx Обычный файл

Двоичный файл не отображается.

17
server/tests/sample-doc.rtf Обычный файл
Просмотреть файл

@@ -0,0 +1,17 @@
{\rtf1\ansi\deff3\adeflang1025
{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset0 Liberation Serif{\*\falt Times New Roman};}{\f4\froman\fprq2\fcharset0 Liberation Sans{\*\falt Arial};}{\f5\fnil\fprq2\fcharset0 Noto Serif CJK SC;}{\f6\fnil\fprq2\fcharset0 Noto Sans CJK SC;}{\f7\fnil\fprq2\fcharset0 FreeSans;}}
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}
{\stylesheet{\s0\snext0\dbch\af5\langfe2052\dbch\af7\afs24\alang1081\ql\widctlpar\hyphpar0\sb0\sa0\ltrpar\cf0\loch\f3\fs24\lang1033\kerning1 Normal;}
{\s15\sbasedon0\snext16\dbch\af6\langfe2052\dbch\af7\afs28\alang1081\ql\widctlpar\hyphpar0\sb240\sa120\keepn\ltrpar\cf0\loch\f4\fs28\lang1033\kerning1 Heading;}
{\s16\sbasedon0\snext16\dbch\af5\langfe2052\dbch\af7\afs24\alang1081\sl276\slmult1\ql\widctlpar\hyphpar0\sb0\sa140\ltrpar\cf0\loch\f3\fs24\lang1033\kerning1 Text Body;}
{\s17\sbasedon16\snext17\dbch\af5\langfe2052\dbch\af7\afs24\alang1081\sl276\slmult1\ql\widctlpar\hyphpar0\sb0\sa140\ltrpar\cf0\loch\f3\fs24\lang1033\kerning1 List;}
{\s18\sbasedon0\snext18\dbch\af5\langfe2052\dbch\af7\afs24\alang1081\ai\ql\widctlpar\hyphpar0\sb120\sa120\noline\ltrpar\cf0\loch\f3\fs24\lang1033\i\kerning1 Caption;}
{\s19\sbasedon0\snext19\dbch\af5\langfe2052\dbch\af7\afs24\alang1081\ql\widctlpar\hyphpar0\sb0\sa0\noline\ltrpar\cf0\loch\f3\fs24\lang1033\kerning1 Index;}
}{\*\generator LibreOffice/7.0.1.2$Linux_X86_64 LibreOffice_project/00$Build-2}{\info{\creatim\yr2020\mo9\dy25\hr10\min37}{\revtim\yr2020\mo9\dy25\hr10\min38}{\printim\yr0\mo0\dy0\hr0\min0}}{\*\userprops}\deftab709
\hyphauto1\viewscale180
{\*\pgdsctbl
{\pgdsc0\pgdscuse451\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt0 Default Page Style;}}
\formshade{\*\pgdscno0}\paperh15840\paperw12240\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\pgndec\sftnnar\saftnnrlc\sectunlocked1\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc\htmautsp
{\*\ftnsep\chftnsep}\pgndec\pard\plain \s0\dbch\af5\langfe2052\dbch\af7\afs24\alang1081\ql\widctlpar\hyphpar0\sb0\sa0\ltrpar\cf0\loch\f3\fs24\lang1033\kerning1\ql\ltrpar{\loch
This is a simple document that contains some text.}
\par }

165
server/tests/slack-import-test-channels.json Обычный файл
Просмотреть файл

@@ -0,0 +1,165 @@
[
{
"id": "C13CFUSDV",
"name": "artwork",
"created": "1461575251",
"creator": "U07Q4MHCP",
"is_archived": false,
"is_general": false,
"members": [
"U07Q4MHCP",
"U13C5JZ7W",
"U13CLGTKK",
"U13CSKE2E"
],
"topic": {
"value": "",
"creator": "",
"last_set": "0"
},
"purpose": {
"value": "Discussing art",
"creator": "U07Q4MHCP",
"last_set": "1461575252"
}
},
{
"id": "C13CN0Q0H",
"name": "eating-out",
"created": "1461575308",
"creator": "U07Q4MHCP",
"is_archived": false,
"is_general": false,
"members": [
"U07Q4MHCP",
"U13C5JZ7W",
"U13CLGTKK",
"U13CSKE2E"
],
"topic": {
"value": "",
"creator": "",
"last_set": "0"
},
"purpose": {
"value": "Restaurants around town",
"creator": "U07Q4MHCP",
"last_set": "1461575309"
}
},
{
"id": "C07Q4SBL3",
"name": "general",
"created": "1437124885",
"creator": "U07Q4MHCP",
"is_archived": false,
"is_general": true,
"members": [
"U07Q4MHCP",
"U13C5JZ7W",
"U13CLGTKK",
"U13CSKE2E",
"U15F73RL4",
"U15F922BY",
"U15FHKEKX",
"U15FHR92R",
"U15FUR1QS",
"U1THQPEMV",
"U24CG47QU"
],
"topic": {
"value": "Company-wide announcements and work-based matters",
"creator": "",
"last_set": "0"
},
"purpose": {
"value": "This channel is for team-wide communication and announcements. All team members are in this channel.",
"creator": "",
"last_set": "0"
}
},
{
"id": "C13B104PM",
"name": "movies",
"created": "1461575333",
"creator": "U07Q4MHCP",
"is_archived": false,
"is_general": false,
"members": [
"U07Q4MHCP",
"U13C5JZ7W",
"U13CLGTKK",
"U13CSKE2E"
],
"topic": {
"value": "",
"creator": "",
"last_set": "0"
},
"purpose": {
"value": "New movies",
"creator": "U07Q4MHCP",
"last_set": "1461575334"
}
},
{
"id": "C15FGPREU",
"name": "outings",
"created": "1462216386",
"creator": "U15FUR1QS",
"is_archived": false,
"is_general": false,
"members": [
"U07Q4MHCP",
"U13C5JZ7W",
"U13CLGTKK",
"U13CSKE2E",
"U15F73RL4",
"U15F922BY",
"U15FHKEKX",
"U15FHR92R",
"U15FUR1QS"
],
"topic": {
"value": "",
"creator": "",
"last_set": "0"
},
"purpose": {
"value": "Let's discuss our next monthly outing",
"creator": "U15FUR1QS",
"last_set": "1462216387"
}
},
{
"id": "C07Q4MBTL",
"name": "random",
"created": "1437124885",
"creator": "U07Q4MHCP",
"is_archived": false,
"is_general": false,
"members": [
"U07Q4MHCP",
"U13C5JZ7W",
"U13CLGTKK",
"U13CSKE2E",
"U15F73RL4",
"U15F922BY",
"U15FHKEKX",
"U15FHR92R",
"U15FUR1QS",
"U1THQPEMV",
"U24CG47QU"
],
"topic": {
"value": "Non-work banter and water cooler conversation",
"creator": "",
"last_set": "0"
},
"purpose": {
"value": "A place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber you'd prefer to keep out of more focused work-related channels.",
"creator": "",
"last_set": "0"
}
}
]

Просмотреть файл

@@ -0,0 +1,34 @@
[
{
"id": "D24TJMP61",
"created": "1472131245",
"members": [
"U1VVY70HK",
"U1W4XLR62"
]
},
{
"id": "D24TJNXUG",
"created": "1472132335",
"members": [
"U1XG9JUH1",
"U20APGU90"
]
},
{
"id": "D24TLE5V5",
"created": "1472131113",
"members": [
"U1TQ3A3L7",
"U1URR19QV"
]
},
{
"id": "D24TM4MPT",
"created": "1472131021",
"members": [
"U1V47GAM9",
"U1XVNP6DT"
]
}
]

Просмотреть файл

@@ -0,0 +1,69 @@
[
{
"id": "G1XSSNBTP",
"name": "mpdm-mcauly--sutton--barker--lankford-1",
"created": 1470239933,
"creator": "U1FFMLSKC",
"is_archived": false,
"members": [
"U1934896U",
"U1TTSPAGP",
"U1FFMLSKC",
"U1U234D4P"
],
"topic": {
"value": "Group messaging",
"creator": "U1FFMLSKC",
"last_set": "1470239933"
},
"purpose": {
"value": "Group messaging with: @mcauly @sutton @barker @lankford",
"creator": "U1FFMLSKC",
"last_set": "1470239933"
}
},
{
"id": "G22KV02G2",
"name": "mpdm-mcauly--wolfgram--weddington-1",
"created": 1471532476,
"creator": "U1K9SEY9K",
"is_archived": false,
"members": [
"U1934896U",
"U1K9SEY9K",
"U1YTGR5CP"
],
"topic": {
"value": "Group messaging",
"creator": "U1K9SEY9K",
"last_set": "1471532476"
},
"purpose": {
"value": "Group messaging with: @mcauly @wolfgram @weddington",
"creator": "U1K9SEY9K",
"last_set": "1471532476"
}
},
{
"id": "G2436812A",
"name": "mpdm-mcauly--lovell--buck-1",
"created": 1471964085,
"creator": "U1934896U",
"is_archived": false,
"members": [
"U1934896U",
"U1YYZNDJP",
"U1JSZSPR7"
],
"topic": {
"value": "Group messaging",
"creator": "U1934896U",
"last_set": "1471964085"
},
"purpose": {
"value": "Group messaging with: @mcauly @lovell @buck",
"creator": "U1934896U",
"last_set": "1471964085"
}
}
]

288
server/tests/slack-import-test-posts.json Обычный файл
Просмотреть файл

@@ -0,0 +1,288 @@
[
{
"type": "message",
"user": "U07Q4MHCP",
"text": "<@U24CG47QU>",
"ts": "1472932439.000002"
},
{
"user": "U07Q4MHCP",
"text": "<@U07Q4MHCP|lindy> has left the channel",
"type": "message",
"subtype": "channel_leave",
"ts": "1469440454.000002"
},
{
"user": "U15FUR1QS",
"purpose": "Let's discuss our next monthly outing",
"type": "message",
"subtype": "channel_purpose",
"text": "<@U15FUR1QS|igor> set the channel purpose: Let's discuss our next monthly outing",
"ts": "1462216387.000003"
},
{
"type": "message",
"subtype": "file_share",
"text": "<@U07Q4MHCP|lindy> uploaded a file: <https:\/\/slackexportteam.slack.com\/files\/lindy\/F1WB5FH7W\/pdf.pdf|Pdf.pdf>",
"file": {
"id": "F1WB5FH7W",
"created": 1469782519,
"timestamp": 1469782519,
"name": "Pdf.pdf",
"title": "Pdf.pdf",
"mimetype": "application\/pdf",
"filetype": "pdf",
"pretty_type": "PDF",
"user": "U07Q4MHCP",
"editable": false,
"size": 457717,
"mode": "hosted",
"is_external": false,
"external_type": "",
"is_public": true,
"public_url_shared": false,
"display_as_bot": false,
"username": "",
"url_private": "https:\/\/files.slack.com\/files-pri\/T07Q4MHC7-F1WB5FH7W\/pdf.pdf?t=xoxe-7820731415-83616398485-83620610359-b95751e3ea",
"url_private_download": "https:\/\/files.slack.com\/files-pri\/T07Q4MHC7-F1WB5FH7W\/download\/pdf.pdf?t=xoxe-7820731415-83616398485-83620610359-b95751e3ea",
"permalink": "https:\/\/slackexportteam.slack.com\/files\/lindy\/F1WB5FH7W\/pdf.pdf",
"permalink_public": "https:\/\/slack-files.com\/T07Q4MHC7-F1WB5FH7W-8560bd68a4",
"channels": [
"C07Q4MBTL"
],
"groups": [
],
"ims": [
],
"comments_count": 0
},
"user": "U07Q4MHCP",
"upload": true,
"display_as_bot": false,
"username": "<@U07Q4MHCP|lindy>",
"bot_id": null,
"ts": "1469782519.000002"
},
{
"user": "U24CG47QU",
"text": "<@U24CG47QU|lindy.invite> has joined the channel",
"type": "message",
"subtype": "channel_join",
"ts": "1472028157.000002"
},
{
"bot_id": "B13CH9S5V",
"attachments": [
{
"fallback": "<https:\/\/twitter.com\/m2pls|@m2pls>: M2 informatique PLS et EID2 on vous retrouve sur le <https:\/\/twitter.com\/mattermosthq|@mattermosthq> du master, les invitations partiront lundi (ou demander en MP).",
"ts": 1474722287,
"author_name": "Master 2 PLS",
"author_link": "https:\/\/twitter.com\/m2pls\/status\/779667900600844288",
"author_icon": "https:\/\/pbs.twimg.com\/profile_images\/649829889890086912\/ULpVHs9S_normal.jpg",
"author_subname": "@m2pls",
"pretext": "<https:\/\/twitter.com\/m2pls\/status\/779667900600844288>",
"text": "M2 informatique PLS et EID2 on vous retrouve sur le <https:\/\/twitter.com\/mattermosthq|@mattermosthq> du master, les invitations partiront lundi (ou demander en MP).",
"service_name": "twitter",
"service_url": "https:\/\/twitter.com\/",
"from_url": "https:\/\/twitter.com\/m2pls\/status\/779667900600844288",
"id": 1,
"footer": "Twitter",
"footer_icon": "https:\/\/a.slack-edge.com\/6e067\/img\/services\/twitter_pixel_snapped_32.png"
}
],
"text": null,
"type": "message",
"subtype": "bot_message",
"ts": "1474722288.637240"
},
{
"type": "message",
"user": "U07Q4MHCP",
"text": "<https:\/\/slackexportteam.slack.com\/archives\/general\/p1469781868000005>",
"attachments": [
{
"from_url": "https:\/\/slackexportteam.slack.com\/archives\/general\/p1469781868000005",
"fallback": "[July 29th, 2016 1:44 AM] lindy: permalink?",
"ts": "1469781868.000005",
"author_subname": "lindy",
"channel_id": "C07Q4SBL3",
"channel_name": "general",
"is_msg_unfurl": true,
"text": "permalink?",
"author_link": "https:\/\/slackexportteam.slack.com\/team\/lindy",
"author_icon": "https:\/\/secure.gravatar.com\/avatar\/822d051544b1f50f1e9f015cd2990edc.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F0180%2Fimg%2Favatars%2Fava_0001-48.png",
"mrkdwn_in": [
"text"
],
"id": 1,
"footer": "Posted in #general"
}
],
"ts": "1469781880.000006"
},
{
"type": "message",
"subtype": "file_share",
"text": "<@U07Q4MHCP|lindy> uploaded a file: <https:\/\/slackexportteam.slack.com\/files\/lindy\/F1WBDJW93\/fb-wow.gif|fb-wow.gif>",
"file": {
"id": "F1WBDJW93",
"created": 1469782076,
"timestamp": 1469782076,
"name": "fb-wow.gif",
"title": "fb-wow.gif",
"mimetype": "image\/gif",
"filetype": "gif",
"pretty_type": "GIF",
"user": "U07Q4MHCP",
"editable": false,
"size": 27235,
"mode": "hosted",
"is_external": false,
"external_type": "",
"is_public": true,
"public_url_shared": false,
"display_as_bot": false,
"username": "",
"url_private": "https:\/\/files.slack.com\/files-pri\/T07Q4MHC7-F1WBDJW93\/fb-wow.gif?t=xoxe-7820731415-83616398485-83620610359-b95751e3ea",
"url_private_download": "https:\/\/files.slack.com\/files-pri\/T07Q4MHC7-F1WBDJW93\/download\/fb-wow.gif?t=xoxe-7820731415-83616398485-83620610359-b95751e3ea",
"thumb_64": "https:\/\/files.slack.com\/files-tmb\/T07Q4MHC7-F1WBDJW93-7031b90b93\/fb-wow_64.png?t=xoxe-7820731415-83616398485-83620610359-b95751e3ea",
"thumb_80": "https:\/\/files.slack.com\/files-tmb\/T07Q4MHC7-F1WBDJW93-7031b90b93\/fb-wow_80.png?t=xoxe-7820731415-83616398485-83620610359-b95751e3ea",
"thumb_360": "https:\/\/files.slack.com\/files-tmb\/T07Q4MHC7-F1WBDJW93-7031b90b93\/fb-wow_360.png?t=xoxe-7820731415-83616398485-83620610359-b95751e3ea",
"thumb_360_w": 59,
"thumb_360_h": 59,
"thumb_160": "https:\/\/files.slack.com\/files-tmb\/T07Q4MHC7-F1WBDJW93-7031b90b93\/fb-wow_160.png?t=xoxe-7820731415-83616398485-83620610359-b95751e3ea",
"image_exif_rotation": 1,
"original_w": 59,
"original_h": 59,
"deanimate_gif": "https:\/\/files.slack.com\/files-tmb\/T07Q4MHC7-F1WBDJW93-7031b90b93\/fb-wow_deanimate_gif.png?t=xoxe-7820731415-83616398485-83620610359-b95751e3ea",
"permalink": "https:\/\/slackexportteam.slack.com\/files\/lindy\/F1WBDJW93\/fb-wow.gif",
"permalink_public": "https:\/\/slack-files.com\/T07Q4MHC7-F1WBDJW93-718081d960",
"channels": [
"C07Q4SBL3"
],
"groups": [
],
"ims": [
],
"comments_count": 0
},
"user": "U07Q4MHCP",
"upload": true,
"display_as_bot": false,
"username": "<@U07Q4MHCP|lindy>",
"bot_id": null,
"ts": "1469782077.000010"
},
{
"type": "message",
"text": "multiple_attachments",
"files": [
{
"id": "FL9GSN60L",
"created": 1562758810,
"timestamp": 1562758810,
"name": "Screenshot from 2019-07-09 17-08-24.png",
"title": "Screenshot from 2019-07-09 17-08-24.png",
"mimetype": "image\/png",
"filetype": "png",
"pretty_type": "PNG",
"user": "UKW2XKH7E",
"editable": false,
"size": 79513,
"mode": "hosted",
"is_external": false,
"external_type": "",
"is_public": true,
"public_url_shared": false,
"display_as_bot": false,
"username": "",
"url_private": "https:\/\/files.slack.com\/files-pri\/TKK4L637U-FL9GSN60L\/screenshot_from_2019-07-09_17-08-24.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"url_private_download": "https:\/\/files.slack.com\/files-pri\/TKK4L637U-FL9GSN60L\/download\/screenshot_from_2019-07-09_17-08-24.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_64": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL9GSN60L-e70b98a77f\/screenshot_from_2019-07-09_17-08-24_64.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_80": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL9GSN60L-e70b98a77f\/screenshot_from_2019-07-09_17-08-24_80.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_360": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL9GSN60L-e70b98a77f\/screenshot_from_2019-07-09_17-08-24_360.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_360_w": 197,
"thumb_360_h": 360,
"thumb_480": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL9GSN60L-e70b98a77f\/screenshot_from_2019-07-09_17-08-24_480.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_480_w": 263,
"thumb_480_h": 480,
"thumb_160": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL9GSN60L-e70b98a77f\/screenshot_from_2019-07-09_17-08-24_160.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_720": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL9GSN60L-e70b98a77f\/screenshot_from_2019-07-09_17-08-24_720.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_720_w": 395,
"thumb_720_h": 720,
"thumb_800": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL9GSN60L-e70b98a77f\/screenshot_from_2019-07-09_17-08-24_800.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_800_w": 439,
"thumb_800_h": 800,
"thumb_960": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL9GSN60L-e70b98a77f\/screenshot_from_2019-07-09_17-08-24_960.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_960_w": 526,
"thumb_960_h": 960,
"thumb_1024": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL9GSN60L-e70b98a77f\/screenshot_from_2019-07-09_17-08-24_1024.png?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_1024_w": 561,
"thumb_1024_h": 1024,
"image_exif_rotation": 1,
"original_w": 632,
"original_h": 1153,
"permalink": "https:\/\/svenstestteam.slack.com\/files\/UKW2XKH7E\/FL9GSN60L\/screenshot_from_2019-07-09_17-08-24.png",
"permalink_public": "https:\/\/slack-files.com\/TKK4L637U-FL9GSN60L-19fdfd655a",
"has_rich_preview": false
},
{
"id": "FL3LBGRT3",
"created": 1562758810,
"timestamp": 1562758810,
"name": "vscode.jpg",
"title": "vscode.jpg",
"mimetype": "image\/jpeg",
"filetype": "jpg",
"pretty_type": "JPEG",
"user": "UKW2XKH7E",
"editable": false,
"size": 549439,
"mode": "hosted",
"is_external": false,
"external_type": "",
"is_public": true,
"public_url_shared": false,
"display_as_bot": false,
"username": "",
"url_private": "https:\/\/files.slack.com\/files-pri\/TKK4L637U-FL3LBGRT3\/vscode.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"url_private_download": "https:\/\/files.slack.com\/files-pri\/TKK4L637U-FL3LBGRT3\/download\/vscode.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_64": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL3LBGRT3-ece28edc37\/vscode_64.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_80": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL3LBGRT3-ece28edc37\/vscode_80.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_360": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL3LBGRT3-ece28edc37\/vscode_360.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_360_w": 360,
"thumb_360_h": 203,
"thumb_480": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL3LBGRT3-ece28edc37\/vscode_480.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_480_w": 480,
"thumb_480_h": 270,
"thumb_160": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL3LBGRT3-ece28edc37\/vscode_160.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_720": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL3LBGRT3-ece28edc37\/vscode_720.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_720_w": 720,
"thumb_720_h": 405,
"thumb_800": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL3LBGRT3-ece28edc37\/vscode_800.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_800_w": 800,
"thumb_800_h": 450,
"thumb_960": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL3LBGRT3-ece28edc37\/vscode_960.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_960_w": 960,
"thumb_960_h": 540,
"thumb_1024": "https:\/\/files.slack.com\/files-tmb\/TKK4L637U-FL3LBGRT3-ece28edc37\/vscode_1024.jpg?t=xoxe-665156207266-683692183393-689571362948-acb8000145d9929cba3d5c38249a6673",
"thumb_1024_w": 1024,
"thumb_1024_h": 576,
"image_exif_rotation": 1,
"original_w": 1920,
"original_h": 1080,
"permalink": "https:\/\/svenstestteam.slack.com\/files\/UKW2XKH7E\/FL3LBGRT3\/vscode.jpg",
"permalink_public": "https:\/\/slack-files.com\/TKK4L637U-FL3LBGRT3-ffd5da7911",
"has_rich_preview": false
}
],
"upload": true,
"user": "UKW2XKH7E",
"ts": "1562758814.000100",
"client_msg_id": "bf2a1192-6b57-4dd3-90f9-8e833fcad758"
}
]

Просмотреть файл

@@ -0,0 +1,25 @@
[
{
"id": "G1T7B1T9N",
"name": "csi-team-chat",
"created": 1468959839,
"creator": "U17G57PB6",
"is_archived": false,
"members": [
"U15CML9C1",
"U1934896U",
"U17G57PB6",
"U1T7A2J56"
],
"topic": {
"value": "\"A constantly evolving landscape of hills\"",
"creator": "U1934896U",
"last_set": "1469017133"
},
"purpose": {
"value": "CSI team chat",
"creator": "U17G57PB6",
"last_set": "1468972624"
}
}
]

363
server/tests/slack-import-test-users.json Обычный файл
Просмотреть файл

@@ -0,0 +1,363 @@
[
{
"id": "U13CLGTKK",
"team_id": "T07Q4MHC7",
"name": "alice",
"deleted": false,
"status": null,
"color": "4bbe2e",
"real_name": "Alice",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"first_name": "Alice",
"last_name": "",
"avatar_hash": "g2280143ab5d",
"real_name": "Alice",
"real_name_normalized": "Alice",
"email": "lindy+1@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/2280143ab5dd760d0a951b74bd06185a.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F0180%2Fimg%2Favatars%2Fava_0021-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/2280143ab5dd760d0a951b74bd06185a.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0021-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/2280143ab5dd760d0a951b74bd06185a.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0021-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/2280143ab5dd760d0a951b74bd06185a.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0021-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/2280143ab5dd760d0a951b74bd06185a.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0021-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/2280143ab5dd760d0a951b74bd06185a.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0021-512.png",
"fields": null
},
"is_admin": true,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U15F73RL4",
"team_id": "T07Q4MHC7",
"name": "brett",
"deleted": false,
"status": null,
"color": "e96699",
"real_name": "Brett",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"first_name": "Brett",
"last_name": "",
"avatar_hash": "g16de52e9c3d",
"real_name": "Brett",
"real_name_normalized": "Brett",
"email": "lindy+13@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/16de52e9c3dd5917b72a327f9b36a7db.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0001-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/16de52e9c3dd5917b72a327f9b36a7db.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0001-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/16de52e9c3dd5917b72a327f9b36a7db.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F0180%2Fimg%2Favatars%2Fava_0001-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/16de52e9c3dd5917b72a327f9b36a7db.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0001-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/16de52e9c3dd5917b72a327f9b36a7db.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0001-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/16de52e9c3dd5917b72a327f9b36a7db.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0001-512.png",
"fields": null
},
"is_admin": false,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U15FUR1QS",
"team_id": "T07Q4MHC7",
"name": "igor",
"deleted": false,
"status": null,
"color": "5b89d5",
"real_name": "Igor",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"first_name": "Igor",
"last_name": "",
"avatar_hash": "gd2d8b6603c7",
"real_name": "Igor",
"real_name_normalized": "Igor",
"email": "lindy+12@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/d2d8b6603c7e7eb443ccc103f50852c5.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/d2d8b6603c7e7eb443ccc103f50852c5.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/d2d8b6603c7e7eb443ccc103f50852c5.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/d2d8b6603c7e7eb443ccc103f50852c5.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/d2d8b6603c7e7eb443ccc103f50852c5.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0019-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/d2d8b6603c7e7eb443ccc103f50852c5.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0019-512.png",
"fields": null
},
"is_admin": false,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U15FHR92R",
"team_id": "T07Q4MHC7",
"name": "karen",
"deleted": false,
"status": null,
"color": "684b6c",
"real_name": "Karen",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"first_name": "Karen",
"last_name": "",
"avatar_hash": "g6fd11d3e252",
"real_name": "Karen",
"real_name_normalized": "Karen",
"email": "lindy+10@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/6fd11d3e252e571d7371c7a5bbeb54ff.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0007-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/6fd11d3e252e571d7371c7a5bbeb54ff.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0007-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/6fd11d3e252e571d7371c7a5bbeb54ff.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0007-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/6fd11d3e252e571d7371c7a5bbeb54ff.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0007-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/6fd11d3e252e571d7371c7a5bbeb54ff.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0007-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/6fd11d3e252e571d7371c7a5bbeb54ff.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0007-512.png",
"fields": null
},
"is_admin": false,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U1THQPEMV",
"team_id": "T07Q4MHC7",
"name": "lindsay",
"deleted": false,
"status": null,
"color": "2b6836",
"real_name": "Lindsay B",
"tz": "America\/New_York",
"tz_label": "Eastern Daylight Time",
"tz_offset": -14400,
"profile": {
"first_name": "Lindsay",
"last_name": "B",
"avatar_hash": "g59bda23e5db",
"real_name": "Lindsay B",
"real_name_normalized": "Lindsay B",
"email": "lindsay@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/59bda23e5dbe5930c3941c7bb90c3e2a.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0000-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/59bda23e5dbe5930c3941c7bb90c3e2a.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0000-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/59bda23e5dbe5930c3941c7bb90c3e2a.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0000-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/59bda23e5dbe5930c3941c7bb90c3e2a.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0000-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/59bda23e5dbe5930c3941c7bb90c3e2a.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0000-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/59bda23e5dbe5930c3941c7bb90c3e2a.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0000-512.png",
"fields": null
},
"is_admin": false,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U07Q4MHCP",
"team_id": "T07Q4MHC7",
"name": "lindy",
"deleted": false,
"status": null,
"color": "9f69e7",
"real_name": "",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"avatar_hash": "g822d051544b",
"real_name": "",
"real_name_normalized": "",
"email": "lindy@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/822d051544b1f50f1e9f015cd2990edc.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0001-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/822d051544b1f50f1e9f015cd2990edc.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0001-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/822d051544b1f50f1e9f015cd2990edc.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F0180%2Fimg%2Favatars%2Fava_0001-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/822d051544b1f50f1e9f015cd2990edc.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0001-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/822d051544b1f50f1e9f015cd2990edc.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0001-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/822d051544b1f50f1e9f015cd2990edc.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0001-512.png",
"fields": null
},
"is_admin": true,
"is_owner": true,
"is_primary_owner": true,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U24CG47QU",
"team_id": "T07Q4MHC7",
"name": "lindy.invite",
"deleted": false,
"status": null,
"color": "99a949",
"real_name": "lindy invite",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"first_name": "lindy",
"last_name": "invite",
"avatar_hash": "g1c46f51413d",
"real_name": "lindy invite",
"real_name_normalized": "lindy invite",
"email": "lindy+invite@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/1c46f51413d2af8048dfaadcf43f5a03.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0015-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/1c46f51413d2af8048dfaadcf43f5a03.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0015-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/1c46f51413d2af8048dfaadcf43f5a03.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0015-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/1c46f51413d2af8048dfaadcf43f5a03.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0015-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/1c46f51413d2af8048dfaadcf43f5a03.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0015-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/1c46f51413d2af8048dfaadcf43f5a03.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0015-512.png",
"fields": null
},
"is_admin": false,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U15FHKEKX",
"team_id": "T07Q4MHC7",
"name": "peter",
"deleted": false,
"status": null,
"color": "e0a729",
"real_name": "Peter",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"first_name": "Peter",
"last_name": "",
"avatar_hash": "g5f5c8dacc18",
"real_name": "Peter",
"real_name_normalized": "Peter",
"email": "lindy+14@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/5f5c8dacc18f616a0dcdec904fdd5cea.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0014-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/5f5c8dacc18f616a0dcdec904fdd5cea.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0014-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/5f5c8dacc18f616a0dcdec904fdd5cea.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0014-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/5f5c8dacc18f616a0dcdec904fdd5cea.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0014-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/5f5c8dacc18f616a0dcdec904fdd5cea.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0014-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/5f5c8dacc18f616a0dcdec904fdd5cea.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0014-512.png",
"fields": null
},
"is_admin": false,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U15F922BY",
"team_id": "T07Q4MHC7",
"name": "sam",
"deleted": false,
"status": null,
"color": "674b1b",
"real_name": "Sam",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"first_name": "Sam",
"last_name": "",
"avatar_hash": "gef41b9b8176",
"real_name": "Sam",
"real_name_normalized": "Sam",
"email": "lindy+11@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/ef41b9b8176fba6eaffdfe04415df8be.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F0180%2Fimg%2Favatars%2Fava_0017-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/ef41b9b8176fba6eaffdfe04415df8be.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0017-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/ef41b9b8176fba6eaffdfe04415df8be.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0017-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/ef41b9b8176fba6eaffdfe04415df8be.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0017-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/ef41b9b8176fba6eaffdfe04415df8be.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0017-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/ef41b9b8176fba6eaffdfe04415df8be.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0017-512.png",
"fields": null
},
"is_admin": false,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U13CSKE2E",
"team_id": "T07Q4MHC7",
"name": "sandy",
"deleted": false,
"status": null,
"color": "3c989f",
"real_name": "Sandy",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"first_name": "Sandy",
"last_name": "",
"avatar_hash": "g7bb3eebada3",
"real_name": "Sandy",
"real_name_normalized": "Sandy",
"email": "lindy+3@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/7bb3eebada3d8ee1251980df86904ec9.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0013-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/7bb3eebada3d8ee1251980df86904ec9.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F0180%2Fimg%2Favatars%2Fava_0013-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/7bb3eebada3d8ee1251980df86904ec9.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0013-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/7bb3eebada3d8ee1251980df86904ec9.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0013-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/7bb3eebada3d8ee1251980df86904ec9.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0013-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/7bb3eebada3d8ee1251980df86904ec9.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0013-512.png",
"fields": null
},
"is_admin": false,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
},
{
"id": "U13C5JZ7W",
"team_id": "T07Q4MHC7",
"name": "ted",
"deleted": false,
"status": null,
"color": "e7392d",
"real_name": "Ted",
"tz": "Africa\/Cairo",
"tz_label": "Eastern European Time",
"tz_offset": 7200,
"profile": {
"first_name": "Ted",
"last_name": "",
"avatar_hash": "g5b31933276f",
"real_name": "Ted",
"real_name_normalized": "Ted",
"email": "lindy+2@example.com",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/5b31933276f699aa8ff55a8fe4a2e7cb.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0022-24.png",
"image_32": "https:\/\/secure.gravatar.com\/avatar\/5b31933276f699aa8ff55a8fe4a2e7cb.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0022-32.png",
"image_48": "https:\/\/secure.gravatar.com\/avatar\/5b31933276f699aa8ff55a8fe4a2e7cb.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0022-48.png",
"image_72": "https:\/\/secure.gravatar.com\/avatar\/5b31933276f699aa8ff55a8fe4a2e7cb.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0022-72.png",
"image_192": "https:\/\/secure.gravatar.com\/avatar\/5b31933276f699aa8ff55a8fe4a2e7cb.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0022-192.png",
"image_512": "https:\/\/secure.gravatar.com\/avatar\/5b31933276f699aa8ff55a8fe4a2e7cb.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F7fa9%2Fimg%2Favatars%2Fava_0022-512.png",
"fields": null
},
"is_admin": true,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false
}
]

148
server/tests/test-attachments.md Обычный файл
Просмотреть файл

@@ -0,0 +1,148 @@
# Testing Files and Attachments
This test contains instructions for the core team to manually test common attachment types. All files for testing are stored in the [mm_file_testing](https://drive.google.com/drive/folders/0B9-SWBTtyOCBRlEyaW1IdkZ4X1k) Drive folder. Follow these instructions:
1. Download the entire [mm_file_testing](https://drive.google.com/drive/folders/0B9-SWBTtyOCBRlEyaW1IdkZ4X1k) folder.
2. Drag and drop each file type into Mattermost to upload it (upload some as multiple attachments on the same post)
3. Post the file attachment
**Notes:**
- All file types should upload and post.
- Read the expected for details on the behavior of the thumbnail and preview window.
- The expected behavior of video and audio formats depends on the operating system, browser and plugins. View the permalinks to the Public Test Channel on Pre-Release Core to see the expected cases.
- If the browser can play the media file, media player controls should appear. If the browser cannot play the file, it should appear as a regular attachment without the media controls.
### Images
**JPG**
`Images/JPG.jpg`
Expected: Scaled thumbnail & preview window
[Permalink](https://pre-release.mattermost.com/core/pl/bgx3wcd9ppdo7fz9zqokofg7sc)
**PNG**
`Images/PNG.png`
Expected: Scaled thumbnail & preview window
[Permalink](https://pre-release.mattermost.com/core/pl/zra4yhm69j8ij81iy5hw7983qe)
**BMP**
`Images/BMP.bmp`
Expected: Scaled thumbnail & preview window
[Permalink](https://pre-release.mattermost.com/core/pl/1hx7x7t1npn4jqyr5rb1qhbj3h)
**GIF**
`Images/GIF.gif`
Expected: Scaled thumbnail & preview window. GIF should auto-play in the preview window.
[Permalink](https://pre-release.mattermost.com/core/pl/j49fowdkstr57g3ed9bgpfoo5w)
**TIFF**
`Images/TIFF.tiff`
Expected: Generic attachment thumbnail & preview window
[Permalink](https://pre-release.mattermost.com/core/pl/6yad4jydaidr3pc3tihp8n8bge)
**PSD**
`Images/PSD.psd`
Expected: Generic attachment thumbnail & preview window
[Permalink](https://pre-release.mattermost.com/core/pl/4kitwk7pi78c9ck4i98f9xnzoe)
### Documents
**PDF Files**
`Documents/PDF.pdf`
Expected: Generic PDF thumbnail. File previewer shows first 5 pages of the PDF.
[Permalink](https://pre-release.mattermost.com/core/pl/o1dg6menetdszrhyxmtoqjfi8h)
**Excel**
`Documents/Excel.xlsx`
Expected: Generic Excel thumbnail & preview window.
[Permalink](https://pre-release.mattermost.com/core/pl/71wwezy3f7drze6ipundscb17y)
**PPT**
`Documents/PPT.pptx`
Expected: Generic Powerpoint thumbnail & preview window.
[Permalink](https://pre-release.mattermost.com/core/pl/mx37h4znwb8f5ffuoajusqhiew)
**Word**
`Documents/Word.docx`
Expected: Generic Word thumbnail & preview window.
[Permalink](https://pre-release.mattermost.com/core/pl/d7s76wp6kjdwfp4hgrwpijsnyy)
**Text**
`Documents/Text.txt`
Expected: Generic code thumbnail & file previewer.
[Permalink](https://pre-release.mattermost.com/core/pl/cpw539wcxtdmzeh5ju71y73o4e)
### Videos
**MP4**
`Videos/MP4.mp4`
Expected: Generic video thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/5dx5qx9t9brqfnhohccxjynx7c)
**AVI**
`Videos/AVI.avi`
Expected: Generic video thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/qwn9eiy7j3rkjyruxhcugpogdw)
**MKV**
`Videos/MKV.mkv`
Expected: Generic video thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/tszyjkr1cidhxjgiusa4mde3ja)
**MOV**
`Videos/MOV.mov`
Expected: Generic video thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/ienzppz5i3f7tbt5jiujn8uuir)
**MPG**
`Videos/MPG.mpg`
Expected: Generic video thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/skggdq1hfpritc6c88bi481p5a)
**Webm**
`Videos/WEBM.webm`
Expected: Generic video thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/7h8tysuxgfgsxeht3sbn7e4h6y)
**WMV**
`Videos/WMV.wmv`
Expected: Generic video thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/kaom7j7uyjra7bzhrre6qwdrbw)
### Audio
**MP3**
`Audio/MP3.mp3`
Expected: Generic audio thumbnail & playable preview window
[Permalink](https://pre-release.mattermost.com/core/pl/if4gn8dbrjgx8fmqmkukzefyme)
**M4A**
`Audio/M4a.m4a`
Expected: Generic audio thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/6c7qsw48ybd88bktgeykodsrrc)
**AAC**
`Audio/AAC.aac`
Expected: Generic audio thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/3naoy5pr5tydbk1m6yo1ast9ny)
**FLAC**
`Audio/FLAC.flac`
Expected: Generic audio thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/kf4cmy44dfya5efmse7rg43eih)
**OGG**
`Audio/OGG.ogg`
Expected: Generic audio thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/dezrcpbxapyexe77rjuzkrp63r)
**WAV**
`Audio/WAV.wav`
Expected: Generic audio thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/pdkxx1udepdnbmi9j8kyas5xbh)
**WMA**
`Audio/WMA.wma`
Expected: Generic audio thumbnail, view Permalink for preview window behavior. Expected depends on the operating system, browser and plugins.
[Permalink](https://pre-release.mattermost.com/core/pl/756wrmdd57dcig3m4emypp6i1h)

391
server/tests/test-config.json Обычный файл
Просмотреть файл

@@ -0,0 +1,391 @@
{
"ServiceSettings": {
"SiteURL": "",
"WebsocketURL": "",
"LicenseFileLocation": "",
"ListenAddress": ":8065",
"ConnectionSecurity": "",
"TLSCertFile": "",
"TLSKeyFile": "",
"UseLetsEncrypt": false,
"LetsEncryptCertificateCacheFile": "./config/letsencrypt.cache",
"Forward80To443": false,
"ReadTimeout": 300,
"WriteTimeout": 300,
"MaximumLoginAttempts": 10,
"GoroutineHealthThreshold": -1,
"GoogleDeveloperKey": "",
"EnableOAuthServiceProvider": false,
"EnableIncomingWebhooks": true,
"EnableOutgoingWebhooks": true,
"EnableCommands": true,
"EnablePostUsernameOverride": false,
"EnablePostIconOverride": false,
"EnableLinkPreviews": false,
"EnablePermalinkPreviews": false,
"EnableTesting": false,
"EnableDeveloper": false,
"EnableSecurityFixAlert": true,
"EnableInsecureOutgoingConnections": false,
"AllowedUntrustedInternalConnections": "",
"EnableMultifactorAuthentication": false,
"EnforceMultifactorAuthentication": false,
"EnableUserAccessTokens": false,
"AllowCorsFrom": "",
"AllowCookiesForSubdomains": false,
"ExtendSessionLengthWithActivity": true,
"SessionLengthWebInDays": 30,
"SessionLengthMobileInDays": 30,
"SessionLengthSSOInDays": -1,
"SessionLengthSSOInHours": 720,
"SessionCacheInMinutes": 10,
"SessionIdleTimeoutInMinutes": 0,
"WebsocketSecurePort": 443,
"WebsocketPort": 80,
"WebserverMode": "gzip",
"EnableCustomEmoji": false,
"EnableEmojiPicker": true,
"PostEditTimeLimit": -1,
"TimeBetweenUserTypingUpdatesMilliseconds": 5000,
"EnablePostSearch": true,
"MinimumHashtagLength": 3,
"EnableUserTypingMessages": true,
"EnableChannelViewedMessages": true,
"EnableUserStatuses": true,
"ExperimentalEnableAuthenticationTransfer": true,
"ClusterLogTimeoutMilliseconds": 2000,
"EnablePreviewFeatures": true,
"EnableTutorial": true,
"EnableOnboardingFlow": true,
"ExperimentalEnableDefaultChannelLeaveJoinMessages": true,
"ExperimentalGroupUnreadChannels": "disabled",
"EnableAPITeamDeletion": false,
"EnableAPITriggerAdminNotifications": false,
"ExperimentalEnableHardenedMode": false
},
"TeamSettings": {
"SiteName": "Mattermost",
"MaxUsersPerTeam": 50,
"EnableUserCreation": true,
"EnableOpenServer": false,
"EnableUserDeactivation": false,
"RestrictCreationToDomains": "",
"EnableCustomBrand": false,
"CustomBrandText": "",
"CustomDescriptionText": "",
"RestrictDirectMessage": "any",
"UserStatusAwayTimeout": 300,
"MaxChannelsPerTeam": 2000,
"MaxNotificationsPerChannel": 1000,
"EnableConfirmNotificationsToChannel": true,
"TeammateNameDisplay": "username",
"ExperimentalEnableAutomaticReplies": false,
"ExperimentalPrimaryTeam": ""
},
"ClientRequirements": {
"AndroidLatestVersion": "",
"AndroidMinVersion": "",
"IosLatestVersion": "",
"IosMinVersion": ""
},
"SqlSettings": {
"DriverName": "mysql",
"DataSource": "mmuser:mostest@tcp(localhost:3306)/mattermost_test?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s",
"DataSourceReplicas": [],
"DataSourceSearchReplicas": [],
"MaxIdleConns": 20,
"MaxOpenConns": 300,
"Trace": false,
"AtRestEncryptKey": "jdh9iergmse3w9mt53snasugmmi9r6it",
"QueryTimeout": 30
},
"LogSettings": {
"EnableConsole": true,
"ConsoleLevel": "DEBUG",
"ConsoleJson": true,
"EnableFile": true,
"FileLevel": "INFO",
"FileJson": true,
"FileLocation": "",
"EnableWebhookDebugging": true,
"EnableDiagnostics": true
},
"PasswordSettings": {
"MinimumLength": 5,
"Lowercase": false,
"Number": false,
"Uppercase": false,
"Symbol": false
},
"FileSettings": {
"EnableFileAttachments": true,
"EnableMobileUpload": true,
"EnableMobileDownload": true,
"MaxFileSize": 52428800,
"MaxImageResolution": 33177600,
"DriverName": "local",
"Directory": "./data/",
"EnablePublicLink": false,
"PublicLinkSalt": "3xh7ztscuezjp1jkdjybtejrtw59xjt1",
"InitialFont": "luximbi.ttf",
"AmazonS3AccessKeyId": "",
"AmazonS3SecretAccessKey": "",
"AmazonS3Bucket": "",
"AmazonS3Region": "",
"AmazonS3Endpoint": "s3.amazonaws.com",
"AmazonS3SSL": true,
"AmazonS3SignV2": false,
"AmazonS3SSE": false,
"AmazonS3Trace": false
},
"EmailSettings": {
"EnableSignUpWithEmail": true,
"EnableSignInWithEmail": true,
"EnableSignInWithUsername": true,
"SendEmailNotifications": true,
"UseChannelInEmailNotifications": false,
"RequireEmailVerification": false,
"FeedbackName": "",
"FeedbackEmail": "test@example.com",
"ReplyToAddress": "test@example.com",
"FeedbackOrganization": "",
"EnableSMTPAuth": false,
"SMTPUsername": "",
"SMTPPassword": "",
"SMTPServer": "localhost",
"SMTPPort": "2500",
"ConnectionSecurity": "",
"SendPushNotifications": false,
"PushNotificationServer": "",
"PushNotificationContents": "generic",
"EnableEmailBatching": false,
"EmailBatchingBufferSize": 256,
"EmailBatchingInterval": 30,
"EnablePreviewModeBanner": true,
"SkipServerCertificateVerification": false,
"EmailNotificationContentsType": "full",
"LoginButtonColor": "",
"LoginButtonBorderColor": "",
"LoginButtonTextColor": "",
"EnableInactivityEmail": true
},
"RateLimitSettings": {
"Enable": false,
"PerSec": 10,
"MaxBurst": 100,
"MemoryStoreSize": 10000,
"VaryByRemoteAddr": true,
"VaryByUser": false,
"VaryByHeader": ""
},
"PrivacySettings": {
"ShowEmailAddress": true,
"ShowFullName": true
},
"SupportSettings": {
"TermsOfServiceLink": "https://mattermost.com/terms-of-use/",
"PrivacyPolicyLink": "https://mattermost.com/privacy-policy/",
"AboutLink": "https://mattermost.com/default-about/",
"HelpLink": "https://mattermost.com/default-help/",
"ReportAProblemLink": "https://mattermost.com/default-report-a-problem/",
"SupportEmail": "feedback@mattermost.com"
},
"AnnouncementSettings": {
"EnableBanner": false,
"BannerText": "",
"BannerColor": "#f2a93b",
"BannerTextColor": "#333333",
"AllowBannerDismissal": true
},
"ThemeSettings": {
"EnableThemeSelection": true,
"DefaultTheme": "default",
"AllowCustomThemes": true,
"AllowedThemes": []
},
"GitLabSettings": {
"Enable": false,
"Secret": "",
"Id": "",
"Scope": "",
"AuthEndpoint": "",
"TokenEndpoint": "",
"UserApiEndpoint": ""
},
"GoogleSettings": {
"Enable": false,
"Secret": "",
"Id": "",
"Scope": "profile email",
"AuthEndpoint": "https://accounts.google.com/o/oauth2/v2/auth",
"TokenEndpoint": "https://www.googleapis.com/oauth2/v4/token",
"UserApiEndpoint": "https://people.googleapis.com/v1/people/me?personFields=names,emailAddresses,nicknames,metadata"
},
"Office365Settings": {
"Enable": false,
"Secret": "",
"Id": "",
"Scope": "User.Read",
"AuthEndpoint": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize",
"TokenEndpoint": "https://login.microsoftonline.com/common/oauth2/v2.0/token",
"UserApiEndpoint": "https://graph.microsoft.com/v1.0/me",
"DirectoryId": ""
},
"LdapSettings": {
"Enable": false,
"EnableSync": false,
"LdapServer": "",
"LdapPort": 389,
"ConnectionSecurity": "",
"BaseDN": "",
"BindUsername": "",
"BindPassword": "",
"UserFilter": "",
"FirstNameAttribute": "",
"LastNameAttribute": "",
"EmailAttribute": "",
"UsernameAttribute": "",
"NicknameAttribute": "",
"IdAttribute": "",
"PositionAttribute": "",
"LoginIdAttribute": "",
"SyncIntervalMinutes": 60,
"SkipCertificateVerification": false,
"QueryTimeout": 60,
"MaxPageSize": 0,
"LoginFieldName": "",
"LoginButtonColor": "",
"LoginButtonBorderColor": "",
"LoginButtonTextColor": ""
},
"ComplianceSettings": {
"Enable": false,
"Directory": "./data/",
"EnableDaily": false
},
"LocalizationSettings": {
"DefaultServerLocale": "en",
"DefaultClientLocale": "en",
"AvailableLocales": ""
},
"SamlSettings": {
"Enable": false,
"EnableSyncWithLdap": false,
"Verify": true,
"Encrypt": true,
"IdpUrl": "",
"IdpDescriptorUrl": "",
"IdpMetadataUrl": "",
"AssertionConsumerServiceURL": "",
"ScopingIDPProviderId": "",
"ScopingIDPName": "",
"IdpCertificateFile": "",
"PublicCertificateFile": "",
"PrivateKeyFile": "",
"FirstNameAttribute": "",
"LastNameAttribute": "",
"EmailAttribute": "",
"UsernameAttribute": "",
"NicknameAttribute": "",
"LocaleAttribute": "",
"PositionAttribute": "",
"LoginButtonText": "With SAML",
"LoginButtonColor": "",
"LoginButtonBorderColor": "",
"LoginButtonTextColor": ""
},
"NativeAppSettings": {
"AppDownloadLink": "https://mattermost.com/download/",
"AndroidAppDownloadLink": "https://mattermost.com/mattermost-android-app/",
"IosAppDownloadLink": "https://mattermost.com/mattermost-ios-app/"
},
"ClusterSettings": {
"Enable": false,
"ClusterName": "",
"OverrideHostname": "",
"UseIPAddress": true,
"UseExperimentalGossip": true,
"ReadOnlyConfig": true,
"GossipPort": 8074,
"StreamingPort": 8075,
"MaxIdleConns": 100,
"MaxIdleConnsPerHost": 128,
"IdleConnTimeoutMilliseconds": 90000
},
"MetricsSettings": {
"Enable": false,
"BlockProfileRate": 0,
"ListenAddress": ":8067"
},
"ExperimentalSettings": {
"ClientSideCertEnable": false,
"ClientSideCertCheck": "secondary"
},
"AnalyticsSettings": {
"MaxUsersForStatistics": 2500
},
"ElasticsearchSettings": {
"ConnectionUrl": "http://localhost:9200",
"Username": "elastic",
"Password": "changeme",
"EnableIndexing": false,
"EnableSearching": false,
"EnableAutocomplete": false,
"Sniff": true,
"PostIndexReplicas": 1,
"PostIndexShards": 1,
"ChannelIndexReplicas": 1,
"ChannelIndexShards": 1,
"UserIndexReplicas": 1,
"UserIndexShards": 1,
"AggregatePostsAfterDays": 365,
"PostsAggregatorJobStartTime": "03:00",
"IndexPrefix": "",
"LiveIndexingBatchSize": 1,
"BatchSize": 10000,
"RequestTimeoutSeconds": 30
},
"DataRetentionSettings": {
"EnableMessageDeletion": false,
"EnableFileDeletion": false,
"MessageRetentionDays": 365,
"FileRetentionDays": 365,
"DeletionJobStartTime": "02:00"
},
"MessageExportSettings": {
"EnableExport": false,
"ExportFormat": "actiance",
"DailyRunTime": "01:00",
"ExportFromTimestamp": 0,
"BatchSize": 10000,
"GlobalRelaySettings": {
"CustomerType": "A9",
"SMTPUsername": "",
"SMTPPassword": "",
"EmailAddress": ""
}
},
"JobSettings": {
"RunJobs": true,
"RunScheduler": true
},
"PluginSettings": {
"Enable": true,
"EnableUploads": true,
"Directory": "./test-plugins",
"ClientDirectory": "./test-client-plugins",
"Plugins": {},
"PluginStates": {
"jira": {
"Enable": true
},
"testplugin": {
"Enable": false
}
}
},
"DisplaySettings": {
"CustomUrlSchemes": [],
"ExperimentalTimezone": false
}
}

Двоичные данные
server/tests/test-data-graph.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 38 KiB

234
server/tests/test-data.ldif Обычный файл
Просмотреть файл

@@ -0,0 +1,234 @@
dn: ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: organizationalunit
# generic test users
dn: uid=test.one,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Test1
mail: success+testone@simulator.amazonses.com
userPassword: Password1
dn: uid=test.two,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Test2
mail: success+testtwo@simulator.amazonses.com
userPassword: Password1
dn: uid=test.three,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Test3
mail: success+testthree@simulator.amazonses.com
userPassword: Password1
dn: uid=test.four,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Test4
mail: success+testfour@simulator.amazonses.com
userPassword: Password1
dn: uid=test.five,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Test5
mail: success+testfive@simulator.amazonses.com
userPassword: Password1
# developers
dn: uid=dev-ops.one,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Dev3
mail: success+devopsone@simulator.amazonses.com
userPassword: Password1
dn: uid=dev.one,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Dev1
mail: success+devone@simulator.amazonses.com
userPassword: Password1
dn: uid=dev.two,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Dev2
mail: success+devtwo@simulator.amazonses.com
userPassword: Password1
dn: uid=dev.three,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Dev3
mail: success+devthree@simulator.amazonses.com
userPassword: Password1
dn: uid=dev.four,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Dev4
mail: success+devfour@simulator.amazonses.com
userPassword: Password1
# executive
dn: uid=exec.one,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Exec1
mail: success+execone@simulator.amazonses.com
userPassword: Password1
dn: uid=exec.two,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Exec2
mail: success+exectwo@simulator.amazonses.com
userPassword: Password1
# board of directors
dn: uid=board.one,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Board1
mail: success+boardone@simulator.amazonses.com
userPassword: Password1
dn: uid=board.two,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Board2
mail: success+boardtwo@simulator.amazonses.com
userPassword: Password1
dn: uid=board.three,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: Board3
mail: success+boardthree@simulator.amazonses.com
userPassword: Password1
dn: uid=firstloginuser.one,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: FirstLogin1
mail: success+firstloginuser.one@simulator.amazonses.com
userPassword: Password1
dn: uid=firstloginuser.two,ou=testusers,dc=mm,dc=test,dc=com
changetype: add
objectclass: iNetOrgPerson
sn: User
cn: FirstLogin2
mail: success+firstloginuser.two@simulator.amazonses.com
userPassword: Password1
dn: ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: organizationalunit
# groupOfNames
dn: cn=outsiders,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: uid=board.three,ou=testusers,dc=mm,dc=test,dc=com
dn: cn=board,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: uid=board.one,ou=testusers,dc=mm,dc=test,dc=com
member: uid=board.two,ou=testusers,dc=mm,dc=test,dc=com
member: cn=outsiders,ou=testgroups,dc=mm,dc=test,dc=com
dn: cn=executive,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: uid=exec.one,ou=testusers,dc=mm,dc=test,dc=com
member: uid=exec.two,ou=testusers,dc=mm,dc=test,dc=com
member: cn=board,ou=testgroups,dc=mm,dc=test,dc=com
dn: cn=tgroup-84,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: cn=tgroup-9,ou=testgroups,dc=mm,dc=test,dc=com
member: uid=test.five,ou=testusers,dc=mm,dc=test,dc=com
dn: cn=tgroup-9,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: cn=tgroup-97,ou=testgroups,dc=mm,dc=test,dc=com
dn: cn=tgroup-97,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfNames
member: uid=test.four,ou=testusers,dc=mm,dc=test,dc=com
# groupOfUniqueNames
dn: cn=tgroup,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfUniqueNames
uniqueMember: uid=test.one,ou=testusers,dc=mm,dc=test,dc=com
dn: cn=ugroup,cn=tgroup,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfUniqueNames
uniqueMember: uid=test.two,ou=testusers,dc=mm,dc=test,dc=com
dn: cn=vgroup,cn=tgroup,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfUniqueNames
uniqueMember: uid=test.three,ou=testusers,dc=mm,dc=test,dc=com
# Adds a group with a cycle
dn: cn=team-one-a,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfUniqueNames
uniqueMember: uid=dev.four,ou=testusers,dc=mm,dc=test,dc=com
uniqueMember: cn=developers,ou=testgroups,dc=mm,dc=test,dc=com
dn: cn=team-one,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfUniqueNames
uniqueMember: uid=dev.one,ou=testusers,dc=mm,dc=test,dc=com
uniqueMember: uid=dev.three,ou=testusers,dc=mm,dc=test,dc=com
uniqueMember: cn=team-one-a,ou=testgroups,dc=mm,dc=test,dc=com
dn: cn=team-two,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfUniqueNames
uniqueMember: uid=dev.two,ou=testusers,dc=mm,dc=test,dc=com
dn: cn=developers,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfUniqueNames
uniqueMember: uid=dev-ops.one,ou=testusers,dc=mm,dc=test,dc=com
uniqueMember: cn=team-one,ou=testgroups,dc=mm,dc=test,dc=com
uniqueMember: cn=team-two,ou=testgroups,dc=mm,dc=test,dc=com
dn: cn=firstlogingroup,ou=testgroups,dc=mm,dc=test,dc=com
changetype: add
objectclass: groupOfUniqueNames
uniqueMember: uid=firstloginuser.one,ou=testusers,dc=mm,dc=test,dc=com
uniqueMember: uid=firstloginuser.two,ou=testusers,dc=mm,dc=test,dc=com

12
server/tests/test-emoticons1.md Обычный файл
Просмотреть файл

@@ -0,0 +1,12 @@
# Emoji Testing
Verify that all emoji and emoticons render.
:mattermost:
### Emoticons - Punctuation
:) :-) ;) ;-) :o :O :-o :-O :] :-] :d :-D x-d x-D :p :-P :( :-( :'( :/ :-/ :s :-s :| :-| :$ :-$ :-x <3 :+1: :-1:
### Emoji - People (continued in test-emoticons2.md)
:grinning: :smiley: :smile: :grin: :laughing: :satisfied: :sweat_smile: :joy: :rofl: :relaxed: :blush: :innocent: :slightly_smiling_face: :upside_down_face: :wink: :relieved: :heart_eyes: :kissing_heart: :kissing: :kissing_smiling_eyes: :kissing_closed_eyes: :yum: :stuck_out_tongue_winking_eye: :stuck_out_tongue_closed_eyes: :stuck_out_tongue: :money_mouth_face: :hugs: :nerd_face: :sunglasses: :clown_face: :cowboy_hat_face: :smirk: :unamused: :disappointed: :pensive: :worried: :confused: :slightly_frowning_face: :frowning_face: :imp: :japanese_ogre: :japanese_goblin: :hankey: :poop: :shit: :ghost: :skull: :skull_and_crossbones: :alien: :space_invader: :robot: :jack_o_lantern: :smiley_cat: :smile_cat: :joy_cat: :heart_eyes_cat: :smirk_cat: :kissing_cat: :scream_cat: :crying_cat_face: :pouting_cat: :open_hands: :raised_hands: :clap: :pray: :handshake: :+1: :thumbsup: :-1: :thumbsdown: :fist_oncoming: :facepunch: :punch: :fist_raised: :fist: :fist_left: :fist_right: :crossed_fingers: :v: :persevere: :confounded: :tired_face: :weary: :triumph: :angry: :rage: :pout: :no_mouth: :neutral_face: :expressionless: :hushed: :frowning: :anguished: :open_mouth: :astonished: :dizzy_face: :flushed: :scream: :fearful: :cold_sweat: :cry: :disappointed_relieved: :drooling_face: :sob: :sweat: :sleepy: :sleeping: :roll_eyes: :thinking: :lying_face: :grimacing: :zipper_mouth_face: :nauseated_face: :sneezing_face: :mask: :face_with_thermometer: :face_with_head_bandage: :smiling_imp: :metal: :ok_hand: :point_left: :point_right: :point_up_2: :point_down: :point_up: :hand: :raised_hand: :raised_back_of_hand: :raised_hand_with_fingers_splayed: :vulcan_salute: :wave: :call_me_hand: :muscle: :middle_finger: :fu: :writing_hand: :selfie: :nail_care: :ring: :lipstick: :kiss: :lips: :tongue: :ear: :nose: :footprints: :eye: :eyes: :speaking_head: :bust_in_silhouette: :busts_in_silhouette: :baby: :boy: :girl: :man: :woman: :blonde_woman: :blonde_man: :person_with_blond_hair: :older_man: :older_woman: :man_with_gua_pi_mao: :woman_with_turban: :man_with_turban: :policewoman: :policeman: :cop: :construction_worker_woman: :construction_worker_man: :construction_worker: :guardswoman: :guardsman: :female_detective: :male_detective: :detective: :woman_health_worker: :man_health_worker: :woman_farmer: :man_farmer: :woman_cook: :man_cook: :woman_student: :man_student: :woman_singer: :man_singer: :woman_teacher: :man_teacher: :woman_factory_worker: :man_factory_worker: :woman_technologist: :man_technologist: :woman_office_worker: :man_office_worker: :woman_mechanic: :man_mechanic: :woman_scientist: :man_scientist: :woman_artist: :man_artist: :woman_firefighter: :man_firefighter: :woman_pilot: :man_pilot: :woman_astronaut: :man_astronaut: :woman_judge: :man_judge: :mrs_claus: :santa: :princess: :prince: :bride_with_veil: :man_in_tuxedo: :angel: :pregnant_woman: :bowing_woman: :bowing_man: :bow: :tipping_hand_woman: :information_desk_person: :tipping_hand_man: :no_good_woman: :no_good: :ng_woman: :no_good_man: :ng_man: :ok_woman: :ok_man: :raising_hand_woman: :raising_hand: :raising_hand_man: :woman_facepalming: :man_facepalming: :woman_shrugging: :man_shrugging: :pouting_woman: :person_with_pouting_face: :pouting_man: :frowning_woman: :person_frowning: :frowning_man: :haircut_woman: :haircut: :haircut_man: :massage_woman: :massage: :massage_man: :business_suit_levitating: :dancer: :man_dancing: :dancing_women: :dancing_men: :walking_woman: :walking_man: :walking: :running_woman: :running_man: :runner: :running: :couple: :two_women_holding_hands: :two_men_holding_hands: :couple_with_heart_woman_man: :couple_with_heart: :couple_with_heart_woman_woman: :couple_with_heart_man_man:

7
server/tests/test-emoticons2.md Обычный файл
Просмотреть файл

@@ -0,0 +1,7 @@
### Emoji - People (continued from test-emoticons1.md)
:couplekiss_man_woman: :couplekiss_woman_woman: :couplekiss_man_man: :family_man_woman_boy: :family: :family_man_woman_girl: :family_man_woman_girl_boy: :family_man_woman_boy_boy: :family_man_woman_girl_girl: :family_woman_woman_boy: :family_woman_woman_girl: :family_woman_woman_girl_boy: :family_woman_woman_boy_boy: :family_woman_woman_girl_girl: :family_man_man_boy: :family_man_man_girl: :family_man_man_girl_boy: :family_man_man_boy_boy: :family_man_man_girl_girl: :family_woman_boy: :family_woman_girl: :family_woman_girl_boy: :family_woman_boy_boy: :family_woman_girl_girl: :family_man_boy: :family_man_girl: :family_man_girl_boy: :family_man_boy_boy: :family_man_girl_girl: :womans_clothes: :shirt: :tshirt: :jeans: :necktie: :dress: :bikini: :kimono: :high_heel: :sandal: :boot: :mans_shoe: :shoe: :athletic_shoe: :womans_hat: :tophat: :mortar_board: :crown: :rescue_worker_helmet: :school_satchel: :pouch: :purse: :handbag: :briefcase: :eyeglasses: :dark_sunglasses: :closed_umbrella: :open_umbrella:
### Emoji - Food
:green_apple: :apple: :pear: :tangerine: :orange: :mandarin: :lemon: :banana: :watermelon: :grapes: :strawberry: :melon: :cherries: :peach: :pineapple: :kiwi_fruit: :avocado: :tomato: :eggplant: :cucumber: :carrot: :corn: :hot_pepper: :potato: :sweet_potato: :chestnut: :peanuts: :honey_pot: :croissant: :bread: :baguette_bread: :cheese: :egg: :fried_egg: :bacon: :pancakes: :fried_shrimp: :poultry_leg: :meat_on_bone: :pizza: :hotdog: :hamburger: :fries: :stuffed_flatbread: :taco: :burrito: :green_salad: :shallow_pan_of_food: :spaghetti: :ramen: :stew: :fish_cake: :sushi: :bento: :curry: :rice: :rice_ball: :rice_cracker: :oden: :dango: :shaved_ice: :ice_cream: :icecream: :cake: :birthday: :custard: :lollipop: :candy: :chocolate_bar: :popcorn: :doughnut: :cookie: :milk_glass: :baby_bottle: :coffee: :tea: :sake: :beer: :beers: :clinking_glasses: :wine_glass: :tumbler_glass: :cocktail: :tropical_drink: :champagne: :spoon: :fork_and_knife: :plate_with_cutlery:

7
server/tests/test-emoticons3.md Обычный файл
Просмотреть файл

@@ -0,0 +1,7 @@
### Emoji - Nature
:dog: :cat: :mouse: :hamster: :rabbit: :fox_face: :bear: :panda_face: :koala: :tiger: :lion: :cow: :pig: :pig_nose: :frog: :monkey_face: :see_no_evil: :hear_no_evil: :speak_no_evil: :monkey: :chicken: :penguin: :bird: :baby_chick: :hatching_chick: :hatched_chick: :duck: :eagle: :owl: :bat: :wolf: :boar: :horse: :unicorn: :bee: :honeybee: :bug: :butterfly: :snail: :shell: :beetle: :ant: :spider: :spider_web: :turtle: :snake: :lizard: :scorpion: :crab: :squid: :octopus: :shrimp: :tropical_fish: :fish: :blowfish: :dolphin: :flipper: :shark: :whale: :whale2: :crocodile: :leopard: :tiger2: :water_buffalo: :ox: :cow2: :deer: :dromedary_camel: :camel: :elephant: :rhinoceros: :gorilla: :racehorse: :pig2: :goat: :ram: :sheep: :dog2: :poodle: :cat2: :rooster: :turkey: :dove: :rabbit2: :mouse2: :rat: :chipmunk: :feet: :paw_prints: :dragon: :dragon_face: :cactus: :christmas_tree: :evergreen_tree: :deciduous_tree: :palm_tree: :seedling: :herb: :shamrock: :four_leaf_clover: :bamboo: :tanabata_tree: :leaves: :fallen_leaf: :maple_leaf: :mushroom: :ear_of_rice: :bouquet: :tulip: :rose: :wilted_flower: :sunflower: :blossom: :cherry_blossom: :hibiscus: :earth_americas: :earth_africa: :earth_asia: :full_moon: :waning_gibbous_moon: :last_quarter_moon: :waning_crescent_moon: :new_moon: :waxing_crescent_moon: :first_quarter_moon: :moon: :waxing_gibbous_moon: :new_moon_with_face: :full_moon_with_face: :sun_with_face: :first_quarter_moon_with_face: :last_quarter_moon_with_face: :crescent_moon: :dizzy: :star: :star2: :sparkles: :zap: :fire: :boom: :collision: :comet: :sunny: :sun_behind_small_cloud: :partly_sunny: :sun_behind_large_cloud: :sun_behind_rain_cloud: :rainbow: :cloud: :cloud_with_rain: :cloud_with_lightning_and_rain: :cloud_with_lightning: :cloud_with_snow: :snowman_with_snow: :snowman: :snowflake: :wind_face: :dash: :tornado: :fog: :ocean: :droplet: :sweat_drops: :umbrella:
### Emoji - Activity
:soccer: :basketball: :football: :baseball: :tennis: :volleyball: :rugby_football: :8ball: :ping_pong: :badminton: :goal_net: :ice_hockey: :field_hockey: :cricket: :golf: :bow_and_arrow: :fishing_pole_and_fish: :boxing_glove: :martial_arts_uniform: :ice_skate: :ski: :skier: :snowboarder: :weight_lifting_woman: :weight_lifting_man: :person_fencing: :women_wrestling: :men_wrestling: :woman_cartwheeling: :man_cartwheeling: :basketball_woman: :basketball_man: :woman_playing_handball: :man_playing_handball: :golfing_woman: :golfing_man: :surfing_woman: :surfing_man: :surfer: :swimming_woman: :swimming_man: :swimmer: :woman_playing_water_polo: :man_playing_water_polo: :rowing_woman: :rowing_man: :rowboat: :horse_racing: :biking_woman: :biking_man: :bicyclist: :mountain_biking_woman: :mountain_biking_man: :mountain_bicyclist: :running_shirt_with_sash: :medal_sports: :medal_military: :1st_place_medal: :2nd_place_medal: :3rd_place_medal: :trophy: :rosette: :reminder_ribbon: :ticket: :tickets: :circus_tent: :woman_juggling: :man_juggling: :performing_arts: :art: :clapper: :microphone: :headphones: :musical_score: :musical_keyboard: :drum: :saxophone: :trumpet: :guitar: :violin: :game_die: :dart: :bowling: :video_game: :slot_machine:

7
server/tests/test-emoticons4.md Обычный файл
Просмотреть файл

@@ -0,0 +1,7 @@
### Emoji - Travel
:car: :red_car: :taxi: :blue_car: :bus: :trolleybus: :racing_car: :police_car: :ambulance: :fire_engine: :minibus: :truck: :articulated_lorry: :tractor: :kick_scooter: :bike: :motor_scooter: :motorcycle: :rotating_light: :oncoming_police_car: :oncoming_bus: :oncoming_automobile: :oncoming_taxi: :aerial_tramway: :mountain_cableway: :suspension_railway: :railway_car: :train: :mountain_railway: :monorail: :bullettrain_side: :bullettrain_front: :light_rail: :steam_locomotive: :train2: :metro: :tram: :station: :helicopter: :small_airplane: :airplane: :flight_departure: :flight_arrival: :rocket: :artificial_satellite: :seat: :canoe: :boat: :sailboat: :motor_boat: :speedboat: :passenger_ship: :ferry: :ship: :anchor: :construction: :fuelpump: :busstop: :vertical_traffic_light: :traffic_light: :world_map: :moyai: :statue_of_liberty: :fountain: :tokyo_tower: :european_castle: :japanese_castle: :stadium: :ferris_wheel: :roller_coaster: :carousel_horse: :parasol_on_ground: :beach_umbrella: :desert_island: :mountain: :mountain_snow: :mount_fuji: :volcano: :desert: :camping: :tent: :railway_track: :motorway: :building_construction: :factory: :house: :house_with_garden: :houses: :derelict_house: :office: :department_store: :post_office: :european_post_office: :hospital: :bank: :hotel: :convenience_store: :school: :love_hotel: :wedding: :classical_building: :church: :mosque: :synagogue: :kaaba: :shinto_shrine: :japan: :rice_scene: :national_park: :sunrise: :sunrise_over_mountains: :stars: :sparkler: :fireworks: :city_sunrise: :city_sunset: :cityscape: :night_with_stars: :milky_way: :bridge_at_night: :foggy:
### Emoji - Objects
:watch: :iphone: :calling: :computer: :keyboard: :desktop_computer: :printer: :computer_mouse: :trackball: :joystick: :clamp: :minidisc: :floppy_disk: :cd: :dvd: :vhs: :camera: :camera_flash: :video_camera: :movie_camera: :film_projector: :film_strip: :telephone_receiver: :phone: :telephone: :pager: :fax: :tv: :radio: :studio_microphone: :level_slider: :control_knobs: :stopwatch: :timer_clock: :alarm_clock: :mantelpiece_clock: :hourglass: :hourglass_flowing_sand: :satellite: :battery: :electric_plug: :bulb: :flashlight: :candle: :wastebasket: :oil_drum: :money_with_wings: :dollar: :yen: :euro: :pound: :moneybag: :credit_card: :gem: :balance_scale: :wrench: :hammer: :hammer_and_pick: :hammer_and_wrench: :pick: :nut_and_bolt: :gear: :chains: :gun: :bomb: :hocho: :knife: :dagger: :crossed_swords: :shield: :smoking: :coffin: :funeral_urn: :amphora: :crystal_ball: :prayer_beads: :barber: :alembic: :telescope: :microscope: :hole: :pill: :syringe: :thermometer: :toilet: :potable_water: :shower: :bathtub: :bath: :bellhop_bell: :key: :old_key: :door: :couch_and_lamp: :bed: :sleeping_bed: :framed_picture: :shopping: :shopping_cart: :gift: :balloon: :flags: :ribbon: :confetti_ball: :tada: :dolls: :izakaya_lantern: :lantern: :wind_chime: :email: :envelope: :envelope_with_arrow: :incoming_envelope: :e-mail: :love_letter: :inbox_tray: :outbox_tray: :package: :label: :mailbox_closed: :mailbox: :mailbox_with_mail: :mailbox_with_no_mail: :postbox: :postal_horn: :scroll: :page_with_curl: :page_facing_up: :bookmark_tabs: :bar_chart: :chart_with_upwards_trend: :chart_with_downwards_trend: :spiral_notepad: :spiral_calendar: :calendar: :date: :card_index: :card_file_box: :ballot_box: :file_cabinet: :clipboard: :file_folder: :open_file_folder: :card_index_dividers: :newspaper_roll: :newspaper: :notebook: :notebook_with_decorative_cover: :ledger: :closed_book: :green_book: :blue_book: :orange_book: :books: :book: :open_book: :bookmark: :link: :paperclip: :paperclips: :triangular_ruler: :straight_ruler: :pushpin: :round_pushpin: :scissors: :pen: :fountain_pen: :black_nib: :paintbrush: :crayon: :memo: :pencil2: :mag: :mag_right: :lock_with_ink_pen: :closed_lock_with_key: :lock: :unlock:

3
server/tests/test-emoticons5.md Обычный файл
Просмотреть файл

@@ -0,0 +1,3 @@
### Emoji - Symbols
:heart: :yellow_heart: :green_heart: :blue_heart: :purple_heart: :black_heart: :broken_heart: :heavy_heart_exclamation: :two_hearts: :revolving_hearts: :heartbeat: :heartpulse: :sparkling_heart: :cupid: :gift_heart: :heart_decoration: :peace_symbol: :latin_cross: :star_and_crescent: :om: :wheel_of_dharma: :star_of_david: :six_pointed_star: :menorah: :yin_yang: :orthodox_cross: :place_of_worship: :ophiuchus: :aries: :taurus: :gemini: :cancer: :leo: :virgo: :libra: :scorpius: :sagittarius: :capricorn: :aquarius: :pisces: :id: :atom_symbol: :accept: :radioactive: :biohazard: :mobile_phone_off: :vibration_mode: :u6709: :u7121: :u7533: :u55b6: :u6708: :eight_pointed_black_star: :vs: :white_flower: :ideograph_advantage: :secret: :congratulations: :u5408: :u6e80: :u5272: :u7981: :a: :b: :ab: :cl: :o2: :sos: :x: :o: :stop_sign: :no_entry: :name_badge: :no_entry_sign: :100: :anger: :hotsprings: :no_pedestrians: :do_not_litter: :no_bicycles: :non-potable_water: :underage: :no_mobile_phones: :no_smoking: :exclamation: :heavy_exclamation_mark: :grey_exclamation: :question: :grey_question: :bangbang: :interrobang: :low_brightness: :high_brightness: :part_alternation_mark: :warning: :children_crossing: :trident: :fleur_de_lis: :beginner: :recycle: :white_check_mark: :u6307: :chart: :sparkle: :eight_spoked_asterisk: :negative_squared_cross_mark: :globe_with_meridians: :diamond_shape_with_a_dot_inside: :m: :cyclone: :zzz: :atm: :wc: :wheelchair: :parking: :u7a7a: :sa: :passport_control: :customs: :baggage_claim: :left_luggage: :mens: :womens: :baby_symbol: :restroom: :put_litter_in_its_place: :cinema: :signal_strength: :koko: :symbols: :information_source: :abc: :abcd: :capital_abcd: :ng: :ok: :up: :cool: :new: :free: :zero: :one: :two: :three: :four: :five: :six: :seven: :eight: :nine: :keycap_ten: :1234: :hash: :asterisk: :arrow_forward: :pause_button: :play_or_pause_button: :stop_button: :record_button: :next_track_button: :previous_track_button: :fast_forward: :rewind: :arrow_double_up: :arrow_double_down: :arrow_backward: :arrow_up_small: :arrow_down_small: :arrow_right: :arrow_left: :arrow_up: :arrow_down: :arrow_upper_right: :arrow_lower_right: :arrow_lower_left: :arrow_upper_left: :arrow_up_down: :left_right_arrow: :arrow_right_hook: :leftwards_arrow_with_hook: :arrow_heading_up: :arrow_heading_down: :twisted_rightwards_arrows: :repeat: :repeat_one: :arrows_counterclockwise: :arrows_clockwise: :musical_note: :notes: :heavy_plus_sign: :heavy_minus_sign: :heavy_division_sign: :heavy_multiplication_x: :heavy_dollar_sign: :currency_exchange: :tm: :copyright: :registered: :wavy_dash: :curly_loop: :loop: :end: :back: :on: :top: :soon: :heavy_check_mark: :ballot_box_with_check: :radio_button: :white_circle: :black_circle: :red_circle: :large_blue_circle: :small_red_triangle: :small_red_triangle_down: :small_orange_diamond: :small_blue_diamond: :large_orange_diamond: :large_blue_diamond: :white_square_button: :black_square_button: :black_small_square: :white_small_square: :black_medium_small_square: :white_medium_small_square: :black_medium_square: :white_medium_square: :black_large_square: :white_large_square: :speaker: :mute: :sound: :loud_sound: :bell: :no_bell: :mega: :loudspeaker: :eye_speech_bubble: :speech_balloon: :thought_balloon: :right_anger_bubble: :spades: :clubs: :hearts: :diamonds: :black_joker: :flower_playing_cards: :mahjong: :clock1: :clock2: :clock3: :clock4: :clock5: :clock6: :clock7: :clock8: :clock9: :clock10: :clock11: :clock12: :clock130: :clock230: :clock330: :clock430: :clock530: :clock630: :clock730: :clock830: :clock930: :clock1030: :clock1130: :clock1230:

21
server/tests/test-emoticons6.md Обычный файл
Просмотреть файл

@@ -0,0 +1,21 @@
### Emoji - Flags
:white_flag: :black_flag: :checkered_flag: :triangular_flag_on_post: :rainbow_flag: :afghanistan: :aland_islands: :albania: :algeria: :american_samoa: :andorra: :angola: :anguilla: :antarctica: :antigua_barbuda: :argentina: :armenia: :aruba: :australia: :austria: :azerbaijan: :bahamas: :bahrain: :bangladesh: :barbados: :belarus: :belgium: :belize: :benin: :bermuda: :bhutan: :bolivia: :caribbean_netherlands: :bosnia_herzegovina: :botswana: :brazil: :british_indian_ocean_territory: :british_virgin_islands: :brunei: :bulgaria: :burkina_faso: :burundi: :cape_verde: :cambodia: :cameroon: :canada: :canary_islands: :cayman_islands: :central_african_republic: :chad: :chile: :cn: :christmas_island: :cocos_islands: :colombia: :comoros: :congo_brazzaville: :congo_kinshasa: :cook_islands: :costa_rica: :cote_divoire: :croatia: :cuba: :curacao: :cyprus: :czech_republic: :denmark: :djibouti: :dominica: :dominican_republic: :ecuador: :egypt: :el_salvador: :equatorial_guinea: :eritrea: :estonia: :ethiopia: :eu: :european_union: :falkland_islands: :faroe_islands: :fiji: :finland: :fr: :french_guiana: :french_polynesia: :french_southern_territories: :gabon: :gambia: :georgia: :de: :ghana: :gibraltar: :greece: :greenland: :grenada: :guadeloupe: :guam: :guatemala: :guernsey: :guinea: :guinea_bissau: :guyana: :haiti: :honduras: :hong_kong: :hungary: :iceland: :india: :indonesia: :iran: :iraq: :ireland: :isle_of_man: :israel: :it: :jamaica: :jp: :crossed_flags: :jersey: :jordan: :kazakhstan: :kenya: :kiribati: :kosovo: :kuwait: :kyrgyzstan: :laos: :latvia: :lebanon: :lesotho: :liberia: :libya: :liechtenstein: :lithuania: :luxembourg: :macau: :macedonia: :madagascar: :malawi: :malaysia: :maldives: :mali: :malta: :marshall_islands: :martinique: :mauritania: :mauritius: :mayotte: :mexico: :micronesia: :moldova: :monaco: :mongolia: :montenegro: :montserrat: :morocco: :mozambique: :myanmar: :namibia: :nauru: :nepal: :netherlands: :new_caledonia: :new_zealand: :nicaragua: :niger: :nigeria: :niue: :norfolk_island: :northern_mariana_islands: :north_korea: :norway: :oman: :pakistan: :palau: :palestinian_territories: :panama: :papua_new_guinea: :paraguay: :peru: :philippines: :pitcairn_islands: :poland: :portugal: :puerto_rico: :qatar: :reunion: :romania: :ru: :rwanda: :st_barthelemy: :st_helena: :st_kitts_nevis: :st_lucia: :st_pierre_miquelon: :st_vincent_grenadines: :samoa: :san_marino: :sao_tome_principe: :saudi_arabia: :senegal: :serbia: :seychelles: :sierra_leone: :singapore: :sint_maarten: :slovakia: :slovenia: :solomon_islands: :somalia: :south_africa: :south_georgia_south_sandwich_islands: :kr: :south_sudan: :es: :sri_lanka: :sudan: :suriname: :swaziland: :sweden: :switzerland: :syria: :taiwan: :tajikistan: :tanzania: :thailand: :timor_leste: :togo: :tokelau: :tonga: :trinidad_tobago: :tunisia: :tr: :turkmenistan: :turks_caicos_islands: :tuvalu: :uganda: :ukraine: :united_arab_emirates: :gb: :uk: :us: :us_virgin_islands: :uruguay: :uzbekistan: :vanuatu: :vatican_city: :venezuela: :vietnam: :wallis_futuna: :western_sahara: :yemen: :zambia: :zimbabwe:
### Emoji - Special
:bowtie: :feelsgood: :finnadie: :goberserk: :godmode: :hurtrealbad: :neckbeard: :octocat: :rage1: :rage2: :rage3: :rage4: :shipit: :squirrel: :suspect: :trollface: :mattermost:
### Emoji - Without space separator
`:dolphin::hamster::strawberry:` should render as emoticons below:
:dolphin::hamster::strawberry:
### Emoji - In headings
`# Squirrel: :squirrel:` should render emoticon scaled to match heading text size (except in compact view, which renders all headings the same size, boldface):
# H1 Squirrel: :squirrel:
## H2 Squirrel: :squirrel:
### H3 Squirrel: :squirrel:

20
server/tests/test-hashtags.md Обычный файл
Просмотреть файл

@@ -0,0 +1,20 @@
# Hashtag Testing
Hashtags in Mattermosts should render as specified below.
#### These strings should auto-link:
#testing
#testing123
#test-test
#test_test
#test! (punctuation should be excluded from linking)
#test1 #test2
#hüllo
#### These strings should not auto-link:
#123test
#?test
#-test

53
server/tests/test-link-preview.md Обычный файл
Просмотреть файл

@@ -0,0 +1,53 @@
# Link Preview Tests
Link previews should embed previews of the contents of a hyperlink from a message or comment in the center channel directly below the message or comment.
Post location variation:
1. Post message in center channel with RHS closed (Expected: preview of first link renders under message)
2. Post message in center channel with RHS open (Expected: preview of first link renders under message)
3. Post comment in RHS (Expected: link preview does not render)
4. View comment in center channel with RHS closed (Expected: preview of first link renders under message)
5. View comment in center channel with RHS open (Expected: preview of first link renders under message)
6. Search for post in RHS with link (Expected: no previews render in search results)
Test the above variations with the below sample messages (e.g. 1-A, 2-B, 3-C, 4-D, etc.)
```
#### A) No link preview
Link 1 example: https://en.wikipedia.org/wiki/Olympus_Mons
Link 2 example: http://www.techmeme.com/
Link 3 example: https://about.gitlab.com/
```
```
#### B) Link preview without an image
Link 1 example: https://coveralls.io/builds/9818822/source?filename=app%2Faudit.go
```
```
#### C) Link preview with image in top right corner
Link 1 example: http://www.theglobeandmail.com/news/national/three-canadians-shortlisted-for-global-teacher-prize/article33429901/
Link 2 example: https://twitter.com/ArchieComics/status/813007703861841920
Link 3 example: https://github.com/mattermost
Link 4 example: http://stackoverflow.com/questions/36650437/using-mattermost-api-via-gitlab-oauth-as-an-end-user-with-username-and-password
```
```
#### D) Link preview with image at the bottom
If "Account Settings > Display > Default appearance of image link previews" is set to "Collapsed", you must click the expand arrows to display the image.
Link 1 example: https://www.yahoo.com/news/panasonic-unveils-solar-roof-may-212400917.html
Link 2 example: https://mattermost.com
```

92
server/tests/test-links.md Обычный файл
Просмотреть файл

@@ -0,0 +1,92 @@
# Link Testing
Links in Mattermosts should render as specified below.
#### These strings should auto-link:
http://example.com
https://example.com
www.example.com
www.example.com/index
www.example.com/index.html
www.example.com/index/sub
www.example.com/index?params=1
www.example.com/index?params=1&other=2
www.example.com/index?params=1;other=2
http://example.com:8065
http://www.example.com/_/page
www.example.com/_/page
https://en.wikipedia.org/wiki/🐬
https://en.wikipedia.org/wiki/Rendering_(computer_graphics)
http://127.0.0.1
http://192.168.1.1:4040
http://[::1]:80
http://[::1]:8065
https://[::1]:80
http://[2001:0:5ef5:79fb:303a:62d5:3312:ff42]
http://[2001:0:5ef5:79fb:303a:62d5:3312:ff42]:8065
https://[2001:0:5ef5:79fb:303a:62d5:3312:ff42]
test@example.com
http://example.com/more_(than)_one_(parens)
http://example.com/(something)?after=parens
http://foo.com/unicode_(✪)_in_parens
http://✪df.ws/1234
*https://example.com*
_https://example.com_
**https://example.com**
__https://example.com__
***https://example.com***
___https://example.com___
<https://example.com>
<https://en.wikipedia.org/wiki/Rendering_(computer_graphics)>
www1.example.com
[This whole #sentence should be a link](https://example.com)
https://groups.google.com/forum/#!msg
#### These strings should not auto-link:
example.com
readme.md
@example.com
./make-compiled-client.sh
test.:test
`https://example.com`
#### Only the links within these sentences should auto-link:
(http://example.com)
(see http://example.com)
(http://example.com watch this)
(test@example.com)
This is a sentence with a http://example.com in it.
This is a sentence with a [link](http://example.com) in it.
This is a sentence with a http://example.com/_/underscore in it.
This is a sentence with a link (http://example.com) in it.
This is a sentence with a (https://en.wikipedia.org/wiki/Rendering_(computer_graphics)) in it.
This is a sentence with a http://192.168.1.1:4040 in it.
This is a sentence with a https://[::1]:80 in it.
This is a link to http://example.com.
This is a link containing http://example.com/something?with,commas,in,url, but not at end
This is a question about a link http://example.com?
#### These links should auto-link to the specified location:
[example link](example.com) links to `http://example.com`
[example.com](example.com) links to `http://example.com`
[example.com/other](example.com) links to `http://example.com`
[example.com/other_link](example.com/example) links to `http://example.com/example`
www.example.com links to `http://www.example.com`
https://example.com links to `https://example.com` and not `http://example.com`
https://en.wikipedia.org/wiki/🐬 links to the Wikipedia article on dolphins
https://en.wikipedia.org/wiki/URLs#Syntax links to the Syntax section of the Wikipedia article on URLs
test@example.com links to `mailto:test@example.com`
[email link](mailto:test@example.com) links to `mailto:test@example.com` and not `http://mailto:test@example.com`
[other link](ts3server://example.com) links to `ts3server://example.com` and not `http://ts3server://example.com`
test_underscore@example.com links to `mailto:test_underscore@example.com`
<test@example.com> with angle brackets links to `mailto:test@example.com` and not `http://mailto:test@example.com`
[link with spaces](example.com/ spaces in the url) links to either `http://example.com/ spaces in the url` or `http://example.com/%20spaces%20in%20the%20url`
#### These links should have tooltips when you hover over them
[link](example.com "catch phrase!") should have the tooltip `catch phrase!`
[link](example.com "title with "quotes"") should have the tooltip `title with "quotes"`
[link with spaces](example.com/ spaces in the url "and a title") should have the tooltip `and a title`

136
server/tests/test-markdown-basics.md Обычный файл
Просмотреть файл

@@ -0,0 +1,136 @@
# Basic Markdown Testing
Tests for text style, code blocks, in-line code and images, lines, block quotes, and headings.
### Text Style
**The following text should render as:**
_Italics_
_Ita_lics_
*Italics*
**Bold**
***Bold-italics***
**_Bold-italics_**
~~Strikethrough~~
This sentence contains **bold**, _italic_, ***bold-italic***, and ~~stikethrough~~ text.
**The following should render as normal text:**
Normal Text_
_Normal Text
_Normal Text*
### Carriage Return
Line #1 followed by one blank line
Line #2 followed by one blank line
Line #3 followed by Line #4
Line #4
### Code Blocks
```
This text should render in a code block
```
**The following markdown should not render:**
```
_Italics_
*Italics*
**Bold**
***Bold-italics***
**Bold-italics_**
~~Strikethrough~~
:) :-) ;) ;-) :o :O :-o :-O
:bamboo: :gift_heart: :dolls: :school_satchel: :mortar_board:
# Heading 1
## Heading 2
### Heading 3
#### Heading 4
##### Heading 5
###### Heading 6
> Block Quote
- List
- List Sub-item
[Link](http://i.giphy.com/xNrM4cGJ8u3ao.gif)
[![GitHub](https://assets-cdn.github.com/favicon.ico)](https://github.com/mattermost/platform)
| Left-Aligned Text | Center Aligned Text | Right Aligned Text |
| :------------ |:---------------:| -----:|
| Left column 1 | this text | $100 |
```
**The following links should not auto-link or generate previews:**
```
GIF: http://i.giphy.com/xNrM4cGJ8u3ao.gif
Website: https://en.wikipedia.org/wiki/Dolphin
```
**The following should appear as a carriage return separating two lines of text:**
```
Line #1 followed by a blank line
Line #2 following a blank line
```
### In-line Code
The word `monospace` should render as in-line code.
The following markdown in-line code should not render:
`_Italics_`, `*Italics*`, `**Bold**`, `***Bold-italics***`, `**Bold-italics_**`, `~~Strikethrough~~`, `:)` , `:-)` , `;)` , `:-O` , `:bamboo:` , `:gift_heart:` , `:dolls:` , `# Heading 1`, `## Heading 2`, `### Heading 3`, `#### Heading 4`, `##### Heading 5`, `###### Heading 6`
This GIF link should not preview: `http://i.giphy.com/xNrM4cGJ8u3ao.gif`
This link should not auto-link: `https://en.wikipedia.org/wiki/Dolphin`
This sentence with `
in-line code
` should appear on one line.
### In-line Images
(These image tests were moved into Se: MessagingMan.html)
### Lines
Three lines should render with text between them:
Text above line
***
Text between lines
---
Text between lines
___
Text below line
### Block Quotes
>This text should render in a block quote.
**The following markdown should render within the block quote:**
> #### Heading 4
> _Italics_, *Italics*, **Bold**, ***Bold-italics***, **_Bold-italics_**, ~~Strikethrough~~
> :) :-) ;) :-O :bamboo: :gift_heart: :dolls:
**The following text should render in two block quotes separated by one line of text:**
> Block quote 1
Text between block quotes
> Block quote 2
### Headings
# Heading 1 font size
## Heading 2 font size
### Heading 3 font size
#### Heading 4 font size
##### Heading 5 font size
###### Heading 6 font size

296
server/tests/test-markdown-lists.md Обычный файл
Просмотреть файл

@@ -0,0 +1,296 @@
# Markdown List Testing
Verify that all list types render as expected.
### Single-Item Ordered List
**Expected:**
```
7. Single Item
```
**Actual:**
7. Single Item
### Multi-Item Ordered List
**Expected:**
```
1. One
2. Two
3. Three
```
**Actual:**
1. One
1. Two
1. Three
### Nested Ordered List
**Expected:**
```
1. Alpha
1. Bravo
2. Charlie
3. Delta
1. Echo
2. Foxtrot
```
**Actual:**
1. Alpha
1. Bravo
1. Charlie
1. Delta
1. Echo
1. Foxtrot
### Single-Item Unordered List
**Expected:**
```
• Single Item
```
**Actual:**
* Single Item
### Multi-Item Unordered List
**Expected:**
```
• One
• Two
• Three
```
**Actual:**
* One
- Two
+ Three
### Multi-Item Unordered List with Line Break (Break should not render)
**Expected:**
```
• Item A
• Item B
• Item C
• Item D
```
**Actual:**
* Item A
+ Item B
- Item C
- Item D
### Nested Unordered List
**Expected:**
```
• Alpha
• Bravo
• Charlie
• Delta
• Echo
• Foxtrot
```
**Actual:**
+ Alpha
* Bravo
- Charlie
* Delta
+ Echo
- Foxtrot
### Mixed List Starting Ordered
**Expected:**
```
1. One
2. Two
3. Three
```
**Actual:**
1. One
+ Two
- Three
### Mixed List Starting Unordered
**Expected:**
```
• Monday
• Tuesday
• Wednesday
```
**Actual:**
+ Monday
1. Tuesday
* Wednesday
### Nested Mixed List
**Expected:**
```
• Alpha
1. Bravo
• Charlie
• Delta
• Echo
• Foxtrot
• Golf
1. Hotel
• India
1. Juliet
2. Kilo
• Lima
• Mike
1. November
4. Oscar
5. Papa
```
**Actual:**
- Alpha
1. Bravo
* Charlie
+ Delta
- Echo
* Foxtrot
+ Golf
1. Hotel
- India
1. Juliet
2. Kilo
* Lima
1. Mike
1. November
4. Oscar
5. Papa
### Ordered Lists Separated by Carriage Returns
**Expected:**
```
1. One
• Two
2. Two
3. Three
```
**Actual:**
1. One
- Two
2. Two
3. Three
### New Line After a List
**Expected:**
```
1. One
2. Two
This text should be on a new line.
```
**Actual:**
1. One
2. Two
This text should be on a new line.
### Task Lists
**Expected:**
```
[ ] One
[ ] Subpoint one
- Normal Bullet
[ ] Two
[x] Completed item
```
**Actual:**
- [ ] One
- [ ] Subpoint one
- Normal Bullet
- [ ] Two
- [x] Completed item
### Numbered Task Lists
**Expected:**
```
1. [ ] One
2. [ ] Two
3. [x] Completed item
```
**Actual:**
1. [ ] One
2. [ ] Two
3. [x] Completed item
### Multiple Lists
**Expected:**
```
List A:
1. One
List B:
2. Two
```
List A:
1. One
List B:
2. Two
### Lists with blank lines before and after
**Expected:**
```
Line with blank line after
Line with blank line after and before
1. Bullet
2. Bullet
3. Bullet
Line with blank line after and before
Line with blank line before
```
Line with blank line after
Line with blank line after and before
1. Bullet
2. Bullet
3. Bullet
Line with blank line after and before
Line with blank line before

13
server/tests/test-mentions.md Обычный файл
Просмотреть файл

@@ -0,0 +1,13 @@
# Mentions Testing
To test the following mention functional:
1. Add a user 'alice' to the system
2. Paste the below text to test if mentions is properly highlighting
```
To run this test, if a user named @alice doesn't yet exist, create one.
I saw @alice--and I said "Hi @alice!" then "What's up @alice?" and then @alice, was totally @alice; she just "@alice"'d me and walked on by. That's @alice...
```

42
server/tests/test-public-key.plugin.gpg Обычный файл
Просмотреть файл

@@ -0,0 +1,42 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
23weBF1kMz0BDACoQ4hnmfz/KPQOx/J7fWj8DO/3HxAG+Y4rjvmGkNsaK02aNL7r
AQMAX0X5aRGB880Gm/n3lZSOp2wyjb5N4MnzOI/M3lww+rnJzt0i21GwOqS/HDz0
ZlAcO+nYecD5rkhHRUFeOnBzGKmV267VTwCTOjUcjdsuy2jLIZBk7xBV41n9gKZo
rwzYnOFLw5suEN8sCPYxgFe5iuRj8wEHzW0JiMWUb8PMm1eWkR3ux0G9wRpQCAdh
rB+RlKjG0UdfC3RhPR3fC0vqQkFj0tjM2G1xL3pLZIgygtZAsDAjPbeNzBBagzEv
WzqJiK8qHoKGxujyXfQIRWDrnfdbgwsscKZHOpse5PMDRTIGroq0DG/5JaBaEkEb
FwcvOe7CCOdPShZGMSFFncoblts4P+NgmwZHJH/sb3cbgivnSQT/SdnlYRI2vD9W
CI345hjk/2ynF68uat+NxPtWPjPk/MOnHz170iPOF5Zp0glKV6RUV+Lj2U8HdEVM
huHvQao59Shuas0AEQEAAbRSSmVzc2UgSGFsbGFtIChQbHVnaW4gTWFya2V0cGxh
Y2UgU2lnbmluZyBLZXkgLSBEZXZlbG9wbWVudCkgPGplc3NlQG1hdHRlcm1vc3Qu
Y29tPokB1AQTAQgAPhYhBLZ9dC4GijhaT2pBUp7t0EEt1PgpBQJdZDM9AhsDBQkA
J40ABQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEJ7t0EEt1Pgp3ikMAId6Syf8
qb5QyU4/KS5myEbz6buP423Rgs9My6R7IkwPheQDf4ZF5W2rIlrV2bVf3VFvTfuT
PXDInfBxr6sQtItP65+ct34C9GtG7xost+RzM5ArjsY1jRH276tJMQzfNeXXvtY3
Fcahz5Wa1DBUAgUbArV9yzMprxMgNFLsVCYCl3/1iO3aXf1nw2GVJ+0nJ6YhGv3E
Q1WHo0bkv2w64EzsnsBoKZCCuE/MK4k3MxDDWiva+OfuWnooV6QTBRm6C8wOIKXs
tnAE8nvciKobD7VcZW09F+p/Jg1NbroyCaGDROiLtwUenEpyUx4zeYvAvFGTQz5c
5zYGoZENzdG7UH7PiT7QlLqQx4rWpJH08D8ciDKeRyR+wiocP0/hh7UT+Wg0qnTV
F7b6e5YORjLOjZKtp8nfFB9/Ql0L+7wzQzGz7NSojGWR1XdpGDpZTFts1WR6r4dc
qjww52FBwjFdBNsaWJAsdJGzD2YT9GvzJZMUcSTlus8kAySKM+UVV6ZZSbkBjQRd
ZDM9AQwAosl4FEbSDetXUf3dUJMqQipQAyhN7dJd3Gv4gfgW16ymzcV0jh/F6LJP
JN+iRYziBvDmLDuBXaasdJvtemp2xljvI2x9+JFSFf8ZCqvKerwYNWb1icdzjzof
Ki32PJxn8o/iJGV5xkhqw+PNOEE12RBgOLwLVAQP3FxS8mgzCM+cJKmIWYeVSoy2
J3fDyZWyzQ5zBsvK/HtSW1R3MfhoRJq7E1VFVzrzmQvTSG3J+5LpwT0snMX7qona
Rm7OovP3PsvlY2BB7+CLj7N6G3BQRTpfJndfea+4DfQlVYw0mEUlT77DXitfX701
veVZu9cRg8PLaoHSRbU2BreDZRVPMq93svLxT7MCCBrau6wVOZQ5kqObDImSbxP6
mNB+hi2HurNcB+LhwgVboC75q0CzdnaPqu2c2YlsvsaZWkK2jlvNyqlN9uoJ1bUp
56hBWUOYAHx3hsZdEb4In95sP7cZAtKQJU0Q64UR/OPlU/a5fK591RLVlNY6LESX
aZLsFMMbABEBAAGJAbwEGAEIACYWIQS2fXQuBoo4Wk9qQVKe7dBBLdT4KQUCXWQz
PQIbDAUJACeNAAAKCRCe7dBBLdT4KelxC/9ze8cmYoLK2tr2cArX3Xw41wiXi4hV
dMMSy8Y8ZUCFNBDIf1do3j6XMQ8EJROF2IBMnQFej7K4IJAQ/0rWFuE3rBS6g+n1
7wiFMfj24RTHy/i303DWuveV7vbJw2oBYVY892hQAKxWpN/On4bctkHLxAYUpDu0
EmtWkbsjet01tvZKRA6ONQcd/bzrkTVmJS4a5u3nIkaj2xx5YQGLrCY+ovDRc3Vg
YSsIjJj5oOX52JabkE+XTi+g4wlAwIlMH1AB4qTS0HkHyLnLaNyjlNMwdiVQbiEC
IwZrV+YU1byphlmbB8N08aIAXTNRkyqYgDiDY0aicPRxex3BRXBjYpD01hYkhnsZ
HxZekApznHlf3C4a5SztKe1uR/A1GHRYMYuXUKc859SMIf69E/Vhr0T5m46R501h
SQgCdRZmsX5Qo3JmjEFyVM1KfjxdsBt8O1uZOEgBuHEMMFRrsDhBPr6B/cPwoT5G
gdlxUIdsQJ/ReVe1OOrgASKbG3qApwert2g=
=FQgT
-----END PGP PUBLIC KEY BLOCK-----

48
server/tests/test-search.md Обычный файл
Просмотреть файл

@@ -0,0 +1,48 @@
# Search Testing
### Basic Search Testing
This post is used by the core team to test search. It should be returned for the test cases for search, with proper highlighting in the search results.
**Basic word search:** Hello world!
**Emoji search:** :strawberry:
**Accent search:** Crème fraîche
**Non-latin search:**
您好吗
您好
**Email search:** person@domain.org
**Link search:** www.dropbox.com
**Markdown search:**
##### Hello
```
Hello
```
`Hello`
### Hashtags:
Click on the linked hashtags below, and confirm that the search results match the linked hashtags. Confirm that the highlighting in the search results is correct.
#### Basic Hashtags
#hello #world
#### Hashtags containing punctuation:
*Note: Make a separate post containing only the word “hashtag”, and confirm the hashtags below do not return the separate post.*
#hashtag #hashtag-dash #hashtag_underscore #hashtag.dot
#### Punctuation following a hashtag:
#colon: #slash/ #backslash\ #percent% #dollar$ #semicolon; #ampersand& #bracket( #bracket) #lessthan< #greaterthan> #dash- #plus+ #equals= #caret^ #hashtag# #asterisk* #verticalbar| #invertedquestion¿ #atsign@ #quote” #apostrophe' #curlybracket{ #curlybracket} #squarebracket[ #squarebracket]
#### Markdown surrounding a hashtag:
*#markdown* **#markdown** ~~#markdown~~
##### #markdown
#### Accents and non-Latin characters in a hashtag:
#crèmeglacée #테스트

61
server/tests/test-slack-attachments.json Обычный файл
Просмотреть файл

@@ -0,0 +1,61 @@
{
"message": "Hello world",
"props": {
"attachments": [
{
"color": "#7CD197",
"fields": [
{
"short": false,
"title": "Area",
"value": "Testing with a very long piece of text that will take up the whole width of the table. This is one more sentence to really make it a long field."
},
{
"short": true,
"title": "Iteration",
"value": "Testing"
},
{
"short": true,
"title": "State",
"value": "New"
},
{
"short": false,
"title": "Reason",
"value": "New defect reported"
},
{
"short": false,
"title": "Random field",
"value": "This is a field which is not marked as short so it should be rendered on a separate row"
},
{
"short": true,
"title": "Short 1",
"value": "Short field"
},
{
"short": true,
"title": "Short 2",
"value": "Another one"
},
{
"short": true,
"title": "Field with link",
"value": "<http://example.com|Link>"
}
],
"mrkdwn_in": [
"pretext"
],
"pretext": "Some text here",
"text": "This is the text of the attachment. It should appear just above the image",
"thumb_url": "https://slack.global.ssl.fastly.net/7bf4/img/services/jenkins-ci_128.png",
"title": "A slack attachment",
"title_link": "https://www.google.com"
}
]
},
"type": "slack_attachment"
}

180
server/tests/test-syntax-highlighting.md Обычный файл
Просмотреть файл

@@ -0,0 +1,180 @@
# Code Syntax Highlighting
Verify the following code blocks render as code blocks and highlight properly.
### Diff
``` diff
*** /path/to/original ''timestamp''
--- /path/to/new ''timestamp''
***************
*** 1 ****
! This is a line.
--- 1 ---
! This is a replacement line.
It is important to spell
-removed line
+new line
```
### Makefile
``` makefile
CC=gcc
CFLAGS=-I.
hellomake: hellomake.o hellofunc.o
$(CC) -o hellomake hellomake.o hellofunc.o -I.
```
### JSON
``` json
{"employees":[
{"firstName":"John", "lastName":"Doe"},
]}
```
### Markdown
``` markdown
**bold**
*italics*
[link](www.example.com)
```
### JavaScript
``` javascript
document.write('Hello, world!');
```
### CSS
``` css
body {
background-color: red;
}
```
### Objective C
``` objectivec
#import <stdio.h>
int main (void)
{
printf ("Hello world!\n");
}
```
### Python
``` python
print "Hello, world!"
```
### XML
``` xml
<employees>
<employee>
<firstName>John</firstName> <lastName>Doe</lastName>
</employee>
</employees>
```
### Perl
``` perl
print "Hello, World!\n";
```
### Bash
``` bash
echo "Hello World"
```
### PHP
``` php
<?php echo '<p>Hello World</p>'; ?>
```
### CoffeeScript
``` coffeescript
console.log(“Hello world!”);
```
### C#
``` cs
using System;
class Program
{
public static void Main(string[] args)
{
Console.WriteLine("Hello, world!");
}
}
```
### C++
``` cpp
#include <iostream.h>
main()
{
cout << "Hello World!";
return 0;
}
```
### SQL
``` sql
SELECT column_name,column_name
FROM table_name;
```
### Go
``` go
package main
import "fmt"
func main() {
fmt.Println("Hello, 世界")
}
```
### Ruby
``` ruby
puts "Hello, world!"
```
### Java
``` java
import javax.swing.JFrame; //Importing class JFrame
import javax.swing.JLabel; //Importing class JLabel
public class HelloWorld {
public static void main(String[] args) {
JFrame frame = new JFrame(); //Creating frame
frame.setTitle("Hi!"); //Setting title frame
frame.add(new JLabel("Hello, world!"));//Adding text to frame
frame.pack(); //Setting size to smallest
frame.setLocationRelativeTo(null); //Centering frame
frame.setVisible(true); //Showing frame
}
}
```
### Latex Equation
``` latex
\frac{d}{dx}\left( \int_{0}^{x} f(u)\,du\right)=f(x).
```

88
server/tests/test-tables.md Обычный файл
Просмотреть файл

@@ -0,0 +1,88 @@
# Markdown Tables
Verify that all tables render as described. First row is boldface.
### Normal Tables
These tables use different raw text as inputs, but all three should render as the same table.
#### Table 1
Raw text:
```
First Header | Second Header
------------- | -------------
Content Cell | Content Cell
Content Cell | Content Cell
```
Renders as:
First Header | Second Header
------------- | -------------
Content Cell | Content Cell
Content Cell | Content Cell
#### Table 2
Raw Text:
```
| First Header | Second Header |
| ------------- | ------------- |
| Content Cell | Content Cell |
| Content Cell | Content Cell |
```
Renders as:
| First Header | Second Header |
| ------------- | ------------- |
| Content Cell | Content Cell |
| Content Cell | Content Cell |
#### Table 3
Raw Text:
```
| First Header | Second Header |
| ------------- | ----------- |
| Content Cell | Content Cell|
| Content Cell | Content Cell |
```
Renders as:
| First Header | Second Header |
| ------------- | ----------- |
| Content Cell | Content Cell|
| Content Cell | Content Cell |
### Tables Containing Markdown
This table should contain A1: Strikethrough, A2: Bold, B1: Italics, B2: Dolphin emoticon.
| Column\Row | 1 | 2 |
| ------------- | ------------- |------------- |
| A | ~~Strikethrough~~ | **Bold** |
| B | _italics_ | :dolphin: |
### Table with Left, Center, and Right Aligned Columns
The left column should be left aligned, the center column centered and the right column should be right aligned.
| Left-Aligned | Center Aligned | Right Aligned |
| :------------ |:---------------:| -----:|
| 1 | this text | $100 |
| 2 | is | $10 |
| 3 | centered | $1 |
### Table with Escaped Pipes
First row cells: single backslash, "asdf". Second row cells: "ab" , "a|d"
| \\ | asdf|
|----|-----|
| ab | a\|d|

Двоичные данные
server/tests/test.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 273 KiB

14
server/tests/test.svg Обычный файл
Просмотреть файл

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="20px" height="20px" viewBox="0 0 20 20" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 3.8.1 (29687) - http://www.bohemiancoding.com/sketch -->
<title>github [#142]</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill-rule="evenodd">
<g id="Dribbble-Light-Preview" transform="translate(-140.000000, -7559.000000)" >
<g id="icons" transform="translate(56.000000, 160.000000)">
<path d="M94,7399 C99.523,7399 104,7403.59 104,7409.253 C104,7413.782 101.138,7417.624 97.167,7418.981 C96.66,7419.082 96.48,7418.762 96.48,7418.489 C96.48,7418.151 96.492,7417.047 96.492,7415.675 C96.492,7414.719 96.172,7414.095 95.813,7413.777 C98.04,7413.523 100.38,7412.656 100.38,7408.718 C100.38,7407.598 99.992,7406.684 99.35,7405.966 C99.454,7405.707 99.797,7404.664 99.252,7403.252 C99.252,7403.252 98.414,7402.977 96.505,7404.303 C95.706,7404.076 94.85,7403.962 94,7403.958 C93.15,7403.962 92.295,7404.076 91.497,7404.303 C89.586,7402.977 88.746,7403.252 88.746,7403.252 C88.203,7404.664 88.546,7405.707 88.649,7405.966 C88.01,7406.684 87.619,7407.598 87.619,7408.718 C87.619,7412.646 89.954,7413.526 92.175,7413.785 C91.889,7414.041 91.63,7414.493 91.54,7415.156 C90.97,7415.418 89.522,7415.871 88.63,7414.304 C88.63,7414.304 88.101,7413.319 87.097,7413.247 C87.097,7413.247 86.122,7413.234 87.029,7413.87 C87.029,7413.87 87.684,7414.185 88.139,7415.37 C88.139,7415.37 88.726,7417.2 91.508,7416.58 C91.513,7417.437 91.522,7418.245 91.522,7418.489 C91.522,7418.76 91.338,7419.077 90.839,7418.982 C86.865,7417.627 84,7413.783 84,7409.253 C84,7403.59 88.478,7399 94,7399" id="github-[#142]"></path>
</g>
</g>
</g>
</svg>

После

Ширина:  |  Высота:  |  Размер: 1.8 KiB

Двоичные данные
server/tests/test.tiff Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/test_expected_tiff_preview.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 24 KiB

Двоичные данные
server/tests/test_expected_tiff_thumb.jpeg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 3.5 KiB

Двоичные данные
server/tests/testarchive.zip Обычный файл

Двоичный файл не отображается.

Двоичные данные
server/tests/testgif.gif Исполняемый файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 38 KiB

Двоичные данные
server/tests/testgif_expected_preview.jpg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 6.7 KiB

Двоичные данные
server/tests/testgif_expected_thumbnail.jpg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 5.2 KiB

Двоичные данные
server/tests/testjpg.jpg Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 40 KiB

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше