Пример #1
0
             $field = Key($data[$row]);
             if (strcmp(strval($data[$row][$field]), strval($value[$column]))) {
                 $pass = 0;
                 echo "FAILED!{$eol}";
                 $failed++;
                 echo "Test {$test}: the query row field \"{$field}\" of for row {$row} was returned in \"" . $value[$column] . "\" unlike \"" . $data[$row][$field] . "\" as expected{$eol}";
                 break 2;
             }
         }
     }
 }
 if ($success && $pass) {
     for (Reset($data[0]), $column = 0; $column < count($data[0]); Next($data[0]), $column++) {
         $field = Key($data[0]);
         $type = $types[$column];
         if (!($success = MetabaseQueryColumn($database, "SELECT {$field},user_id FROM users ORDER BY 2", $value, $type))) {
             break;
         }
         for ($row = 0; $row < $total_rows; $row++) {
             if (strcmp(strval($data[$row][$field]), strval($value[$row]))) {
                 $pass = 0;
                 echo "FAILED!{$eol}";
                 $failed++;
                 echo "Test {$test}: the query column field \"{$field}\" of type {$type} for row {$row} was returned in \"" . $value[$row] . "\" unlike \"" . $data[$row][$field] . "\" as expected{$eol}";
                 break 2;
             }
         }
     }
 }
 if ($success && $pass) {
     for ($fields = "", Reset($data[0]), $column = 0; $column < count($data[0]); Next($data[0]), $column++) {
Пример #2
0
 $data["access_date"] = MetabaseToday();
 $data["access_time"] = MetabaseTime();
 $data["approved"] = MetabaseNow();
 for ($v = 0, Reset($values); $v < count($values); Next($values), $v++) {
     $data["user_name"] = $values[$data["user_id"] = Key($values)];
     if (!InsertTestValues($database, $prepared_query, $data)) {
         $success = 0;
         break;
     }
 }
 MetabaseFreePreparedQuery($database, $prepared_query);
 if ($success) {
     $queries = array(MetabaseBeginsWith($database, "%") => array(1), MetabaseEndsWith($database, "%") => array(3), MetabaseContains($database, "%") => array(1, 2, 3, 9), "NOT " . MetabaseContains($database, "%") => array(4, 5, 6, 7, 8), MetabaseBeginsWith($database, "_") => array(5), MetabaseEndsWith($database, "_") => array(7), MetabaseContains($database, "_") => array(5, 6, 7, 9), "NOT " . MetabaseContains($database, "_") => array(1, 2, 3, 4, 8), MetabaseMatchPattern($database, array("begin", "%", "end")) => array(2, 4, 6, 8), MetabaseMatchPattern($database, array("begin", "_", "end")) => array(2, 6), MetabaseMatchPattern($database, array("%", "%", "end")) => array(1), MetabaseMatchPattern($database, array("_", "%", "end")) => array(5), MetabaseMatchPattern($database, array(" _@%\\ ]['?*")) => array(9));
     for ($q = 0, Reset($queries); $q < count($queries); Next($queries), $q++) {
         $condition = Key($queries);
         if (!MetabaseQueryColumn($database, "SELECT user_id FROM users WHERE user_name " . $condition . " ORDER BY user_id", $rows, "integer")) {
             $success = 0;
             break;
         }
         if (count($queries[$condition]) != count($rows)) {
             $pass = 0;
         } else {
             for ($v = 0; $v < count($rows); $v++) {
                 if ($queries[$condition][$v] != $rows[$v]) {
                     $pass = 0;
                     break;
                 }
             }
         }
         if (!$pass) {
             $pass = 0;