~ubuntu-branches/ubuntu/trusty/erlang/trusty

« back to all changes in this revision

Viewing changes to erts/emulator/test/nif_SUITE_data/testcase_driver.h

  • Committer: Bazaar Package Importer
  • Author(s): Clint Byrum
  • Date: 2011-05-05 15:48:43 UTC
  • mfrom: (3.5.13 sid)
  • Revision ID: james.westby@ubuntu.com-20110505154843-0om6ekzg6m7ugj27
Tags: 1:14.b.2-dfsg-3ubuntu1
* Merge from debian unstable.  Remaining changes:
  - Drop libwxgtk2.8-dev build dependency. Wx isn't in main, and not
    supposed to.
  - Drop erlang-wx binary.
  - Drop erlang-wx dependency from -megaco, -common-test, and -reltool, they
    do not really need wx. Also drop it from -debugger; the GUI needs wx,
    but it apparently has CLI bits as well, and is also needed by -megaco,
    so let's keep the package for now.
  - debian/patches/series: Do what I meant, and enable build-options.patch
    instead.
* Additional changes:
  - Drop erlang-wx from -et
* Dropped Changes:
  - patches/pcre-crash.patch: CVE-2008-2371: outer level option with
    alternatives caused crash. (Applied Upstream)
  - fix for ssl certificate verification in newSSL: 
    ssl_cacertfile_fix.patch (Applied Upstream)
  - debian/patches/series: Enable native.patch again, to get stripped beam
    files and reduce the package size again. (build-options is what
    actually accomplished this)
  - Remove build-options.patch on advice from upstream and because it caused
    odd build failures.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* ``The contents of this file are subject to the Erlang Public License,
 
2
 * Version 1.1, (the "License"); you may not use this file except in
 
3
 * compliance with the License. You should have received a copy of the
 
4
 * Erlang Public License along with this software. If not, it can be
 
5
 * retrieved via the world wide web at http://www.erlang.org/.
 
6
 * 
 
7
 * Software distributed under the License is distributed on an "AS IS"
 
8
 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
 
9
 * the License for the specific language governing rights and limitations
 
10
 * under the License.
 
11
 * 
 
12
 * The Initial Developer of the Original Code is Ericsson Utvecklings AB.
 
13
 * Portions created by Ericsson are Copyright 1999, Ericsson Utvecklings
 
14
 * AB. All Rights Reserved.''
 
15
 * 
 
16
 *     $Id$
 
17
 */
 
18
 
 
19
#ifndef TESTCASE_DRIVER_H__
 
20
#define TESTCASE_DRIVER_H__
 
21
 
 
22
#include "erl_nif.h"
 
23
#include <stdlib.h>
 
24
#include <stdio.h>
 
25
 
 
26
typedef struct {
 
27
    char *testcase_name;
 
28
    char *command;
 
29
    int command_len;
 
30
    void *extra;
 
31
} TestCaseState_t;
 
32
 
 
33
#define ASSERT_CLNUP(TCS, B, CLN)                                       \
 
34
do {                                                                    \
 
35
    if (!(B)) {                                                         \
 
36
        CLN;                                                            \
 
37
        testcase_assertion_failed((TCS), __FILE__, __LINE__, #B);       \
 
38
    }                                                                   \
 
39
} while (0)
 
40
 
 
41
#define ASSERT(TCS, B) ASSERT_CLNUP(TCS, B, (void) 0)
 
42
 
 
43
 
 
44
void testcase_printf(TestCaseState_t *tcs, char *frmt, ...);
 
45
void testcase_succeeded(TestCaseState_t *tcs, char *frmt, ...);
 
46
void testcase_skipped(TestCaseState_t *tcs, char *frmt, ...);
 
47
void testcase_failed(TestCaseState_t *tcs, char *frmt, ...);
 
48
int testcase_assertion_failed(TestCaseState_t *tcs, char *file, int line,
 
49
                              char *assertion);
 
50
void *testcase_alloc(size_t size);
 
51
void *testcase_realloc(void *ptr, size_t size);
 
52
void testcase_free(void *ptr);
 
53
 
 
54
 
 
55
char *testcase_name(void);
 
56
void testcase_run(TestCaseState_t *tcs);
 
57
void testcase_cleanup(TestCaseState_t *tcs);
 
58
 
 
59
#endif