< Summary - Backend C Tests - Coverage Report

Information
Class: test_maintenance_handler_c
Assembly: src.backend.tests.unit
File(s): C:\Users\yagiz\Desktop\Project\smart-maintenance-suite\src\backend\tests\unit\test_maintenance_handler.c
Line coverage
100%
Covered lines: 32
Uncovered lines: 0
Coverable lines: 32
Total lines: 44
Line coverage: 100%
Branch coverage
50%
Covered branches: 8
Total branches: 16
Branch coverage: 50%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Coverage history

Coverage history 0 25 50 75 100

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
test_serialize_maintenance50%00100%
test_handle_maintenance_get50%00100%
test_handle_maintenance_not_allowed50%00100%
main100%00100%

File(s)

C:\Users\yagiz\Desktop\Project\smart-maintenance-suite\src\backend\tests\unit\test_maintenance_handler.c

#LineLine coverage
 1#include "../../api/handlers/maintenance_handler.h"
 2#include "../../api/http_server.h"
 3
 4#include <assert.h>
 5#include <string.h>
 6#include <stdio.h>
 7#include <stdlib.h>
 8
 19void test_serialize_maintenance() {
 110  char *json = serialize_maintenance_to_json();
 111  assert(json != NULL);
 112  assert(strstr(json, "Routine oil change") != NULL);
 113  assert(strstr(json, "completed") != NULL);
 114  free(json);
 115  printf("[PASS] serialize_maintenance_to_json\n");
 116}
 17
 118void test_handle_maintenance_get() {
 119  HttpRequest req = {0};
 120  HttpResponse res = {0};
 121  strcpy(req.method, "GET");
 122  handle_maintenance_request(&req, &res);
 123  assert(res.status_code == 200);
 124  assert(strcmp(res.content_type, "application/json") == 0);
 125  assert(strstr(res.body, "Routine oil change") != NULL);
 126  printf("[PASS] handle_maintenance_request GET\n");
 127}
 28
 129void test_handle_maintenance_not_allowed() {
 130  HttpRequest req = {0};
 131  HttpResponse res = {0};
 132  strcpy(req.method, "POST");  // GET dışında bir şey
 133  handle_maintenance_request(&req, &res);
 134  assert(res.status_code == 405);
 135  assert(strstr(res.body, "Only GET supported") != NULL);
 136  printf("[PASS] handle_maintenance_request 405\n");
 137}
 38
 139int main() {
 140  test_serialize_maintenance();
 141  test_handle_maintenance_get();
 142  test_handle_maintenance_not_allowed();
 143  return 0;
 44}