Coverage Report

Created: 2026-08-14 06:04

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/open5gs/lib/sbi/openapi/model/odb_data.c
Line
Count
Source
1
2
#include <stdlib.h>
3
#include <string.h>
4
#include <stdio.h>
5
#include "odb_data.h"
6
7
OpenAPI_odb_data_t *OpenAPI_odb_data_create(
8
    OpenAPI_roaming_odb_e roaming_odb
9
)
10
0
{
11
0
    OpenAPI_odb_data_t *odb_data_local_var = ogs_malloc(sizeof(OpenAPI_odb_data_t));
12
0
    ogs_assert(odb_data_local_var);
13
14
0
    odb_data_local_var->roaming_odb = roaming_odb;
15
16
0
    return odb_data_local_var;
17
0
}
18
19
void OpenAPI_odb_data_free(OpenAPI_odb_data_t *odb_data)
20
0
{
21
0
    OpenAPI_lnode_t *node = NULL;
22
23
0
    if (NULL == odb_data) {
24
0
        return;
25
0
    }
26
0
    ogs_free(odb_data);
27
0
}
28
29
cJSON *OpenAPI_odb_data_convertToJSON(OpenAPI_odb_data_t *odb_data)
30
0
{
31
0
    cJSON *item = NULL;
32
0
    OpenAPI_lnode_t *node = NULL;
33
34
0
    if (odb_data == NULL) {
35
0
        ogs_error("OpenAPI_odb_data_convertToJSON() failed [OdbData]");
36
0
        return NULL;
37
0
    }
38
39
0
    item = cJSON_CreateObject();
40
0
    if (odb_data->roaming_odb != OpenAPI_roaming_odb_NULL) {
41
0
    if (cJSON_AddStringToObject(item, "roamingOdb", OpenAPI_roaming_odb_ToString(odb_data->roaming_odb)) == NULL) {
42
0
        ogs_error("OpenAPI_odb_data_convertToJSON() failed [roaming_odb]");
43
0
        goto end;
44
0
    }
45
0
    }
46
47
0
end:
48
0
    return item;
49
0
}
50
51
OpenAPI_odb_data_t *OpenAPI_odb_data_parseFromJSON(cJSON *odb_dataJSON)
52
0
{
53
0
    OpenAPI_odb_data_t *odb_data_local_var = NULL;
54
0
    OpenAPI_lnode_t *node = NULL;
55
0
    cJSON *roaming_odb = NULL;
56
0
    OpenAPI_roaming_odb_e roaming_odbVariable = 0;
57
0
    roaming_odb = cJSON_GetObjectItemCaseSensitive(odb_dataJSON, "roamingOdb");
58
0
    if (roaming_odb) {
59
0
    if (!cJSON_IsString(roaming_odb)) {
60
0
        ogs_error("OpenAPI_odb_data_parseFromJSON() failed [roaming_odb]");
61
0
        goto end;
62
0
    }
63
0
    roaming_odbVariable = OpenAPI_roaming_odb_FromString(roaming_odb->valuestring);
64
0
    }
65
66
0
    odb_data_local_var = OpenAPI_odb_data_create (
67
0
        roaming_odb ? roaming_odbVariable : 0
68
0
    );
69
70
0
    return odb_data_local_var;
71
0
end:
72
0
    return NULL;
73
0
}
74
75
OpenAPI_odb_data_t *OpenAPI_odb_data_copy(OpenAPI_odb_data_t *dst, OpenAPI_odb_data_t *src)
76
0
{
77
0
    cJSON *item = NULL;
78
0
    char *content = NULL;
79
80
0
    ogs_assert(src);
81
0
    item = OpenAPI_odb_data_convertToJSON(src);
82
0
    if (!item) {
83
0
        ogs_error("OpenAPI_odb_data_convertToJSON() failed");
84
0
        return NULL;
85
0
    }
86
87
0
    content = cJSON_Print(item);
88
0
    cJSON_Delete(item);
89
90
0
    if (!content) {
91
0
        ogs_error("cJSON_Print() failed");
92
0
        return NULL;
93
0
    }
94
95
0
    item = cJSON_Parse(content);
96
0
    ogs_free(content);
97
0
    if (!item) {
98
0
        ogs_error("cJSON_Parse() failed");
99
0
        return NULL;
100
0
    }
101
102
0
    OpenAPI_odb_data_free(dst);
103
0
    dst = OpenAPI_odb_data_parseFromJSON(item);
104
0
    cJSON_Delete(item);
105
106
0
    return dst;
107
0
}
108