testfilters.c File Reference

#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <libxml/list.h>
#include "testrunnerlite.h"
#include "testfilters.h"
#include "utils.h"
#include "log.h"

Go to the source code of this file.

Functions

LOCAL void filter_delete (xmlLinkPtr lk)
LOCAL void filter_value_delete (xmlLinkPtr lk)
LOCAL int filter_list_compare (const void *data0, const void *data1)
LOCAL int validate_and_add_filter (char *key, char *values)
LOCAL int filter_exec (const void *data, const void *user)
LOCAL int filter_value_print (const void *data, const void *user)
LOCAL int manual_filter (test_filter *filter, const void *data)
LOCAL int test_case_filter (test_filter *filter, const void *data)
LOCAL int test_set_filter (test_filter *filter, const void *data)
LOCAL int feature_filter (test_filter *filter, const void *data)
LOCAL int type_filter (test_filter *filter, const void *data)
LOCAL int requirement_filter (test_filter *filter, const void *data)
LOCAL xmlListPtr string2valuelist (char *str)
LOCAL int filter_value_list_compare (const void *data0, const void *data1)
LOCAL int filter_add (test_filter *filter)
void init_filters ()
int parse_filter_string (char *filters)
int filter_suite (td_suite *s)
int filter_set (td_set *s)
int filter_case (td_case *c)
void cleanup_filters ()

Variables

LOCAL xmlListPtr suite_filter_list = NULL
LOCAL xmlListPtr set_filter_list = NULL
LOCAL xmlListPtr case_filter_list = NULL


Function Documentation

void cleanup_filters (  ) 

Free the memory allocated for filters

Definition at line 565 of file testfilters.c.

LOCAL int feature_filter ( test_filter filter,
const void *  data 
)

Filter based on feature

Parameters:
data test set data
filter filter used
Returns:
0 on when data passes the filter, 1 if the data is to be filtered

Definition at line 378 of file testfilters.c.

LOCAL int filter_add ( test_filter filter  ) 

Check that filter type seems correct and adds to correc list

Parameters:
filter filter
Returns:
0 on success, 1 on failure

Definition at line 158 of file testfilters.c.

int filter_case ( td_case c  ) 

Do filtering on case

Parameters:
c case to be checked against filters
Returns:
!= 0 if the case is filtered, 0 if not.

Definition at line 557 of file testfilters.c.

LOCAL void filter_delete ( xmlLinkPtr  lk  ) 

Deallocator for test_filters called by xmlListDelete

Parameters:
lk list iterator

Definition at line 112 of file testfilters.c.

LOCAL int filter_exec ( const void *  data,
const void *  user 
)

Execute filters in the list

Parameters:
data test filter
user test suite, test set or test case
Returns:
0 if data is to be filtered

Definition at line 304 of file testfilters.c.

LOCAL int filter_list_compare ( const void *  data0,
const void *  data1 
)

Comparison function for list without ordering

Parameters:
data0 string to compare - not used
data1 string to compare - not used
Returns:
0 always

Definition at line 135 of file testfilters.c.

int filter_set ( td_set s  ) 

Do filtering on set

Parameters:
s set to be checked against filters
Returns:
!= 0 if the set is filtered, 0 if not.

Definition at line 547 of file testfilters.c.

int filter_suite ( td_suite s  ) 

Do filtering on suite level

Parameters:
s suite to be checked against filters
Returns:
!= 0 if the suite is filtered, 0 if not.

Definition at line 537 of file testfilters.c.

LOCAL void filter_value_delete ( xmlLinkPtr  lk  ) 

Deallocator for test_filters value list called by xmlListDelete

Parameters:
lk list iterator

Definition at line 124 of file testfilters.c.

LOCAL int filter_value_list_compare ( const void *  data0,
const void *  data1 
)

Comparison function for value list

Parameters:
data0 string to compare
data1 string to compare
Returns:
0 always

Definition at line 147 of file testfilters.c.

LOCAL int filter_value_print ( const void *  data,
const void *  user 
)

Execute filters in the list

Parameters:
data test filter value
user not used
Returns:
1 always

Definition at line 316 of file testfilters.c.

void init_filters (  ) 

Initialize filter list

Definition at line 459 of file testfilters.c.

LOCAL int manual_filter ( test_filter filter,
const void *  data 
)

Filter based on manual flag

Parameters:
data test case data
filter filter used
Returns:
0 on when data passes the filter, 1 if the data is to be filtered

Definition at line 330 of file testfilters.c.

int parse_filter_string ( char *  filters  ) 

Parses the filter string given from commandline and saves the data in to list of filters

Parameters:
filters filter string
Returns:
0 on success, 1 on parsing failure

Definition at line 471 of file testfilters.c.

LOCAL int requirement_filter ( test_filter filter,
const void *  data 
)

Filter based on requirements

Parameters:
data test case data
filter filter used
Returns:
0 on when data passes the filter, 1 if the data is to be filtered

Definition at line 428 of file testfilters.c.

LOCAL xmlListPtr string2valuelist ( char *  str  ) 

Create list of values in a string of form 'value,"val ue",value'

Parameters:
str string containing the values separeted by ','
Returns:
list on success, NULL on failure

Definition at line 218 of file testfilters.c.

LOCAL int test_case_filter ( test_filter filter,
const void *  data 
)

Filter based on test case name

Parameters:
data test case data
filter filter used
Returns:
0 on when data passes the filter, != 0 if the data is to be filtered

Definition at line 342 of file testfilters.c.

LOCAL int test_set_filter ( test_filter filter,
const void *  data 
)

Filter based on test set name

Parameters:
data test case data
filter filter used
Returns:
0 on when data passes the filter, 1 if the data is to be filtered

Definition at line 360 of file testfilters.c.

LOCAL int type_filter ( test_filter filter,
const void *  data 
)

Filter based on type

Parameters:
data test case data
filter filter used
Returns:
0 on when data passes the filter, 1 if the data is to be filtered

Definition at line 410 of file testfilters.c.

LOCAL int validate_and_add_filter ( char *  key,
char *  values 
)

Validate filter semantics, parse value list and add filter to correct list

Parameters:
key filter key
values list of values
Returns:
0 on success, 1 on failure

Definition at line 266 of file testfilters.c.


Variable Documentation

LOCAL xmlListPtr case_filter_list = NULL

Definition at line 64 of file testfilters.c.

LOCAL xmlListPtr set_filter_list = NULL

Definition at line 63 of file testfilters.c.

LOCAL xmlListPtr suite_filter_list = NULL

Definition at line 62 of file testfilters.c.


Generated on Wed Nov 10 14:13:01 2010 for testrunner-lite by  doxygen 1.5.6