myxce/src/lib/testsuite/test_wobj.c
2026-03-06 18:20:30 +08:00

60 lines
1.7 KiB
C

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <unity/unity.h>
#include "kvmgr.h"
#include "utils.h"
#include "wobj.h"
#include "xstring.h"
static void test_worker_create(void)
{
int rc;
kvmgr_params_t params = { .key_type = KVMGR_KEY_STRING,
.nslots = 32,
.delta = 32,
.datakiller = dereference };
var workermgr;
hostattrs_t attrs1 = { .hosttype = "LINUX64",
.hostmodel = "linux-gnu-x86_64",
.cpufactor = 100.0,
.maxcpus = 5,
.maxmem = 65536.0,
.maxswap = 65536.0,
.maxtmp = 0.0,
.ndisks = 2 };
xce_worker_t w1 = {
.name = "worker1",
.attrs = &attrs1,
};
worker_t* w = NULL;
rc = xstring_table_init(32);
TEST_ASSERT_TRUE(rc >= 0);
workermgr = makeInstance(&xkvmgr_type, &params);
TEST_ASSERT_TRUE(workermgr != NULL);
w = makeWorker(workermgr, &w1);
TEST_ASSERT_TRUE(w != NULL);
TEST_ASSERT_TRUE(EQUAL_STRING(w->host.name, w1.name)
&& EQUAL_STRING(w->host.attrs->hosttype, attrs1.hosttype)
&& EQUAL_STRING(w->host.attrs->hostmodel, attrs1.hostmodel)
&& (w->host.attrs->cpufactor == attrs1.cpufactor)
&& (w->host.attrs->maxcpus == attrs1.maxcpus));
destroy(workermgr);
xstring_table_fini();
}
void test_wobj(void)
{
printf("\n>> worker obj test\n\n");
RUN_TEST(test_worker_create);
}