From: Wolfgang Bangerth Date: Tue, 20 Jun 2023 21:42:02 +0000 (-0600) Subject: Add a test. X-Git-Tag: relicensing~853^2~1 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=892763cf076f1ecc79ffc42b7b561b52e6e6959c;p=dealii.git Add a test. --- diff --git a/tests/base/index_set_32.cc b/tests/base/index_set_32.cc new file mode 100644 index 0000000000..30a2da2ab1 --- /dev/null +++ b/tests/base/index_set_32.cc @@ -0,0 +1,50 @@ +// --------------------------------------------------------------------- +// +// Copyright (C) 2009 - 2018 by the deal.II authors +// +// This file is part of the deal.II library. +// +// The deal.II library is free software; you can use it, redistribute +// it, and/or modify it under the terms of the GNU Lesser General +// Public License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// The full text of the license can be found in the file LICENSE.md at +// the top level directory of deal.II. +// +// --------------------------------------------------------------------- + + +// Test how IndexSet::add_indices deals with duplicate indices to be added + +#include + +#include "../tests.h" + + +void +test() +{ + IndexSet index_set(10); + + { + const unsigned int array[] = {2, 2, 2, 3, 4, 6, 8, 8}; + index_set.add_indices((const unsigned int *)array, + array + sizeof(array) / sizeof(array[0])); + } + + Assert(index_set.is_contiguous() == false, ExcInternalError()); + + for (unsigned int i = 0; i < index_set.size(); ++i) + deallog << i << ' ' << (index_set.is_element(i) ? "true" : "false") + << std::endl; +} + + + +int +main() +{ + initlog(); + + test(); +} diff --git a/tests/base/index_set_32.output b/tests/base/index_set_32.output new file mode 100644 index 0000000000..6a5229442e --- /dev/null +++ b/tests/base/index_set_32.output @@ -0,0 +1,11 @@ + +DEAL::0 false +DEAL::1 false +DEAL::2 true +DEAL::3 true +DEAL::4 true +DEAL::5 false +DEAL::6 true +DEAL::7 false +DEAL::8 true +DEAL::9 false