From 12e46b938d76030069a47de63bf1b5f3f9a59ed7 Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Wed, 18 Aug 2021 16:42:24 -0600 Subject: [PATCH] Add test. --- tests/grid/accessor_set_boundary_id.cc | 65 ++++++++++++++++++++++ tests/grid/accessor_set_boundary_id.output | 6 ++ 2 files changed, 71 insertions(+) create mode 100644 tests/grid/accessor_set_boundary_id.cc create mode 100644 tests/grid/accessor_set_boundary_id.output diff --git a/tests/grid/accessor_set_boundary_id.cc b/tests/grid/accessor_set_boundary_id.cc new file mode 100644 index 0000000000..eaaa256e5d --- /dev/null +++ b/tests/grid/accessor_set_boundary_id.cc @@ -0,0 +1,65 @@ +// --------------------------------------------------------------------- +// +// Copyright (C) 2018 - 2020 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. +// +// --------------------------------------------------------------------- + + + +// TriaAccessor<0,dim,spacedim>::set_boundary_id() and +// TriaAccessor<0,dim,spacedim>::set_all_boundary_ids() were marked as +// 'const', in contrast to the corresponding functions of faces of +// higher-dimensional objects. This prevented us from writing loops +// over all faces where the 'face' object was marked as 'const'. + +#include + +#include +#include +#include +#include + +#include "../tests.h" + + + +template +void +test() +{ + Triangulation tria; + GridGenerator::hyper_cube(tria); + + std::map::face_iterator, int> mymap; + + for (auto &cell : tria.active_cell_iterators()) + for (const auto &face : cell->face_iterators()) + { + face->set_all_boundary_ids(2); + if (face->at_boundary()) + face->set_boundary_id(1); + } + deallog << "OK" << std::endl; +} + + +int +main() +{ + initlog(); + + test<1, 1>(); + test<1, 2>(); + test<2, 2>(); + test<2, 3>(); + test<3, 3>(); +} diff --git a/tests/grid/accessor_set_boundary_id.output b/tests/grid/accessor_set_boundary_id.output new file mode 100644 index 0000000000..c9bdf33b16 --- /dev/null +++ b/tests/grid/accessor_set_boundary_id.output @@ -0,0 +1,6 @@ + +DEAL::OK +DEAL::OK +DEAL::OK +DEAL::OK +DEAL::OK -- 2.39.5