#include "sqs_map.h"
#include <assert.h>
#include <stdio.h>
#include <string.h>
static void ok(int32_t status){if(status){fprintf(stderr,"%s\n",sqsm_map_last_error());assert(!status);}}
int main(void){
 sqsm_map_t map=0;sqsm_map_bytes_t state={0},pixels={0};
 assert(sqsm_map_runtime_flags()&SQSM_MAP_DISPLAY_DENSITY);
 ok(sqsm_map_create(320,240,&map));
 ok(sqsm_map_set_viewport(map,320,240,2.));
 ok(sqsm_map_state_json(map,&state));
 printf("state: %.*s\n",(int)state.len,state.data);
 ok(sqsm_map_render_rgba(map,&pixels));assert(pixels.len==640u*480u*4u);
 ok(sqsm_map_resize(map,320,240)); /* Existing callers keep DPR1. */
 assert(pixels.len==640u*480u*4u); /* Already owned frame remains valid. */
 ok(sqsm_map_destroy(map));
 ok(sqsm_map_bytes_free(state.allocation));ok(sqsm_map_bytes_free(pixels.allocation));
 puts("display density C host: PASS");return 0;
}
