~ubuntu-branches/ubuntu/trusty/syslog-ng/trusty-proposed

« back to all changes in this revision

Viewing changes to modules/afmongodb/libmongo-client/tests/unit/bson/bson_cursor_get_javascript_w_scope.c

  • Committer: Package Import Robot
  • Author(s): Laszlo Boszormenyi (GCS), Gergely Nagy
  • Date: 2011-10-11 14:30:48 UTC
  • mfrom: (1.3.7)
  • Revision ID: package-import@ubuntu.com-20111011143048-r1iljux9xbvj3lwh
Tags: 3.3.1.dfsg-1
* New upstream release with important fixes from upstream git tree with
  non-free manpages removed.
* Drop syslog-ng.conf(5) (closes: #496521).
* syslog-ng(8) is generated, and does not mention -Q anymore
  (closes: #616069).
* Supports CAP_SYSLOG on recent kernels (closes: #630172).
* Does not use g_timeout_add_seconds anymore (closes: #609154).

[ Gergely Nagy <algernon@madhouse-project.org> ]
* Update debian/copyright to DEP-5 format.
* Simplified the logrotate file by merging identical entries.
* Include local configuration files from /etc/syslog-ng/conf.d/ (Closes:
  #609050).
* Update syslog-ng.conf to be fully 3.3 compliant.
* Compress both source and binaries (except the syslog-ng meta
  package) with xz, instead of gzip.
* Use dpkg triggers to restart syslog-ng when appropriate.
* Include DFSG-free manual pages for all binaries.
* Build with Hardening enabled.
* Mention syslog(3) in /etc/default/syslog-ng, instead of
  <linux/kernel.h> (Closes: #608605)
* Support 'status' in the init script.
  Patch from Peter Eisentraut <petere@debian.org> (Closes: #644458)
* Build-Depend on libevtlog-dev (>= 0.2.12-5~) for correct shlibs.
* Use [linux-any] in Build-Depends instead of hardcoded links.
  (Closes: #634715)
* Use $SYSLOGNG_OPTS in the init script when reloading syslog-ng.
  (Closes: #589081)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include "tap.h"
 
2
#include "test.h"
 
3
#include "bson.h"
 
4
 
 
5
#include <string.h>
 
6
 
 
7
void
 
8
test_bson_cursor_get_javascript_w_scope (void)
 
9
{
 
10
  bson *b, *scope = NULL, *valid;
 
11
  bson_cursor *c;
 
12
  const gchar *s = "deadbeef";
 
13
 
 
14
  ok (bson_cursor_get_javascript_w_scope (NULL, &s, &scope) == FALSE,
 
15
      "bson_cursor_get_javascript_w_scope() with a NULL cursor fails");
 
16
 
 
17
  b = test_bson_generate_full ();
 
18
  c = bson_cursor_new (b);
 
19
 
 
20
  ok (bson_cursor_get_javascript_w_scope (c, NULL, &scope) == FALSE,
 
21
      "bson_cursor_get_javascript_w_scope() with a NULL js destination fails");
 
22
  ok (bson_cursor_get_javascript_w_scope (c, &s, NULL) == FALSE,
 
23
      "bson_cursor_get_javascript_w_scope() with a NULL scope destinatin fails");
 
24
  ok (bson_cursor_get_javascript_w_scope (c, &s, &scope) == FALSE,
 
25
      "bson_cursor_get_javascript_w_scope() at the initial position fails");
 
26
  is (s, "deadbeef",
 
27
      "destination remains unchanged after failed cursor operations");
 
28
  bson_cursor_free (c);
 
29
 
 
30
  c = bson_find (b, "print");
 
31
  ok (bson_cursor_get_javascript_w_scope (c, &s, &scope),
 
32
      "bson_cursor_get_javascript_w_scope() works");
 
33
  is (s, "alert (v);",
 
34
      "bson_cursor_get_javascript_w_scope() returns the correct result");
 
35
 
 
36
  valid = bson_new ();
 
37
  bson_append_string (valid, "v", "hello world", -1);
 
38
  bson_finish (valid);
 
39
 
 
40
  cmp_ok (bson_size (scope), "==", bson_size (valid),
 
41
          "The returned scope's length is correct");
 
42
  ok (memcmp (bson_data (scope), bson_data (valid),
 
43
              bson_size (scope)) == 0,
 
44
      "The returned scope is correct");
 
45
  bson_free (valid);
 
46
 
 
47
  bson_cursor_next (c);
 
48
  ok (bson_cursor_get_javascript_w_scope (c, &s, &scope) == FALSE,
 
49
      "bson_cursor_get_javascript_w_scope() should fail when the cursor "
 
50
      "points to non-javascript data");
 
51
 
 
52
  bson_cursor_free (c);
 
53
  bson_free (b);
 
54
  bson_free (scope);
 
55
}
 
56
 
 
57
RUN_TEST (10, bson_cursor_get_javascript_w_scope);