Prevent deletion of shots having same prefix as test name

Summary: Signed-off-by: kabeer khan <kabeer.khan@samsung.com>

Reviewers: tasn

Differential Revision: https://phab.enlightenment.org/D2629
master
kabeer khan 8 years ago committed by Tom Hacohen
parent 773e539083
commit bb051fce2b
  1. 1
      src/bin/Makefile.am
  2. 13
      src/bin/run_test.c
  3. 1
      src/lib/Makefile.am
  4. 7
      src/lib/exactness_private.h
  5. 5
      src/lib/tsuite_evas_hook.c

@ -14,5 +14,6 @@ exactness_LDADD = \
exactness_CFLAGS = \
@EFL_CFLAGS@ \
-I$(top_srcdir)/src/lib \
-DPACKAGE_LIBDIR=\"$(libdir)\" \
-DPACKAGE_DATADIR=\"$(datadir)\"

@ -7,6 +7,7 @@
#include "run_test.h"
#include "list_file.h"
#include "exactness_config.h"
#include "exactness_private.h"
#define LIBEXACTNESS_PATH PACKAGE_LIBDIR "/exactness/libexactness.so"
@ -117,12 +118,18 @@ _is_equal(const char *filename1, const char *filename2)
return !memcmp(res1, res2, _DIGEST_SIZE);
}
static Eina_Bool
_check_prefix(const char *prefix, const char *name)
{
unsigned int len = strlen(prefix);
return (!strncmp(name, prefix, len) && (strlen(name) > len) && (name[len] == SHOT_DELIMITER));
}
static void
_compare_list_cb(const char *name, const char *path EINA_UNUSED, void *data)
{
const char *prefix = data;
unsigned int len = strlen(prefix);
if (!strncmp(name, prefix, len) && (strlen(name) > len) && (name[len] == '+'))
if (_check_prefix(prefix, name))
{
char filename1[EXACTNESS_PATH_MAX], filename2[EXACTNESS_PATH_MAX];
snprintf(filename1, EXACTNESS_PATH_MAX, "%s/%s/%s", exactness_config.dest_dir, CURRENT_SUBDIR, name);
@ -160,7 +167,7 @@ static void
_prefix_rm_cb(const char *name, const char *path, void *data)
{
const char *prefix = data;
if (!strncmp(name, prefix, strlen(prefix)))
if (_check_prefix(prefix, name))
{
char buf[EXACTNESS_PATH_MAX];
snprintf(buf, EXACTNESS_PATH_MAX, "%s/%s", path, name);

@ -9,6 +9,7 @@ AM_CPPFLAGS = \
EXTRA_DIST = \
tsuite_file_data.h
exactness_private.h
pkgdir = $(libdir)/exactness
pkg_LTLIBRARIES = libexactness.la

@ -0,0 +1,7 @@
#ifndef _EXACTNESS_PRIVATE_H
#define _EXACTNESS_PRIVATE_H
/* private header */
#define SHOT_DELIMITER '+'
#endif

@ -10,6 +10,7 @@
#include <sys/types.h>
#include <dlfcn.h>
#include "tsuite_file_data.h"
#include "exactness_private.h"
#define TSUITE_MAX_PATH 1024
#define SHOT_KEY_STR "F2"
@ -203,8 +204,8 @@ tsuite_shot_do(char *name, Evas *e)
if (_hook_setting->dest_dir)
sprintf(filename, "%s/", _hook_setting->dest_dir);
sprintf(filename + dir_name_len, "%s+%03d%s", _hook_setting->test_name,
ts.serial, IMAGE_FILENAME_EXT);
sprintf(filename + dir_name_len, "%s%c%03d%s", _hook_setting->test_name,
SHOT_DELIMITER, ts.serial, IMAGE_FILENAME_EXT);
}
_tsuite_verbosef("Shot taken (%s).\n", filename);

Loading…
Cancel
Save