@@ -1164,6 +1164,143 @@ function check_ip_not_banned(){
11641164 refute_output
11651165}
11661166
1167+ @test " DNS: Add domain record MX" {
1168+ run v-add-dns-record $user $domain ' @' MX mx.hestiacp.com ' ' 50
1169+ assert_success
1170+ refute_output
1171+
1172+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " mx.hestiacp.com."
1173+
1174+ run v-change-dns-record $user $domain 50 ' @' MX mx.hestia.com
1175+ assert_success
1176+ refute_output
1177+
1178+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " mx.hestia.com."
1179+
1180+ run v-delete-dns-record $user $domain 50
1181+ assert_success
1182+ refute_output
1183+ }
1184+
1185+ @test " DNS: Add domain record NS" {
1186+ run v-delete-dns-record $user $domain 50
1187+ run v-add-dns-record $user $domain ' @' NS mx.hestiacp.com ' ' 50
1188+ assert_success
1189+ refute_output
1190+
1191+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " mx.hestiacp.com."
1192+
1193+ run v-change-dns-record $user $domain 50 ' @' NS mx.hestia.com
1194+ assert_success
1195+ refute_output
1196+
1197+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " mx.hestia.com."
1198+
1199+ run v-delete-dns-record $user $domain 50
1200+ assert_success
1201+ refute_output
1202+ }
1203+
1204+ @test " DNS: Add domain record SRV" {
1205+ run v-delete-dns-record $user $domain 50
1206+ run v-add-dns-record $user $domain ' _test_domain' SRV mx.hestiacp.com ' ' 50
1207+ assert_success
1208+ refute_output
1209+
1210+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " mx.hestiacp.com."
1211+
1212+ run v-change-dns-record $user $domain 50 ' _test.domain' SRV mx.hestia.com
1213+ assert_success
1214+ refute_output
1215+
1216+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " mx.hestia.com."
1217+
1218+ run v-delete-dns-record $user $domain 50
1219+ assert_success
1220+ refute_output
1221+ }
1222+
1223+ @test " DNS: Add domain record CNAME" {
1224+ run v-delete-dns-record $user $domain 50
1225+ run v-add-dns-record $user $domain ' mail' CNAME mx.hestiacp.com ' ' 50
1226+ assert_success
1227+ refute_output
1228+
1229+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " mx.hestiacp.com."
1230+
1231+ run v-change-dns-record $user $domain 50 ' mail' CNAME mx.hestia.com
1232+ assert_success
1233+ refute_output
1234+
1235+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " mx.hestia.com."
1236+
1237+ run v-delete-dns-record $user $domain 50
1238+ assert_success
1239+ refute_output
1240+ }
1241+
1242+ @test " DNS: Check txt dns records type1" {
1243+ [ -z " $DNS_SYSTEM " ] && skip
1244+
1245+ run v-delete-dns-record $user $domain 50
1246+
1247+ record1_in=' v=DMARC1; p=quarantine; pct=100'
1248+ record2_in=' v=DMARC1; p=quarantine; pct=90'
1249+
1250+ record1_out=' "v=DMARC1; p=quarantine; pct=100"'
1251+ record2_in=' "v=DMARC1; p=quarantine; pct=90"'
1252+
1253+ # Test Create
1254+ run v-add-dns-record $user $domain ' test-long-txt' ' TXT' " $record1_in " ' ' 50
1255+ assert_success
1256+ refute_output
1257+
1258+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " $record1_out "
1259+
1260+ # Test Edit
1261+ run v-change-dns-record $user $domain 50 ' test-long-txt' ' TXT' " $record2_in "
1262+ assert_success
1263+ refute_output
1264+
1265+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " $record2_out "
1266+
1267+ # Test Cleanup
1268+ run v-delete-dns-record $user $domain 50
1269+ assert_success
1270+ refute_output
1271+ }
1272+
1273+ @test " DNS: Check txt dns records type2" {
1274+ [ -z " $DNS_SYSTEM " ] && skip
1275+
1276+ run v-delete-dns-record $user $domain 50
1277+
1278+ record3_in=' k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4+VEVsoTbl6tYLJlhozqAGju3IgpSVdBAS5LMyzpHP8/L0/PlyVRJnm2xECjVk3DRqCmelyIvmraw1VtFz2aH6DRlDhHsZghj1DmGhwN+7NkwIb4hEvmytMVAz1WyiLH6Rm6Iemm/ZCt1RhrAMUYLxHA9mJgky76YCcf8/cX35xC+1vd4a5U6YofAZeVP9DBvVgQ8ung4gVrOrQrXkU8QfVNAoXz5pfJo74GB7woIBFhZXsU6SKho7KnzT5inVCIOtWp7L5hyEnbySWQPHT2vAMCCAe2AY/Vv0N3HW14o8P3b4A6OU920wFB2kA7pkQNzO5OwH+HSttwG0PaIiQxYQIDAQAB'
1279+ record3_out=' "k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4+VEVsoTbl6tYLJlhozqAGju3IgpSVdBAS5LMyzpHP8/L0/PlyVRJnm2xECjVk3DRqCmelyIvmraw1VtFz2aH6DRlDhHsZghj1DmGhwN+7NkwIb4hEvmytMVAz1WyiLH6Rm6Iemm/ZCt1RhrAMUYLxHA9mJgky76YCcf8/cX35xC+1vd4a5U6YofAZeVP9DBvVgQ8ung4g""VrOrQrXkU8QfVNAoXz5pfJo74GB7woIBFhZXsU6SKho7KnzT5inVCIOtWp7L5hyEnbySWQPHT2vAMCCAe2AY/Vv0N3HW14o8P3b4A6OU920wFB2kA7pkQNzO5OwH+HSttwG0PaIiQxYQIDAQAB"'
1280+
1281+ record4_in=' k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4+VEVsoTbl6tYLJlhozqAGju3IgpSVdBAS5LMyzpHP8/L0/PlyVRJnm2xECjVk3DRqCmelyIvmraw1VtFz2aH6DRlDhHsZghj1DmGhwN+7NkwIb4hEvmytMVAz1WyiLH6Rm6Iemm/ZCt1RhrAMUYLxHA9mJgky76YCcf8/cX35xC+1vd4a5U6YofAZeVP9DBvVgQ8ung4gVrOrQrXkU8QfVNAoXz5pfJo74GB7woIBFhZXsU6SKho7KnzT5inVCIOtWp7L5hyEnbySWQPHT2vAMCCAe2AY/Vv0N3HW14o8P3b4A6OU920wFB2kA7pkQNzO5OwH+HSttwG0PaIiQxYQIDAQA4'
1282+ record4_out=' "k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4+VEVsoTbl6tYLJlhozqAGju3IgpSVdBAS5LMyzpHP8/L0/PlyVRJnm2xECjVk3DRqCmelyIvmraw1VtFz2aH6DRlDhHsZghj1DmGhwN+7NkwIb4hEvmytMVAz1WyiLH6Rm6Iemm/ZCt1RhrAMUYLxHA9mJgky76YCcf8/cX35xC+1vd4a5U6YofAZeVP9DBvVgQ8ung4g""VrOrQrXkU8QfVNAoXz5pfJo74GB7woIBFhZXsU6SKho7KnzT5inVCIOtWp7L5hyEnbySWQPHT2vAMCCAe2AY/Vv0N3HW14o8P3b4A6OU920wFB2kA7pkQNzO5OwH+HSttwG0PaIiQxYQIDAQA4"'
1283+
1284+ # Test Create
1285+ run v-add-dns-record $user $domain ' test-long-txt' ' TXT' " $record3_in " ' ' 50
1286+ assert_success
1287+ refute_output
1288+
1289+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " $record3_out "
1290+
1291+ # Test Edit
1292+ run v-change-dns-record $user $domain 50 ' test-long-txt' ' TXT' " $record4_in "
1293+ assert_success
1294+ refute_output
1295+
1296+ assert_file_contains " $HOMEDIR /$user /conf/dns/${domain} .db" " $record4_out "
1297+
1298+ # Test Cleanup
1299+ run v-delete-dns-record $user $domain 50
1300+ assert_success
1301+ refute_output
1302+ }
1303+
11671304@test " DNS: Change domain ip" {
11681305 run v-change-dns-domain-ip $user $domain 127.0.0.1
11691306 assert_success
0 commit comments