12#include "gtest/gtest.h"
85 :
_app(
Moose::createMooseApp(app_name, 0, nullptr)),
107 mesh_params.
set<
unsigned int>(
"nx") = 2;
108 mesh_params.
set<
unsigned int>(
"ny") = 2;
109 mesh_params.
set<
unsigned int>(
"nz") = 2;
132 template <
typename T>
136 std::shared_ptr<MooseApp>
_app;
145 const std::string & name,
148 auto objects =
_fe_problem->addObject<T>(type, name, params);
149 mooseAssert(objects.size() == 1,
"Doesn't work with threading");
Specialized factory for generic Action System objects.
Base class for building basic unit tests for MOOSE actions.
void buildMinimalObjects()
Some base objects we often need to have the action act on them.
ActionFactory & _action_factory
std::shared_ptr< MooseApp > _app
virtual void buildActions()=0
Override this to create the action(s) you want to test.
std::unique_ptr< MooseMesh > _mesh
T & addObject(const std::string &type, const std::string &name, InputParameters ¶ms)
Convenience routine for adding an object in an Actions test.
std::shared_ptr< FEProblem > _fe_problem
ActionUnitTest(const std::string &app_name)
virtual void runActions()=0
Override this to make the actions execute NOTE: many tasks will auto-register their task at creation,...
virtual void createQRules(libMesh::QuadratureType type, libMesh::Order order, libMesh::Order volume_order=libMesh::INVALID_ORDER, libMesh::Order face_order=libMesh::INVALID_ORDER, SubdomainID block=Moose::ANY_BLOCK_ID, bool allow_negative_qweights=true)
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Generic factory class for build all sorts of objects.
std::shared_ptr< MooseObject > create(const std::string &obj_name, const std::string &name, const InputParameters ¶meters, THREAD_ID tid=0, bool print_deprecated=true)
InputParameters getValidParams(const std::string &name) const
Get valid parameters for the object.
std::unique_ptr< MooseObject > createUnique(const std::string &obj_name, const std::string &name, const InputParameters ¶meters, THREAD_ID tid=0, bool print_deprecated=true)
Build an object (must be registered) - THIS METHOD IS DEPRECATED (Use create<T>())
static const std::string name_param
The name of the parameter that contains the object name.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
void setMeshBase(std::unique_ptr< MeshBase > mesh_base)
Method to set the mesh_base object.
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...