mirror of
https://github.com/collinbarrett/FilterLists.git
synced 2026-03-11 09:04:27 +00:00
parent
52d1b5186d
commit
d5910a264a
5 changed files with 94 additions and 19 deletions
38
.travis.yml
38
.travis.yml
|
|
@ -3,31 +3,33 @@ language: csharp
|
|||
mono: none
|
||||
dotnet: 2.1.403
|
||||
solution: FilterLists.sln
|
||||
services:
|
||||
- mysql
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- sshpass
|
||||
- sshpass
|
||||
script:
|
||||
- scripts/build.sh
|
||||
- dotnet test tests/FilterLists.Services.Tests/FilterLists.Services.Tests.csproj /p:CollectCoverage=true /p:CoverletOutputFormat=opencover
|
||||
- scripts/build.sh
|
||||
- dotnet test tests/FilterLists.Services.Tests/FilterLists.Services.Tests.csproj /p:CollectCoverage=true /p:CoverletOutputFormat=opencover
|
||||
after_script:
|
||||
- bash <(curl -s https://codecov.io/bash)
|
||||
- bash <(curl -s https://codecov.io/bash)
|
||||
env:
|
||||
global:
|
||||
#FTP_USER
|
||||
- secure: o/C5sWQSvHAENA7OSgKyptgiI7mbBlMZOvy6cwiQDes9df32oy60CgWHhgFJ2bM61fiJt0jsvogrTY1Rk8HEYphHsJ/WzuOqbnPFJZ9V74HaGf9SN7O+8GjOrPd1p+v3Kv2q0Py3FdGeKWEbWn352Js2VRNw6uvlxxihNxETnTak2QymQ5SQpcd//O7E5NDTAO7/+mn9Le5ZN6ZE6mDf53YGVcaiN/sAbh9QOE17LX9fp5F0veuQ3a/wWjZlDLZBUwZAAxSPGqefv2eOx5wIpbbBhkFEqpN4xmhUrYNfzsGDMthhiaLAWS0JfnhSsc1l4T6b/ljoNarY2BSEYPwG4utdCauI1jdh8kR/ZZoLG7/8TJ396iIWlXW3Z0C4kHhD3075F6tqr3LbRQR5OU85+uAqwBhutwQkLLJ+Usp0pu8wj89mMYxC4Cp66aLJSdMqeemR6UIUNojNlqI1+wsclsgRgCK0KIf4LNcdmPh4WkURbzZ1SNTkmyb85bVCnP0heF6HPIguZ2aUYCWKfGuOv5ohFfv+IDPaYdQybZSPrEsROKyapgnJqvIc03UgIcAgb7GhZG4ZxAtuRNqzwg9PU0aL9vWXN6qbLm2oM5Fj0cIrab3leVpSHvJBvfxS0Wl18GhRDP7Bzmf1crkxwJqXZw1YFEK7BSuLJ7VTWo7mQUY=
|
||||
#FTP_PASSWORD
|
||||
- secure: JW9ZqU7dgvWSEZBAQ7ZG3/f1xt79RdR3p1wTLAlmGia8eOPCcmLd9sSder6dw08YvM6QaMTkNfoVWX2tl6ppZ5pRnYlv9bzdj1PDz9Twe9+acGJ13u97siTF9hRNI6KnUrJDZfkKDO3Kdeg0pI/5vib2gglhyVfiBYgcOAjHEHLp53fbet/hvx3gPMzunjRXFEoM6VdqBspqCSKHWF4nziVaapRGhFCq2sFL1RFz3whDGGY/7BRl2cchY11ysAyRsw+fNriwU0Hf7NTXdWFxvnsl1/pLcPnzECRjb48jgWctWwoOqm7aD5eAPCJgUEElMZc34HckinnvOg05N8ySchsMp6rJfT9G00Lu5RWtPRnpQ38CcHOR1K54kpe+PLrs8M/bOR9yQdCLoEyqfdUxNfcBIE3d8NkLIjDC4MomoQftg6QdEUhlOCwXGQn1M6jyp2AlAgs/SGPHb3zT6Lr3MUKAbYeYbb912d5KYFeu97I5ls3cWVV/omU0iOU6OT0hRgWiy+EtHOzzIQtgXoARh/AZXovytJcKiSvhDi/jZ9UIGE5HCrPwNkQ2SdcrCFF/TKFsjNK+SYoibDgqdh4rgBUrI5yGGgBn3EdvkBZWr78IQjM4A0TwyjGC+R7BHVRipvoaKOtsO7NC5qqb+3NJasEymsS5tH6LxcA3odx/rs0=
|
||||
#FTP_HOST
|
||||
- secure: Q/MyM2VmEeW0z6ujxQAHS6GLMXE3Dguu75oSARykrFJGk85iNTij7OiHvqfTYSBdw/h+47zv/pjtHwD8os3LTmTKpMOu3PyMP+SOk6J1SGKUKx1J959GHMRw94Dqcr7RbGmQA5eVWq/GJzPJffhWcMOSSwXSIaYFZcBTXIYqMMmcxwSEULutfvyfzhOm+8psdHLQQhjX2QcYHNHJQTpJ6+WJ7tLpZIxg5iHSZe1dPRVpeozOJ/+hhxPWwi2XDNt3LG9VUg4jMF24HXcw5zJLgSZGV7oy+XUMrcRV27DzL/s+nGS4FM2TQbMal94FU0tSyTAA+Qj80hUNvlgL/tykmDRK+E2am+04SisUtuTVPLjVy52qqwt25tvbOQH9BjN5eieZxj4uYog1S3HL5BUa7032MZbToZzt8IuOxyfIKfGZBUYwyWLK5pPWxQwnZhGIFpH98m0wTAsggvCrr1n9mNJeYO0n0DymTt+xWqHE/MIxKU3aUo0RNWGXNIwrp4TjYOaf/GgeKAUMSI5TzLhKY2n3uPfCniM4p25Ysf0RmnMEKW0VsXpSWfyIAtwqnF1NGFU/RJn2X13LsYLxwzE8JJ1hSEW+QQ7k1ZJKEqZWYEvhbF+7RD/l5KkKgZD1L8FGLLUEK6eTY65/rQV+4gprAVFw43PnkYa2codUn48952A=
|
||||
#FTP_DIR
|
||||
- secure: Fh47PH2JNBtvr7Dbbzf/wG+HizL7bND63JyhY97kG7VHtXSeLwWTw13YvF0UDoWa+37NicTOKUgGemg7Mz+K4+GpOiTBUm5YNTpw8ECpdys9G4xZURsIqUYUxrr5k//TddvRP+4CaH0miOW3hKF4SSnT9BwJeTMxsZjQNsg78UKTOWhGQIkmXqbpgzWOFoUH5NrrNTe+KoIYRJ85DOtGLwjpuKKOivjd090MG18ZcQ63SqQ0TTTr3gGHgahrc/IPzSFFsPiLHWjpCk3EkbL8M+GaSQtJ8jUE7hqfTFXBZdB2ws8Z7qbjSwLY6o3YgvW53GGMH8DBpYOq+iKbQnUG7/v4YWBsuUOPRb6TbtSNHEZUfqeKo7Ku60roSNLanMmIPsvnbNnWy+wuA19g/4YIxwNJpx+FkACnYc9NSjrnLIS39mo4w3ngcM+YcNLIe1bmxOQVxr++BbmbbDj1dQng0JotfZtUNmEMmNFpE3q9xdNYQPfFBMor8DxqDYTJ4UB4MSNfmNnJd1Io9ccDf77AFltyHrKzV7bK/ZcV7YA/kMgxpCU3WEt0DmXWVsMaaMBlv+iwF2ebOaYQODIpbl8rAHTRhfsFfdpZkZSPwlQiwyWRoVYMdl5JZ6jOjlIrmRxMc9rySDlJA16Zf5Ha2fVb9SSMczFuR1qd6fOujpyGaio=
|
||||
#CF_GLOBAL_API_KEY
|
||||
- secure: kh18jMJa474a5ihcPgnX/DfiMb1F/vVES1Y2LTOn2khJEpDOAXOkE33GHUrh3aCEf1/Wi09FdXWGzLGcps7DIozGcYNHZDd9iFdud0GUfmDYhEbrnph8GQZx/JghxuRZ0p6NW4PTmyrvCyUly01WK994+tEkKjf7+VZfjaxbXqLOo1zsBgRIAKBST2zXo/eFI89wlp6up5yn8W2gsfon++5Ahtt9zEZYN8QoD26Ii+B05niEEjJ5wkKgvLBY58OCxFp4Gg6kq4AS4kj8+3S7mFn0l4WAoEqTGJEDy43iLhEQgCf0AhZLetPOXVwkUQ2w+nUup1jpCyGUjC7vZKGHMxJXW1V3NtLQTw+Q+TGCYFIBa/yCU0TMInHI9p3VpZl2I6PziqAaUOSoKMI6WkVUy91veb23+pTVKD0N6XQBB1RFZD1eIH9kPCFOoha453RxRYt2iv9ndhd5mNGLGbyDkiOZ18zl4hl/E9aG2Yl/CDaVzVGkKCxTPAHH7z4QKnKZLRyVL7ylktlcDydnAHI7x8/iHRkJF5hpcy3LldOO0DJXBIoIoD5i+Vd7tqCkcWM5E87PQUZeyUACogayrFOs2szhVIPq91TH68TbeLRQicZ4e5VIt8ASJqpalBFBjtI1NKDGrqGGT12pG1QMOdvK0lEIWMwnSxsBa0X0ERqaAuQ=
|
||||
#CF_EMAIL
|
||||
- secure: t+IYZ85pjetgRMA8/wdNvQp6vcY62yMA3J/YCVdIrmoT6Zg1rPLy9XObz242Htpj9Cn6g4rWgmYZ+YHmzJJ5rh2q33voMn1hwYUvkj76tOnwDR9Y1nZcYfSk3nly/Tn4U8xdrbt9VylPwztaccUp6WtcdSZ/NQ4MP1TGmmJvjq/wfrRZdyDltas5g+e5YkP4k3hByIm+t7TUb0fKuIVSCktnwUl4FvQvhgZT7tzOecmTE1Kiw7QMbs1B6Mr+DE2eYNBqJC8IGpMGdoCqVjv1vEj3/u8XTUA78kZwrc2vz6uiz6Vr2E4SjR7ryf0y1KCQMDYr5eUMVb3L4HjFpRnJ+93lL4kdoOkEfdpgn2PSck+vEDDpJ2MWXeE5Fzz7AO34sFSbBR90+OiDH32msI7a8bEIZ5y6zCaJmh4eppPhYCH8SffWOTDAzDUrlV0JTmJgyUvY8oCi4bUxYtHVrraRQLg5tk1MJNPRqbi3fhevUMweoeEyzSdCxRmgNjN41KBRVSMUHSyHcEpKALBxHESoPQ/B+54swUBFVZ3q5rbvFln1mKCWd23BQqCft2U+PWT1IcTStbPSNVWFF2mpaeNlDK6gOToF66uz0DHbN81RvydiB5ryBz6gHHnOwtry0dBAQ7eBHkTx5aTWyCl81mvoEbDFio4eYEIVTtJ3xr0KJ/Y=
|
||||
#CF_FILTERLISTS_ZONE
|
||||
- secure: a2mR9nIaDs+HdIyShSqigrlydYJ27eJPuNuRG5pZ/kuqlJkbXxsOHwjHXjn22ERQQJKwjXbZxgGQxf9Ef9WmFygTVW5WZdpWcOCE5IZBYSZikwU2M6WO9w3ENvNes8mgcOQM9EoNLZTFJQZB9SNIWhqZysW6jRFxNFdDrI0AdyjG/1u7jzC56zo79/oJs9g25mOaFCqnQWjE9N5/tTqW23MjQBQexCCAMyafvq65Jji8LY624bcyMg0vWNHfPdP0ZUIUhFgkpEBq9+6CjKwNougD0C4FqYFBmB3kVT/sEn6/oc2XdXkp1jEA7sdl1pFss8YrpRBcpbhz5kKePlujkorIr6xgqjJ2N9q2N23V6ekWnLu97ZuivSPfSQ8NPj0WHT4+AWagHRUFmgERtyI74y4UnA68ADmKuQBp1GPzsNhJ/4w3K/Tro0McjbH9ac7v2DfHPdCGBsnv93AK1opVUIB6pdacDqgwQk9/XbTd0wW3t4l4cLlSsgykPxydwA2R6lG+fFyLrviBiLdv+KTzD015y0VY339sPFwarRha2+uUYNcunSZtw0oarqHJQoJvhY1aoF2tBJ4MJG4h87tUecjhDbKSti+l/GNU/3oIMfTDnt/MqaA9Bnt/MwVDZBW0eY6koSzxbfePUOKbvPL8eI8Ax+aYoGKMestjW7sw1tk=
|
||||
#FTP_USER
|
||||
- secure: o/C5sWQSvHAENA7OSgKyptgiI7mbBlMZOvy6cwiQDes9df32oy60CgWHhgFJ2bM61fiJt0jsvogrTY1Rk8HEYphHsJ/WzuOqbnPFJZ9V74HaGf9SN7O+8GjOrPd1p+v3Kv2q0Py3FdGeKWEbWn352Js2VRNw6uvlxxihNxETnTak2QymQ5SQpcd//O7E5NDTAO7/+mn9Le5ZN6ZE6mDf53YGVcaiN/sAbh9QOE17LX9fp5F0veuQ3a/wWjZlDLZBUwZAAxSPGqefv2eOx5wIpbbBhkFEqpN4xmhUrYNfzsGDMthhiaLAWS0JfnhSsc1l4T6b/ljoNarY2BSEYPwG4utdCauI1jdh8kR/ZZoLG7/8TJ396iIWlXW3Z0C4kHhD3075F6tqr3LbRQR5OU85+uAqwBhutwQkLLJ+Usp0pu8wj89mMYxC4Cp66aLJSdMqeemR6UIUNojNlqI1+wsclsgRgCK0KIf4LNcdmPh4WkURbzZ1SNTkmyb85bVCnP0heF6HPIguZ2aUYCWKfGuOv5ohFfv+IDPaYdQybZSPrEsROKyapgnJqvIc03UgIcAgb7GhZG4ZxAtuRNqzwg9PU0aL9vWXN6qbLm2oM5Fj0cIrab3leVpSHvJBvfxS0Wl18GhRDP7Bzmf1crkxwJqXZw1YFEK7BSuLJ7VTWo7mQUY=
|
||||
#FTP_PASSWORD
|
||||
- secure: JW9ZqU7dgvWSEZBAQ7ZG3/f1xt79RdR3p1wTLAlmGia8eOPCcmLd9sSder6dw08YvM6QaMTkNfoVWX2tl6ppZ5pRnYlv9bzdj1PDz9Twe9+acGJ13u97siTF9hRNI6KnUrJDZfkKDO3Kdeg0pI/5vib2gglhyVfiBYgcOAjHEHLp53fbet/hvx3gPMzunjRXFEoM6VdqBspqCSKHWF4nziVaapRGhFCq2sFL1RFz3whDGGY/7BRl2cchY11ysAyRsw+fNriwU0Hf7NTXdWFxvnsl1/pLcPnzECRjb48jgWctWwoOqm7aD5eAPCJgUEElMZc34HckinnvOg05N8ySchsMp6rJfT9G00Lu5RWtPRnpQ38CcHOR1K54kpe+PLrs8M/bOR9yQdCLoEyqfdUxNfcBIE3d8NkLIjDC4MomoQftg6QdEUhlOCwXGQn1M6jyp2AlAgs/SGPHb3zT6Lr3MUKAbYeYbb912d5KYFeu97I5ls3cWVV/omU0iOU6OT0hRgWiy+EtHOzzIQtgXoARh/AZXovytJcKiSvhDi/jZ9UIGE5HCrPwNkQ2SdcrCFF/TKFsjNK+SYoibDgqdh4rgBUrI5yGGgBn3EdvkBZWr78IQjM4A0TwyjGC+R7BHVRipvoaKOtsO7NC5qqb+3NJasEymsS5tH6LxcA3odx/rs0=
|
||||
#FTP_HOST
|
||||
- secure: Q/MyM2VmEeW0z6ujxQAHS6GLMXE3Dguu75oSARykrFJGk85iNTij7OiHvqfTYSBdw/h+47zv/pjtHwD8os3LTmTKpMOu3PyMP+SOk6J1SGKUKx1J959GHMRw94Dqcr7RbGmQA5eVWq/GJzPJffhWcMOSSwXSIaYFZcBTXIYqMMmcxwSEULutfvyfzhOm+8psdHLQQhjX2QcYHNHJQTpJ6+WJ7tLpZIxg5iHSZe1dPRVpeozOJ/+hhxPWwi2XDNt3LG9VUg4jMF24HXcw5zJLgSZGV7oy+XUMrcRV27DzL/s+nGS4FM2TQbMal94FU0tSyTAA+Qj80hUNvlgL/tykmDRK+E2am+04SisUtuTVPLjVy52qqwt25tvbOQH9BjN5eieZxj4uYog1S3HL5BUa7032MZbToZzt8IuOxyfIKfGZBUYwyWLK5pPWxQwnZhGIFpH98m0wTAsggvCrr1n9mNJeYO0n0DymTt+xWqHE/MIxKU3aUo0RNWGXNIwrp4TjYOaf/GgeKAUMSI5TzLhKY2n3uPfCniM4p25Ysf0RmnMEKW0VsXpSWfyIAtwqnF1NGFU/RJn2X13LsYLxwzE8JJ1hSEW+QQ7k1ZJKEqZWYEvhbF+7RD/l5KkKgZD1L8FGLLUEK6eTY65/rQV+4gprAVFw43PnkYa2codUn48952A=
|
||||
#FTP_DIR
|
||||
- secure: Fh47PH2JNBtvr7Dbbzf/wG+HizL7bND63JyhY97kG7VHtXSeLwWTw13YvF0UDoWa+37NicTOKUgGemg7Mz+K4+GpOiTBUm5YNTpw8ECpdys9G4xZURsIqUYUxrr5k//TddvRP+4CaH0miOW3hKF4SSnT9BwJeTMxsZjQNsg78UKTOWhGQIkmXqbpgzWOFoUH5NrrNTe+KoIYRJ85DOtGLwjpuKKOivjd090MG18ZcQ63SqQ0TTTr3gGHgahrc/IPzSFFsPiLHWjpCk3EkbL8M+GaSQtJ8jUE7hqfTFXBZdB2ws8Z7qbjSwLY6o3YgvW53GGMH8DBpYOq+iKbQnUG7/v4YWBsuUOPRb6TbtSNHEZUfqeKo7Ku60roSNLanMmIPsvnbNnWy+wuA19g/4YIxwNJpx+FkACnYc9NSjrnLIS39mo4w3ngcM+YcNLIe1bmxOQVxr++BbmbbDj1dQng0JotfZtUNmEMmNFpE3q9xdNYQPfFBMor8DxqDYTJ4UB4MSNfmNnJd1Io9ccDf77AFltyHrKzV7bK/ZcV7YA/kMgxpCU3WEt0DmXWVsMaaMBlv+iwF2ebOaYQODIpbl8rAHTRhfsFfdpZkZSPwlQiwyWRoVYMdl5JZ6jOjlIrmRxMc9rySDlJA16Zf5Ha2fVb9SSMczFuR1qd6fOujpyGaio=
|
||||
#CF_GLOBAL_API_KEY
|
||||
- secure: kh18jMJa474a5ihcPgnX/DfiMb1F/vVES1Y2LTOn2khJEpDOAXOkE33GHUrh3aCEf1/Wi09FdXWGzLGcps7DIozGcYNHZDd9iFdud0GUfmDYhEbrnph8GQZx/JghxuRZ0p6NW4PTmyrvCyUly01WK994+tEkKjf7+VZfjaxbXqLOo1zsBgRIAKBST2zXo/eFI89wlp6up5yn8W2gsfon++5Ahtt9zEZYN8QoD26Ii+B05niEEjJ5wkKgvLBY58OCxFp4Gg6kq4AS4kj8+3S7mFn0l4WAoEqTGJEDy43iLhEQgCf0AhZLetPOXVwkUQ2w+nUup1jpCyGUjC7vZKGHMxJXW1V3NtLQTw+Q+TGCYFIBa/yCU0TMInHI9p3VpZl2I6PziqAaUOSoKMI6WkVUy91veb23+pTVKD0N6XQBB1RFZD1eIH9kPCFOoha453RxRYt2iv9ndhd5mNGLGbyDkiOZ18zl4hl/E9aG2Yl/CDaVzVGkKCxTPAHH7z4QKnKZLRyVL7ylktlcDydnAHI7x8/iHRkJF5hpcy3LldOO0DJXBIoIoD5i+Vd7tqCkcWM5E87PQUZeyUACogayrFOs2szhVIPq91TH68TbeLRQicZ4e5VIt8ASJqpalBFBjtI1NKDGrqGGT12pG1QMOdvK0lEIWMwnSxsBa0X0ERqaAuQ=
|
||||
#CF_EMAIL
|
||||
- secure: t+IYZ85pjetgRMA8/wdNvQp6vcY62yMA3J/YCVdIrmoT6Zg1rPLy9XObz242Htpj9Cn6g4rWgmYZ+YHmzJJ5rh2q33voMn1hwYUvkj76tOnwDR9Y1nZcYfSk3nly/Tn4U8xdrbt9VylPwztaccUp6WtcdSZ/NQ4MP1TGmmJvjq/wfrRZdyDltas5g+e5YkP4k3hByIm+t7TUb0fKuIVSCktnwUl4FvQvhgZT7tzOecmTE1Kiw7QMbs1B6Mr+DE2eYNBqJC8IGpMGdoCqVjv1vEj3/u8XTUA78kZwrc2vz6uiz6Vr2E4SjR7ryf0y1KCQMDYr5eUMVb3L4HjFpRnJ+93lL4kdoOkEfdpgn2PSck+vEDDpJ2MWXeE5Fzz7AO34sFSbBR90+OiDH32msI7a8bEIZ5y6zCaJmh4eppPhYCH8SffWOTDAzDUrlV0JTmJgyUvY8oCi4bUxYtHVrraRQLg5tk1MJNPRqbi3fhevUMweoeEyzSdCxRmgNjN41KBRVSMUHSyHcEpKALBxHESoPQ/B+54swUBFVZ3q5rbvFln1mKCWd23BQqCft2U+PWT1IcTStbPSNVWFF2mpaeNlDK6gOToF66uz0DHbN81RvydiB5ryBz6gHHnOwtry0dBAQ7eBHkTx5aTWyCl81mvoEbDFio4eYEIVTtJ3xr0KJ/Y=
|
||||
#CF_FILTERLISTS_ZONE
|
||||
- secure: a2mR9nIaDs+HdIyShSqigrlydYJ27eJPuNuRG5pZ/kuqlJkbXxsOHwjHXjn22ERQQJKwjXbZxgGQxf9Ef9WmFygTVW5WZdpWcOCE5IZBYSZikwU2M6WO9w3ENvNes8mgcOQM9EoNLZTFJQZB9SNIWhqZysW6jRFxNFdDrI0AdyjG/1u7jzC56zo79/oJs9g25mOaFCqnQWjE9N5/tTqW23MjQBQexCCAMyafvq65Jji8LY624bcyMg0vWNHfPdP0ZUIUhFgkpEBq9+6CjKwNougD0C4FqYFBmB3kVT/sEn6/oc2XdXkp1jEA7sdl1pFss8YrpRBcpbhz5kKePlujkorIr6xgqjJ2N9q2N23V6ekWnLu97ZuivSPfSQ8NPj0WHT4+AWagHRUFmgERtyI74y4UnA68ADmKuQBp1GPzsNhJ/4w3K/Tro0McjbH9ac7v2DfHPdCGBsnv93AK1opVUIB6pdacDqgwQk9/XbTd0wW3t4l4cLlSsgykPxydwA2R6lG+fFyLrviBiLdv+KTzD015y0VY339sPFwarRha2+uUYNcunSZtw0oarqHJQoJvhY1aoF2tBJ4MJG4h87tUecjhDbKSti+l/GNU/3oIMfTDnt/MqaA9Bnt/MwVDZBW0eY6koSzxbfePUOKbvPL8eI8Ax+aYoGKMestjW7sw1tk=
|
||||
deploy:
|
||||
skip_cleanup: true
|
||||
provider: script
|
||||
|
|
|
|||
|
|
@ -48,7 +48,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "sql", "sql", "{A4BB2C81-523
|
|||
scripts\sql\snapshotTimeAnalysis.sql = scripts\sql\snapshotTimeAnalysis.sql
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FilterLists.Services.Tests", "tests\FilterLists.Services.Tests\FilterLists.Services.Tests.csproj", "{7D9F0D85-E906-401A-BDAD-724440B34567}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FilterLists.Services.Tests", "tests\FilterLists.Services.Tests\FilterLists.Services.Tests.csproj", "{7D9F0D85-E906-401A-BDAD-724440B34567}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FilterLists.Data.Tests", "tests\FilterLists.Data.Tests\FilterLists.Data.Tests.csproj", "{DA34DED7-B352-4855-9C7B-9E3D983DBE2E}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
|
@ -80,6 +82,10 @@ Global
|
|||
{7D9F0D85-E906-401A-BDAD-724440B34567}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7D9F0D85-E906-401A-BDAD-724440B34567}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{7D9F0D85-E906-401A-BDAD-724440B34567}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{DA34DED7-B352-4855-9C7B-9E3D983DBE2E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DA34DED7-B352-4855-9C7B-9E3D983DBE2E}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DA34DED7-B352-4855-9C7B-9E3D983DBE2E}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{DA34DED7-B352-4855-9C7B-9E3D983DBE2E}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
|
|
|||
|
|
@ -407,6 +407,8 @@ protected override void BuildModel(ModelBuilder modelBuilder)
|
|||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("Raw");
|
||||
|
||||
b.ToTable("rules");
|
||||
});
|
||||
|
||||
|
|
|
|||
26
tests/FilterLists.Data.Tests/FilterLists.Data.Tests.csproj
Normal file
26
tests/FilterLists.Data.Tests/FilterLists.Data.Tests.csproj
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
|
||||
<IsPackable>false</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.1.4">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.9.0" />
|
||||
<PackageReference Include="xunit" Version="2.4.0" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.0">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\src\FilterLists.Data\FilterLists.Data.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
using FilterLists.Data.Seed.Extensions;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using MySql.Data.MySqlClient;
|
||||
using Xunit;
|
||||
|
||||
namespace FilterLists.Data.Tests
|
||||
{
|
||||
public class SeedFilterListsDbContextTests
|
||||
{
|
||||
private const string CiTestServerConnString = "Server=localhost;Uid=travis;";
|
||||
private const string CiTestDatabaseConnString = CiTestServerConnString + "Database=filterlistsdatatest;";
|
||||
|
||||
/// <summary>
|
||||
/// requires "CREATE USER 'travis'@'localhost';" on non-Travis mysql instance
|
||||
/// </summary>
|
||||
[Fact]
|
||||
public async void SeedOrUpdateAsync_DoesNotThrowException()
|
||||
{
|
||||
var options = new DbContextOptionsBuilder<FilterListsDbContext>()
|
||||
.UseMySql(CiTestDatabaseConnString, m => m.MigrationsAssembly("FilterLists.Api"))
|
||||
.Options;
|
||||
using (var context = new FilterListsDbContext(options))
|
||||
{
|
||||
await context.Database.EnsureDeletedAsync();
|
||||
using (var conn = new MySqlConnection(CiTestServerConnString))
|
||||
{
|
||||
await conn.OpenAsync();
|
||||
var cmd = new MySqlCommand(
|
||||
"CREATE DATABASE filterlistsdatatest CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci;",
|
||||
conn);
|
||||
await cmd.ExecuteNonQueryAsync();
|
||||
}
|
||||
|
||||
await context.Database.MigrateAsync();
|
||||
await SeedFilterListsDbContext.SeedOrUpdateAsync(context, "../../../../../../../../data");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue