HEX
Server: LiteSpeed
System: Linux php-prod-3.spaceapp.ru 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64
User: sarli3128 (1010)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //usr/local/CyberCP/databases/tests.py
# -*- coding: utf-8 -*-


from django.test import TestCase
import json
import requests
import urllib3
from plogical.CyberCPLogFileWriter import CyberCPLogFileWriter as logging

urllib3.disable_warnings()


# Create your tests here.


class TestDatabases(TestCase):
    httpClient = requests.Session()

    def MakeRequest(self, endPoint, data):
        json_data = json.dumps(data)
        path = 'https://cyberpanel.xyz:8090/%s' % (endPoint)
        result = TestDatabases.httpClient.post(path, data=json_data, verify=False)
        return json.loads(result.text)

    def MakeRequestRaw(self, path):
        result = requests.get(path)
        return str(result.text)

    def setupConnection(self):
        try:
            import MySQLdb as mysql
            import MySQLdb.cursors as cursors
            conn = mysql.connect(user='admin_hello', passwd='helloworld', cursorclass=cursors.SSCursor)
            cursor = conn.cursor()
            return conn, cursor
        except:
            return 0, 0

    def setUp(self):
        ## Verify login

        data_ret = {'username': 'admin', 'password': '1234567'}
        response = self.MakeRequest('verifyLogin', data_ret)
        self.assertEqual(response['loginStatus'], 1)

    def test_submitDBCreation(self):
        ## Create DB

        data_ret = {'databaseWebsite': 'cyberpanel.xyz', 'dbName': 'hello', 'dbUsername': 'hello',
                    'dbPassword': 'helloworld', 'webUserName': 'admin'}

        response = self.MakeRequest('dataBases/submitDBCreation', data_ret)

        self.assertEqual(response['status'], 1)

        ## Check connection to database

        connection, cursor = self.setupConnection()

        self.assertNotEqual(connection, 0)

        ## Delete db

        data_ret = {'dbName': 'admin_hello'}
        response = self.MakeRequest('dataBases/submitDatabaseDeletion', data_ret)
        self.assertEqual(response['status'], 1)

        ## Check connection to database

        connection, cursor = self.setupConnection()

        self.assertEqual(connection, 0)