~mm-yuhu/gearmand/server-funcs

« back to all changes in this revision

Viewing changes to tests/test_gearmand.c

  • Committer: Brian Aker
  • Date: 2010-02-16 18:34:41 UTC
  • mfrom: (319.1.3 gearmand-newtrunk)
  • Revision ID: brian@gaz-20100216183441-b5jtofqgt9o3xyco
Adding tests for round robin.

Show diffs side-by-side

added added

removed removed

Lines of Context:
46
46
  pid_t gearmand_pid;
47
47
  gearmand_st *gearmand;
48
48
  gearman_conf_st conf;
 
49
  gearman_conf_module_st module;
 
50
  const char *name;
 
51
  const char *value;
 
52
  bool round_robin= false;
49
53
 
50
54
  gearmand_pid= fork();
51
55
  assert(gearmand_pid != -1);
74
78
    assert(ret == GEARMAN_SUCCESS);
75
79
#endif
76
80
 
 
81
    (void)gearman_conf_module_create(&conf, &module, NULL);
 
82
 
 
83
#ifndef MCO
 
84
#define MCO(__name, __short, __value, __help) \
 
85
      gearman_conf_module_add_option(&module, __name, __short, __value, __help);
 
86
#endif
 
87
 
 
88
  MCO("round-robin", 'R', NULL, "Assign work in round-robin order per worker"
 
89
      "connection. The default is to assign work in the order of functions "
 
90
      "added by the worker.")
 
91
 
77
92
    ret= gearman_conf_parse_args(&conf, argc, argv);
78
93
    assert(ret == GEARMAN_SUCCESS);
79
94
 
 
95
    /* Check for option values that were given. */
 
96
    while (gearman_conf_module_value(&module, &name, &value))
 
97
    {
 
98
      if (!strcmp(name, "round-robin"))
 
99
        round_robin++;
 
100
    }
 
101
 
80
102
    gearmand= gearmand_create(NULL, port);
81
103
    assert(gearmand != NULL);
82
104
 
 
105
    gearmand_set_round_robin(gearmand, round_robin);
 
106
 
83
107
    if (queue_type != NULL)
84
108
    {
85
109
      assert(argc);
121
145
      }
122
146
    }
123
147
 
 
148
    
 
149
 
124
150
    ret= gearmand_run(gearmand);
125
151
    assert(ret != GEARMAN_SUCCESS);
126
152