OSDN Git Service

2011-01-20 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / testsuite / ext / pb_ds / regression / hash_no_data_map_rand.cc
1 // { dg-require-time "" }
2 // This can take long on simulators, timing out the test.
3 // { dg-options "-DITERATIONS=5" { target simulator } }
4 // { dg-timeout-factor 2.0 }
5
6 // -*- C++ -*-
7
8 // Copyright (C) 2005, 2006, 2009, 2011 Free Software Foundation, Inc.
9 //
10 // This file is part of the GNU ISO C++ Library.  This library is free
11 // software; you can redistribute it and/or modify it under the terms
12 // of the GNU General Public License as published by the Free Software
13 // Foundation; either version 3, or (at your option) any later
14 // version.
15
16 // This library is distributed in the hope that it will be useful, but
17 // WITHOUT ANY WARRANTY; without even the implied warranty of
18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19 // General Public License for more details.
20
21 // You should have received a copy of the GNU General Public License
22 // along with this library; see the file COPYING3.  If not see
23 // <http://www.gnu.org/licenses/>.
24
25
26 // Copyright (C) 2004 Ami Tavory and Vladimir Dreizin, IBM-HRL.
27
28 // Permission to use, copy, modify, sell, and distribute this software
29 // is hereby granted without fee, provided that the above copyright
30 // notice appears in all copies, and that both that copyright notice
31 // and this permission notice appear in supporting documentation. None
32 // of the above authors, nor IBM Haifa Research Laboratories, make any
33 // representation about the suitability of this software for any
34 // purpose. It is provided "as is" without express or implied
35 // warranty.
36
37 /**
38  * @file hash_no_data_map_rand_regression_test.cpp
39  * Contains a random-operation test for maps and sets.
40  */
41
42 #define PB_DS_REGRESSION
43
44 #include <regression/rand/assoc/rand_regression_test.hpp>
45 #include <regression/common_type.hpp>
46
47 #ifndef ITERATIONS
48 # ifdef _GLIBCXX_DEBUG
49 #  define ITERATIONS 100
50 # else
51 #  define ITERATIONS 5000
52 #endif
53 #endif
54
55 #ifndef KEYS
56 # ifdef _GLIBCXX_DEBUG
57 #  define KEYS 200
58 # else
59 #  define KEYS 10000
60 # endif
61 #endif
62
63 int
64 main(int argc, char* a_p_argv[])
65 {
66   using namespace __gnu_pbds::test;
67   typedef hash_set_tl_t map_tl_t;
68
69   return rand_regression_test(ITERATIONS, KEYS,
70                               "hash_no_data_map_rand_regression_test",
71                               map_tl_t());
72 }