ENH: add more test cases in NetworkTestDialog

Change-Id: I54f5a52d2bb993f3536c4ab75cb54190eafe49a5
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit b28b0d97ab51b0f2f9a6f37622e5cd93e8d8d8f6)
This commit is contained in:
Stone Li 2022-08-16 14:34:18 +08:00 committed by Lane.Wei
parent a12f6ed133
commit 65ba9cafb3
2 changed files with 467 additions and 325 deletions

View File

@ -55,16 +55,24 @@ wxBoxSizer* NetworkTestDialog::create_top_sizer(wxWindow* parent)
{ {
auto sizer = new wxBoxSizer(wxVERTICAL); auto sizer = new wxBoxSizer(wxVERTICAL);
btn_start = new wxButton(this, wxID_ANY, _L("Start Test"), wxDefaultPosition, wxDefaultSize, 0); auto line_sizer = new wxBoxSizer(wxHORIZONTAL);
sizer->Add(btn_start, 0, wxALL, 5); btn_start = new wxButton(this, wxID_ANY, _L("Start Test Multi-Thread"), wxDefaultPosition, wxDefaultSize, 0);
line_sizer->Add(btn_start, 0, wxALL, 5);
btn_start_sequence = new wxButton(this, wxID_ANY, _L("Start Test Single-Thread"), wxDefaultPosition, wxDefaultSize, 0);
line_sizer->Add(btn_start_sequence, 0, wxALL, 5);
btn_download_log = new wxButton(this, wxID_ANY, _L("Export Log"), wxDefaultPosition, wxDefaultSize, 0); btn_download_log = new wxButton(this, wxID_ANY, _L("Export Log"), wxDefaultPosition, wxDefaultSize, 0);
sizer->Add(btn_download_log, 0, wxALL, 5); line_sizer->Add(btn_download_log, 0, wxALL, 5);
btn_download_log->Hide(); btn_download_log->Hide();
btn_start->Bind(wxEVT_BUTTON, [this](wxCommandEvent &evt) { btn_start->Bind(wxEVT_BUTTON, [this](wxCommandEvent &evt) {
start_all_job(); start_all_job();
}); });
btn_start_sequence->Bind(wxEVT_BUTTON, [this](wxCommandEvent &evt) {
start_all_job_sequence();
});
sizer->Add(line_sizer, 0, wxEXPAND, 5);
return sizer; return sizer;
} }
@ -118,10 +126,13 @@ wxBoxSizer* NetworkTestDialog::create_content_sizer(wxWindow* parent)
auto sizer = new wxBoxSizer(wxVERTICAL); auto sizer = new wxBoxSizer(wxVERTICAL);
wxFlexGridSizer* grid_sizer; wxFlexGridSizer* grid_sizer;
grid_sizer = new wxFlexGridSizer(0, 2, 0, 0); grid_sizer = new wxFlexGridSizer(0, 3, 0, 0);
grid_sizer->SetFlexibleDirection(wxBOTH); grid_sizer->SetFlexibleDirection(wxBOTH);
grid_sizer->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED); grid_sizer->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED);
btn_link = new wxButton(this, wxID_ANY, _L("Test BambuLab"), wxDefaultPosition, wxDefaultSize, 0);
grid_sizer->Add(btn_link, 0, wxEXPAND | wxALL, 5);
text_link_title = new wxStaticText(this, wxID_ANY, _L("Test BambuLab:"), wxDefaultPosition, wxDefaultSize, 0); text_link_title = new wxStaticText(this, wxID_ANY, _L("Test BambuLab:"), wxDefaultPosition, wxDefaultSize, 0);
text_link_title->Wrap(-1); text_link_title->Wrap(-1);
grid_sizer->Add(text_link_title, 0, wxALIGN_RIGHT | wxALL, 5); grid_sizer->Add(text_link_title, 0, wxALIGN_RIGHT | wxALL, 5);
@ -130,6 +141,9 @@ wxBoxSizer* NetworkTestDialog::create_content_sizer(wxWindow* parent)
text_link_val->Wrap(-1); text_link_val->Wrap(-1);
grid_sizer->Add(text_link_val, 0, wxALL, 5); grid_sizer->Add(text_link_val, 0, wxALL, 5);
btn_bing = new wxButton(this, wxID_ANY, _L("Test Bing.com"), wxDefaultPosition, wxDefaultSize, 0);
grid_sizer->Add(btn_bing, 0, wxEXPAND | wxALL, 5);
text_bing_title = new wxStaticText(this, wxID_ANY, _L("Test bing.com:"), wxDefaultPosition, wxDefaultSize, 0); text_bing_title = new wxStaticText(this, wxID_ANY, _L("Test bing.com:"), wxDefaultPosition, wxDefaultSize, 0);
text_bing_title->Wrap(-1); text_bing_title->Wrap(-1);
grid_sizer->Add(text_bing_title, 0, wxALIGN_RIGHT | wxALL, 5); grid_sizer->Add(text_bing_title, 0, wxALIGN_RIGHT | wxALL, 5);
@ -138,6 +152,9 @@ wxBoxSizer* NetworkTestDialog::create_content_sizer(wxWindow* parent)
text_bing_val->Wrap(-1); text_bing_val->Wrap(-1);
grid_sizer->Add(text_bing_val, 0, wxALL, 5); grid_sizer->Add(text_bing_val, 0, wxALL, 5);
btn_iot = new wxButton(this, wxID_ANY, _L("Test HTTP"), wxDefaultPosition, wxDefaultSize, 0);
grid_sizer->Add(btn_iot, 0, wxEXPAND | wxALL, 5);
text_iot_title = new wxStaticText(this, wxID_ANY, _L("Test HTTP Service:"), wxDefaultPosition, wxDefaultSize, 0); text_iot_title = new wxStaticText(this, wxID_ANY, _L("Test HTTP Service:"), wxDefaultPosition, wxDefaultSize, 0);
text_iot_title->Wrap(-1); text_iot_title->Wrap(-1);
grid_sizer->Add(text_iot_title, 0, wxALIGN_RIGHT | wxALL, 5); grid_sizer->Add(text_iot_title, 0, wxALIGN_RIGHT | wxALL, 5);
@ -146,6 +163,9 @@ wxBoxSizer* NetworkTestDialog::create_content_sizer(wxWindow* parent)
text_iot_value->Wrap(-1); text_iot_value->Wrap(-1);
grid_sizer->Add(text_iot_value, 0, wxALL, 5); grid_sizer->Add(text_iot_value, 0, wxALL, 5);
btn_oss = new wxButton(this, wxID_ANY, _L("Test storage"), wxDefaultPosition, wxDefaultSize, 0);
grid_sizer->Add(btn_oss, 0, wxEXPAND | wxALL, 5);
text_oss_title = new wxStaticText(this, wxID_ANY, _L("Test Storage Upload:"), wxDefaultPosition, wxDefaultSize, 0); text_oss_title = new wxStaticText(this, wxID_ANY, _L("Test Storage Upload:"), wxDefaultPosition, wxDefaultSize, 0);
text_oss_title->Wrap(-1); text_oss_title->Wrap(-1);
grid_sizer->Add(text_oss_title, 0, wxALIGN_RIGHT | wxALL, 5); grid_sizer->Add(text_oss_title, 0, wxALIGN_RIGHT | wxALL, 5);
@ -154,6 +174,9 @@ wxBoxSizer* NetworkTestDialog::create_content_sizer(wxWindow* parent)
text_oss_value->Wrap(-1); text_oss_value->Wrap(-1);
grid_sizer->Add(text_oss_value, 0, wxALL, 5); grid_sizer->Add(text_oss_value, 0, wxALL, 5);
btn_oss_upgrade = new wxButton(this, wxID_ANY, _L("Test storage upgrade"), wxDefaultPosition, wxDefaultSize, 0);
grid_sizer->Add(btn_oss_upgrade, 0, wxEXPAND | wxALL, 5);
text_oss_upgrade_title = new wxStaticText(this, wxID_ANY, _L("Test Storage Upgrade:"), wxDefaultPosition, wxDefaultSize, 0); text_oss_upgrade_title = new wxStaticText(this, wxID_ANY, _L("Test Storage Upgrade:"), wxDefaultPosition, wxDefaultSize, 0);
text_oss_upgrade_title->Wrap(-1); text_oss_upgrade_title->Wrap(-1);
grid_sizer->Add(text_oss_upgrade_title, 0, wxALIGN_RIGHT | wxALL, 5); grid_sizer->Add(text_oss_upgrade_title, 0, wxALIGN_RIGHT | wxALL, 5);
@ -162,6 +185,9 @@ wxBoxSizer* NetworkTestDialog::create_content_sizer(wxWindow* parent)
text_oss_upgrade_value->Wrap(-1); text_oss_upgrade_value->Wrap(-1);
grid_sizer->Add(text_oss_upgrade_value, 0, wxALL, 5); grid_sizer->Add(text_oss_upgrade_value, 0, wxALL, 5);
btn_oss_download = new wxButton(this, wxID_ANY, _L("Test storage download"), wxDefaultPosition, wxDefaultSize, 0);
grid_sizer->Add(btn_oss_download, 0, wxEXPAND | wxALL, 5);
text_oss_download_title = new wxStaticText(this, wxID_ANY, _L("Test Storage Download:"), wxDefaultPosition, wxDefaultSize, 0); text_oss_download_title = new wxStaticText(this, wxID_ANY, _L("Test Storage Download:"), wxDefaultPosition, wxDefaultSize, 0);
text_oss_download_title->Wrap(-1); text_oss_download_title->Wrap(-1);
grid_sizer->Add(text_oss_download_title, 0, wxALIGN_RIGHT | wxALL, 5); grid_sizer->Add(text_oss_download_title, 0, wxALIGN_RIGHT | wxALL, 5);
@ -170,6 +196,9 @@ wxBoxSizer* NetworkTestDialog::create_content_sizer(wxWindow* parent)
text_oss_download_value->Wrap(-1); text_oss_download_value->Wrap(-1);
grid_sizer->Add(text_oss_download_value, 0, wxALL, 5); grid_sizer->Add(text_oss_download_value, 0, wxALL, 5);
btn_oss_upload = new wxButton(this, wxID_ANY, _L("Test Storage Upload"), wxDefaultPosition, wxDefaultSize, 0);
grid_sizer->Add(btn_oss_upload, 0, wxEXPAND | wxALL, 5);
text_oss_upload_title = new wxStaticText(this, wxID_ANY, _L("Test Storage Upload:"), wxDefaultPosition, wxDefaultSize, 0); text_oss_upload_title = new wxStaticText(this, wxID_ANY, _L("Test Storage Upload:"), wxDefaultPosition, wxDefaultSize, 0);
text_oss_upload_title->Wrap(-1); text_oss_upload_title->Wrap(-1);
grid_sizer->Add(text_oss_upload_title, 0, wxALIGN_RIGHT | wxALL, 5); grid_sizer->Add(text_oss_upload_title, 0, wxALIGN_RIGHT | wxALL, 5);
@ -178,11 +207,36 @@ wxBoxSizer* NetworkTestDialog::create_content_sizer(wxWindow* parent)
text_oss_upload_value->Wrap(-1); text_oss_upload_value->Wrap(-1);
grid_sizer->Add(text_oss_upload_value, 0, wxALL, 5); grid_sizer->Add(text_oss_upload_value, 0, wxALL, 5);
btn_oss_upload->Hide();
text_oss_upload_title->Hide(); text_oss_upload_title->Hide();
text_oss_upload_value->Hide(); text_oss_upload_value->Hide();
sizer->Add(grid_sizer, 1, wxEXPAND, 5); sizer->Add(grid_sizer, 1, wxEXPAND, 5);
btn_link->Bind(wxEVT_BUTTON, [this](wxCommandEvent& evt) {
start_test_bambulab_thread();
});
btn_bing->Bind(wxEVT_BUTTON, [this](wxCommandEvent& evt) {
start_test_bing_thread();
});
btn_iot->Bind(wxEVT_BUTTON, [this](wxCommandEvent& evt) {
start_test_iot_thread();
});
btn_oss->Bind(wxEVT_BUTTON, [this](wxCommandEvent& evt) {
start_test_oss_thread();
});
btn_oss_upgrade->Bind(wxEVT_BUTTON, [this](wxCommandEvent& evt) {
start_test_oss_upgrade_thread();
});
btn_oss_download->Bind(wxEVT_BUTTON, [this](wxCommandEvent& evt) {
start_test_oss_download_thread();
});
return sizer; return sizer;
} }
wxBoxSizer* NetworkTestDialog::create_result_sizer(wxWindow* parent) wxBoxSizer* NetworkTestDialog::create_result_sizer(wxWindow* parent)
@ -266,22 +320,36 @@ void NetworkTestDialog::start_all_job()
start_test_oss_thread(); start_test_oss_thread();
start_test_oss_upgrade_thread(); start_test_oss_upgrade_thread();
start_test_oss_download_thread(); start_test_oss_download_thread();
start_test_ping_thread();
} }
void NetworkTestDialog::start_test_bing_thread() void NetworkTestDialog::start_all_job_sequence()
{ {
if (m_in_testing[TEST_BING_JOB]) return; m_sequence_job = new boost::thread([this] {
update_status(-1, "start_test_sequence");
start_test_bing();
if (m_closing) return;
start_test_bambulab();
if (m_closing) return;
start_test_oss();
if (m_closing) return;
start_test_oss_upgrade();
if (m_closing) return;
start_test_oss_download();
update_status(-1, "end_test_sequence");
});
}
test_job[TEST_BING_JOB] = new boost::thread([this] { void NetworkTestDialog::start_test_bing()
{
m_in_testing[TEST_BING_JOB] = true; m_in_testing[TEST_BING_JOB] = true;
update_status(TEST_BING_JOB, "test bing start..."); update_status(TEST_BING_JOB, "test bing start...");
std::string url = "https://www.bing.com"; std::string url = "http://www.bing.com/";
Slic3r::Http http = Slic3r::Http::get(url); Slic3r::Http http = Slic3r::Http::get(url);
int result = -1; int result = -1;
http.header("accept", "application/json") http.timeout_max(10)
.timeout_max(10)
.on_complete([this, &result](std::string body, unsigned status) { .on_complete([this, &result](std::string body, unsigned status) {
try { try {
if (status == 200) { if (status == 200) {
@ -305,14 +373,10 @@ void NetworkTestDialog::start_test_bing_thread()
update_status(TEST_BING_JOB, "test bing ok"); update_status(TEST_BING_JOB, "test bing ok");
} }
m_in_testing[TEST_BING_JOB] = false; m_in_testing[TEST_BING_JOB] = false;
});
} }
void NetworkTestDialog::start_test_bambulab_thread() void NetworkTestDialog::start_test_bambulab()
{ {
if (m_in_testing[TEST_BAMBULAB_JOB]) return;
test_job[TEST_BAMBULAB_JOB] = new boost::thread([this] {
m_in_testing[TEST_BAMBULAB_JOB] = true; m_in_testing[TEST_BAMBULAB_JOB] = true;
update_status(TEST_BAMBULAB_JOB, "test bambulab start..."); update_status(TEST_BAMBULAB_JOB, "test bambulab start...");
@ -361,14 +425,10 @@ void NetworkTestDialog::start_test_bambulab_thread()
update_status(TEST_BAMBULAB_JOB, "test bambulab ok"); update_status(TEST_BAMBULAB_JOB, "test bambulab ok");
} }
m_in_testing[TEST_BAMBULAB_JOB] = false; m_in_testing[TEST_BAMBULAB_JOB] = false;
});
} }
void NetworkTestDialog::start_test_iot_thread() void NetworkTestDialog::start_test_iot()
{ {
if (m_in_testing[TEST_IOT_JOB]) return;
test_job[TEST_IOT_JOB] = new boost::thread([this] {
m_in_testing[TEST_IOT_JOB] = true; m_in_testing[TEST_IOT_JOB] = true;
update_status(TEST_IOT_JOB, "test http start..."); update_status(TEST_IOT_JOB, "test http start...");
NetworkAgent* agent = wxGetApp().getAgent(); NetworkAgent* agent = wxGetApp().getAgent();
@ -391,12 +451,10 @@ void NetworkTestDialog::start_test_iot_thread()
update_status(TEST_IOT_JOB, "please install network module first"); update_status(TEST_IOT_JOB, "please install network module first");
} }
m_in_testing[TEST_IOT_JOB] = false; m_in_testing[TEST_IOT_JOB] = false;
});
} }
void NetworkTestDialog::start_test_oss_thread() void NetworkTestDialog::start_test_oss()
{ {
test_job[TEST_OSS_JOB] = new boost::thread([this] {
m_in_testing[TEST_OSS_JOB] = true; m_in_testing[TEST_OSS_JOB] = true;
update_status(TEST_OSS_JOB, "test storage start..."); update_status(TEST_OSS_JOB, "test storage start...");
@ -439,12 +497,10 @@ void NetworkTestDialog::start_test_oss_thread()
update_status(TEST_OSS_JOB, "test storage ok"); update_status(TEST_OSS_JOB, "test storage ok");
} }
m_in_testing[TEST_OSS_JOB] = false; m_in_testing[TEST_OSS_JOB] = false;
});
} }
void NetworkTestDialog::start_test_oss_upgrade_thread() void NetworkTestDialog::start_test_oss_upgrade()
{ {
test_job[TEST_OSS_UPGRADE_JOB] = new boost::thread([this] {
m_in_testing[TEST_OSS_UPGRADE_JOB] = true; m_in_testing[TEST_OSS_UPGRADE_JOB] = true;
update_status(TEST_OSS_UPGRADE_JOB, "test storage upgrade start..."); update_status(TEST_OSS_UPGRADE_JOB, "test storage upgrade start...");
@ -489,12 +545,10 @@ void NetworkTestDialog::start_test_oss_upgrade_thread()
update_status(TEST_OSS_UPGRADE_JOB, "test storage upgrade ok"); update_status(TEST_OSS_UPGRADE_JOB, "test storage upgrade ok");
} }
m_in_testing[TEST_OSS_UPGRADE_JOB] = false; m_in_testing[TEST_OSS_UPGRADE_JOB] = false;
});
} }
void NetworkTestDialog::start_test_oss_download_thread() void NetworkTestDialog::start_test_oss_download()
{ {
test_job[TEST_OSS_DOWNLOAD_JOB] = new boost::thread([this] {
int result = 0; int result = 0;
// get country_code // get country_code
AppConfig* app_config = wxGetApp().app_config; AppConfig* app_config = wxGetApp().app_config;
@ -635,23 +689,84 @@ void NetworkTestDialog::start_test_oss_download_thread()
} }
m_in_testing[TEST_OSS_DOWNLOAD_JOB] = false; m_in_testing[TEST_OSS_DOWNLOAD_JOB] = false;
return; return;
}
void NetworkTestDialog::start_test_oss_upload()
{
;
}
void NetworkTestDialog::start_test_ping_thread()
{
test_job[TEST_PING_JOB] = new boost::thread([this] {
m_in_testing[TEST_PING_JOB] = true;
m_in_testing[TEST_PING_JOB] = false;
});
}
void NetworkTestDialog::start_test_bing_thread()
{
test_job[TEST_BING_JOB] = new boost::thread([this] {
start_test_bing();
});
}
void NetworkTestDialog::start_test_bambulab_thread()
{
if (m_in_testing[TEST_BAMBULAB_JOB]) return;
test_job[TEST_BAMBULAB_JOB] = new boost::thread([this] {
start_test_bambulab();
});
}
void NetworkTestDialog::start_test_iot_thread()
{
if (m_in_testing[TEST_IOT_JOB]) return;
test_job[TEST_IOT_JOB] = new boost::thread([this] {
start_test_iot();
});
}
void NetworkTestDialog::start_test_oss_thread()
{
test_job[TEST_OSS_JOB] = new boost::thread([this] {
start_test_oss();
});
}
void NetworkTestDialog::start_test_oss_upgrade_thread()
{
test_job[TEST_OSS_UPGRADE_JOB] = new boost::thread([this] {
start_test_oss_upgrade();
});
}
void NetworkTestDialog::start_test_oss_download_thread()
{
test_job[TEST_OSS_DOWNLOAD_JOB] = new boost::thread([this] {
start_test_oss_download();
}); });
} }
void NetworkTestDialog::start_test_oss_upload_thread() void NetworkTestDialog::start_test_oss_upload_thread()
{ {
; test_job[TEST_OSS_UPLOAD_JOB] = new boost::thread([this] {
start_test_oss_upload();
});
} }
void NetworkTestDialog::on_close(wxCloseEvent& event) void NetworkTestDialog::on_close(wxCloseEvent& event)
{ {
m_download_cancel = true; m_download_cancel = true;
m_closing = true;
for (int i = 0; i < TEST_JOB_MAX; i++) { for (int i = 0; i < TEST_JOB_MAX; i++) {
if (test_job[i]) { if (test_job[i]) {
test_job[i]->join(); test_job[i]->join();
test_job[i] = nullptr; test_job[i] = nullptr;
} }
} }
event.Skip(); event.Skip();
} }
@ -668,6 +783,8 @@ void NetworkTestDialog::set_default()
m_in_testing[i] = false; m_in_testing[i] = false;
} }
m_sequence_job = nullptr;
text_version_val->SetLabelText(get_studio_version()); text_version_val->SetLabelText(get_studio_version());
txt_sys_info_value->SetLabelText(get_os_info()); txt_sys_info_value->SetLabelText(get_os_info());
txt_dns_info_value->SetLabelText(get_dns_info()); txt_dns_info_value->SetLabelText(get_dns_info());
@ -678,7 +795,9 @@ void NetworkTestDialog::set_default()
text_oss_upgrade_value->SetLabelText(NA_STR); text_oss_upgrade_value->SetLabelText(NA_STR);
text_oss_download_value->SetLabelText(NA_STR); text_oss_download_value->SetLabelText(NA_STR);
text_oss_upload_value->SetLabelText(NA_STR); text_oss_upload_value->SetLabelText(NA_STR);
//text_ping_value->SetLabelText(NA_STR);
m_download_cancel = false; m_download_cancel = false;
m_closing = false;
} }

View File

@ -40,13 +40,15 @@ enum TestJob {
TEST_OSS_UPGRADE_JOB = 4, TEST_OSS_UPGRADE_JOB = 4,
TEST_OSS_DOWNLOAD_JOB = 5, TEST_OSS_DOWNLOAD_JOB = 5,
TEST_OSS_UPLOAD_JOB = 6, TEST_OSS_UPLOAD_JOB = 6,
TEST_JOB_MAX = 7 TEST_PING_JOB = 7,
TEST_JOB_MAX = 8
}; };
class NetworkTestDialog : public DPIDialog class NetworkTestDialog : public DPIDialog
{ {
protected: protected:
wxButton* btn_start; wxButton* btn_start;
wxButton* btn_start_sequence;
wxButton* btn_download_log; wxButton* btn_download_log;
wxStaticText* text_basic_info; wxStaticText* text_basic_info;
wxStaticText* text_version_title; wxStaticText* text_version_title;
@ -55,20 +57,29 @@ protected:
wxStaticText* txt_sys_info_value; wxStaticText* txt_sys_info_value;
wxStaticText* txt_dns_info_title; wxStaticText* txt_dns_info_title;
wxStaticText* txt_dns_info_value; wxStaticText* txt_dns_info_value;
wxButton* btn_link;
wxStaticText* text_link_title; wxStaticText* text_link_title;
wxStaticText* text_link_val; wxStaticText* text_link_val;
wxButton* btn_bing;
wxStaticText* text_bing_title; wxStaticText* text_bing_title;
wxStaticText* text_bing_val; wxStaticText* text_bing_val;
wxButton* btn_iot;
wxStaticText* text_iot_title; wxStaticText* text_iot_title;
wxStaticText* text_iot_value; wxStaticText* text_iot_value;
wxButton* btn_oss;
wxStaticText* text_oss_title; wxStaticText* text_oss_title;
wxStaticText* text_oss_value; wxStaticText* text_oss_value;
wxButton* btn_oss_upgrade;
wxStaticText* text_oss_upgrade_title; wxStaticText* text_oss_upgrade_title;
wxStaticText* text_oss_upgrade_value; wxStaticText* text_oss_upgrade_value;
wxButton* btn_oss_download;
wxStaticText* text_oss_download_title; wxStaticText* text_oss_download_title;
wxStaticText* text_oss_download_value; wxStaticText* text_oss_download_value;
wxButton* btn_oss_upload;
wxStaticText* text_oss_upload_title; wxStaticText* text_oss_upload_title;
wxStaticText* text_oss_upload_value; wxStaticText* text_oss_upload_value;
wxStaticText* text_ping_title;
wxStaticText* text_ping_value;
wxStaticText* text_result; wxStaticText* text_result;
wxTextCtrl* txt_log; wxTextCtrl* txt_log;
@ -78,8 +89,10 @@ protected:
wxBoxSizer* create_result_sizer(wxWindow* parent); wxBoxSizer* create_result_sizer(wxWindow* parent);
boost::thread* test_job[TEST_JOB_MAX]; boost::thread* test_job[TEST_JOB_MAX];
boost::thread* m_sequence_job { nullptr };
bool m_in_testing[TEST_JOB_MAX]; bool m_in_testing[TEST_JOB_MAX];
bool m_download_cancel = false; bool m_download_cancel = false;
bool m_closing = false;
void init_bind(); void init_bind();
@ -96,6 +109,7 @@ public:
wxString get_dns_info(); wxString get_dns_info();
void start_all_job(); void start_all_job();
void start_all_job_sequence();
void start_test_bing_thread(); void start_test_bing_thread();
void start_test_bambulab_thread(); void start_test_bambulab_thread();
void start_test_iot_thread(); void start_test_iot_thread();
@ -103,6 +117,15 @@ public:
void start_test_oss_upgrade_thread(); void start_test_oss_upgrade_thread();
void start_test_oss_download_thread(); void start_test_oss_download_thread();
void start_test_oss_upload_thread(); void start_test_oss_upload_thread();
void start_test_ping_thread();
void start_test_bing();
void start_test_bambulab();
void start_test_iot();
void start_test_oss();
void start_test_oss_upgrade();
void start_test_oss_download();
void start_test_oss_upload();
void on_close(wxCloseEvent& event); void on_close(wxCloseEvent& event);