Add more tests

This commit is contained in:
twinaphex 2020-07-03 01:34:54 +02:00
parent 8dd4819fd3
commit 4489e5490d
4 changed files with 155 additions and 0 deletions

View File

@ -0,0 +1,25 @@
TARGET := snprintf
CORE_DIR := .
LIBRETRO_COMM_DIR := ../../..
SOURCES_C := \
$(CORE_DIR)/snprintf_test.c \
$(LIBRETRO_COMM_DIR)/compat/compat_snprintf.c
OBJS := $(SOURCES_C:.c=.o)
CFLAGS += -Wall -pedantic -std=gnu99 -I$(LIBRETRO_COMM_DIR)/include
all: $(TARGET)
%.o: %.c
$(CC) -c -o $@ $< $(CFLAGS)
$(TARGET): $(OBJS)
$(CC) -o $@ $^ $(LDFLAGS)
clean:
rm -f $(TARGET) $(OBJS)
.PHONY: clean

View File

@ -0,0 +1,51 @@
/* Copyright (C) 2010-2020 The RetroArch team
*
* ---------------------------------------------------------------------------------------
* The following license statement only applies to this file (snprintf_test.c).
* ---------------------------------------------------------------------------------------
*
* Permission is hereby granted, free of charge,
* to any person obtaining a copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <string.h>
#include <compat/strl.h>
int main(int argc, char *argv[])
{
char s[128];
char *variable = "test1";
char *variable2 = "test2";
char *variable3 = "test3";
char *variable4 = "test4";
char *variable5 = "test5";
char *variable6 = "test6";
int ret = snprintf(s,
sizeof(s), "%s%s%s%s%s%s%s%s%s%s%s", variable,
" : ", variable2,
" : ", variable3,
" : ", variable4,
" : ", variable5,
" : ", variable6
);
fprintf(stderr, "[%d], %s\n", ret, s);
return 0;
}

View File

@ -0,0 +1,25 @@
TARGET := strl
CORE_DIR := .
LIBRETRO_COMM_DIR := ../../..
SOURCES_C := \
$(CORE_DIR)/strl_test.c \
$(LIBRETRO_COMM_DIR)/compat/compat_strl.c
OBJS := $(SOURCES_C:.c=.o)
CFLAGS += -Wall -pedantic -std=gnu99 -I$(LIBRETRO_COMM_DIR)/include
all: $(TARGET)
%.o: %.c
$(CC) -c -o $@ $< $(CFLAGS)
$(TARGET): $(OBJS)
$(CC) -o $@ $^ $(LDFLAGS)
clean:
rm -f $(TARGET) $(OBJS)
.PHONY: clean

View File

@ -0,0 +1,54 @@
/* Copyright (C) 2010-2020 The RetroArch team
*
* ---------------------------------------------------------------------------------------
* The following license statement only applies to this file (strl_test.c).
* ---------------------------------------------------------------------------------------
*
* Permission is hereby granted, free of charge,
* to any person obtaining a copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <string.h>
#include <compat/strl.h>
int main(int argc, char *argv[])
{
char s[128];
char *variable = "test1";
char *variable2 = "test2";
char *variable3 = "test3";
char *variable4 = "test4";
char *variable5 = "test5";
char *variable6 = "test6";
int ret = strlcpy(s, variable, sizeof(s));
ret = strlcat(s, " : ", sizeof(s));
ret = strlcat(s, variable2,sizeof(s));
ret = strlcat(s, " : ", sizeof(s));
ret = strlcat(s, variable3,sizeof(s));
ret = strlcat(s, " : ", sizeof(s));
ret = strlcat(s, variable4,sizeof(s));
ret = strlcat(s, " : ", sizeof(s));
ret = strlcat(s, variable5,sizeof(s));
ret = strlcat(s, " : ", sizeof(s));
ret = strlcat(s, variable6,sizeof(s));
fprintf(stderr, "[%d], %s\n", ret, s);
return 0;
}