testing: freebsd on cirrus
[awesomized/libmemcached] / test / lib / random.cpp
index 3681fcc8727a3aaeec768f5abe27eee25c6ce883..50cc53db508ed219da16f00d9538554f774f6cf0 100644 (file)
@@ -5,7 +5,7 @@
 
 unsigned random_port() {
   retry:
-  auto port = random_num(2<<9, 2<<15);
+  auto port = random_num(5000, 32000);
   Connection conn(port);
 
   if (!conn.open()) {
@@ -62,3 +62,21 @@ pair<string, string> random_ascii_pair(size_t minlen, size_t maxlen) {
       random_ascii_string(random_num(minlen, maxlen))
   };
 }
+
+#include <climits>
+
+char random_binary() {
+  return random_num(CHAR_MIN, CHAR_MAX);
+}
+
+string random_binary_string(size_t len) {
+  string s;
+  s.reserve(len + 1);
+
+  for (size_t rem = 0; rem < len; ++rem) {
+    s += random_binary();
+  }
+  s[len] = 0;
+
+  return s;
+}