From e45dc4e4e44b1adb9765a6f851f76493256c44c1 Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Thu, 19 Aug 2021 17:19:34 -0600 Subject: [PATCH] Add a test. --- tests/grid/dof_accessor_1d_01.cc | 76 ++++++++++++++++++++++++++++ tests/grid/dof_accessor_1d_01.output | 7 +++ 2 files changed, 83 insertions(+) create mode 100644 tests/grid/dof_accessor_1d_01.cc create mode 100644 tests/grid/dof_accessor_1d_01.output diff --git a/tests/grid/dof_accessor_1d_01.cc b/tests/grid/dof_accessor_1d_01.cc new file mode 100644 index 0000000000..de4a2a02f3 --- /dev/null +++ b/tests/grid/dof_accessor_1d_01.cc @@ -0,0 +1,76 @@ +// --------------------------------------------------------------------- +// +// 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. +// +// --------------------------------------------------------------------- + + + +// DoFHandler<1,spacedim>::face_iterator objects could not be +// default-constructed + +#include + +#include +#include + +#include + +#include +#include +#include +#include + +#include "../tests.h" + + + +template +void +test() +{ + Triangulation tria; + GridGenerator::hyper_cube(tria); + tria.refine_global(1); + + FE_Q fe(1); + DoFHandler dof_handler(tria); + dof_handler.distribute_dofs(fe); + + // The following call used to fail in the default constructor of the + // face iterator: + typename DoFHandler::face_iterator x; + + + for (const auto &cell : dof_handler.active_cell_iterators()) + // And as a consequence, this also used to fail because it first + // constructs an array of iterators and then puts values into + // them: + for (const auto &face : cell->face_iterators()) + ; + + deallog << "OK" << std::endl; +} + + +int +main() +{ + initlog(); + + test<1, 1>(); + test<1, 2>(); + test<1, 3>(); + test<2, 2>(); + test<2, 3>(); + test<3, 3>(); +} diff --git a/tests/grid/dof_accessor_1d_01.output b/tests/grid/dof_accessor_1d_01.output new file mode 100644 index 0000000000..0aa61ff573 --- /dev/null +++ b/tests/grid/dof_accessor_1d_01.output @@ -0,0 +1,7 @@ + +DEAL::OK +DEAL::OK +DEAL::OK +DEAL::OK +DEAL::OK +DEAL::OK -- 2.39.5