From 888395e23213da8b8d4064b525b3f0ead3217f40 Mon Sep 17 00:00:00 2001 From: "W. Spencer Smith" <smiths@mcmaster.ca> Date: Wed, 25 Apr 2018 16:40:20 -0400 Subject: [PATCH] Addition of second A4 sample solution by Chris Schankula --- Assignments/A4/A4Soln-CS/Makefile | 82 + Assignments/A4/A4Soln-CS/bin/Test.txt | 1 + Assignments/A4/A4Soln-CS/bin/test | Bin 0 -> 2349132 bytes .../A4/{A4Soln => A4Soln-CS}/catch/catch.h | 0 Assignments/A4/A4Soln-CS/doxConfig | 2499 +++ Assignments/A4/A4Soln-CS/experiment/main.cpp | 64 + Assignments/A4/A4Soln-CS/include/CardADT.h | 54 + .../A4/A4Soln-CS/include/CardDeckUtils.h | 34 + Assignments/A4/A4Soln-CS/include/CardStack.h | 19 + Assignments/A4/A4Soln-CS/include/CardTypes.h | 27 + Assignments/A4/A4Soln-CS/include/Exceptions.h | 49 + Assignments/A4/A4Soln-CS/include/GameBoard.h | 128 + .../A4/A4Soln-CS/include/GameBoardTypes.h | 16 + Assignments/A4/A4Soln-CS/include/Stack.h | 89 + .../A4/A4Soln-CS/report/FreeCellBoard.jpg | Bin 0 -> 57272 bytes Assignments/A4/A4Soln-CS/report/report.pdf | Bin 0 -> 162137 bytes Assignments/A4/A4Soln-CS/report/report.tex | 753 + Assignments/A4/A4Soln-CS/src/CardADT.cpp | 29 + .../A4/A4Soln-CS/src/CardDeckUtils.cpp | 44 + Assignments/A4/A4Soln-CS/src/GameBoard.cpp | 297 + .../A4/{A4Soln => A4Soln-CS}/src/README.md | 0 Assignments/A4/A4Soln-CS/src/Stack.cpp | 63 + Assignments/A4/A4Soln-CS/test/testCardADT.cpp | 46 + .../A4/A4Soln-CS/test/testCardDeckUtils.cpp | 50 + .../A4/A4Soln-CS/test/testGameBoard.cpp | 818 + Assignments/A4/A4Soln-CS/test/testStack.cpp | 293 + .../{A4Soln => A4Soln-CS}/test/testmain.cpp | 0 Assignments/A4/{A4Soln => A4Soln-EH}/Makefile | 0 .../A4/{A4Soln => A4Soln-EH}/bin/.gitkeep | 0 Assignments/A4/A4Soln-EH/catch/catch.h | 12796 ++++++++++++++++ .../A4/{A4Soln => A4Soln-EH}/doxConfig | 0 .../{A4Soln => A4Soln-EH}/experiment/main.cpp | 0 .../{A4Soln => A4Soln-EH}/include/CardADT.h | 0 .../include/Exceptions.h | 0 .../{A4Soln => A4Soln-EH}/include/GameADT.h | 0 .../{A4Soln => A4Soln-EH}/include/GameTypes.h | 0 .../{A4Soln => A4Soln-EH}/include/StackADT.h | 0 .../spec/NomenclatureDiagram.png | Bin .../A4/{A4Soln => A4Soln-EH}/spec/spec.pdf | Bin .../A4/{A4Soln => A4Soln-EH}/spec/spec.tex | 0 .../A4/{A4Soln => A4Soln-EH}/src/CardADT.cpp | 0 .../A4/{A4Soln => A4Soln-EH}/src/GameADT.cpp | 0 Assignments/A4/A4Soln-EH/src/README.md | 1 + .../A4/{A4Soln => A4Soln-EH}/src/StackADT.cpp | 0 .../test/testCardADT.cpp | 0 .../test/testGameADT.cpp | 0 .../test/testStackADT.cpp | 0 Assignments/A4/A4Soln-EH/test/testmain.cpp | 5 + 48 files changed, 18257 insertions(+) create mode 100644 Assignments/A4/A4Soln-CS/Makefile create mode 100644 Assignments/A4/A4Soln-CS/bin/Test.txt create mode 100755 Assignments/A4/A4Soln-CS/bin/test rename Assignments/A4/{A4Soln => A4Soln-CS}/catch/catch.h (100%) create mode 100644 Assignments/A4/A4Soln-CS/doxConfig create mode 100644 Assignments/A4/A4Soln-CS/experiment/main.cpp create mode 100644 Assignments/A4/A4Soln-CS/include/CardADT.h create mode 100644 Assignments/A4/A4Soln-CS/include/CardDeckUtils.h create mode 100644 Assignments/A4/A4Soln-CS/include/CardStack.h create mode 100644 Assignments/A4/A4Soln-CS/include/CardTypes.h create mode 100644 Assignments/A4/A4Soln-CS/include/Exceptions.h create mode 100644 Assignments/A4/A4Soln-CS/include/GameBoard.h create mode 100644 Assignments/A4/A4Soln-CS/include/GameBoardTypes.h create mode 100644 Assignments/A4/A4Soln-CS/include/Stack.h create mode 100644 Assignments/A4/A4Soln-CS/report/FreeCellBoard.jpg create mode 100644 Assignments/A4/A4Soln-CS/report/report.pdf create mode 100644 Assignments/A4/A4Soln-CS/report/report.tex create mode 100644 Assignments/A4/A4Soln-CS/src/CardADT.cpp create mode 100644 Assignments/A4/A4Soln-CS/src/CardDeckUtils.cpp create mode 100644 Assignments/A4/A4Soln-CS/src/GameBoard.cpp rename Assignments/A4/{A4Soln => A4Soln-CS}/src/README.md (100%) create mode 100644 Assignments/A4/A4Soln-CS/src/Stack.cpp create mode 100644 Assignments/A4/A4Soln-CS/test/testCardADT.cpp create mode 100644 Assignments/A4/A4Soln-CS/test/testCardDeckUtils.cpp create mode 100644 Assignments/A4/A4Soln-CS/test/testGameBoard.cpp create mode 100644 Assignments/A4/A4Soln-CS/test/testStack.cpp rename Assignments/A4/{A4Soln => A4Soln-CS}/test/testmain.cpp (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/Makefile (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/bin/.gitkeep (100%) create mode 100644 Assignments/A4/A4Soln-EH/catch/catch.h rename Assignments/A4/{A4Soln => A4Soln-EH}/doxConfig (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/experiment/main.cpp (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/include/CardADT.h (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/include/Exceptions.h (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/include/GameADT.h (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/include/GameTypes.h (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/include/StackADT.h (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/spec/NomenclatureDiagram.png (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/spec/spec.pdf (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/spec/spec.tex (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/src/CardADT.cpp (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/src/GameADT.cpp (100%) create mode 100644 Assignments/A4/A4Soln-EH/src/README.md rename Assignments/A4/{A4Soln => A4Soln-EH}/src/StackADT.cpp (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/test/testCardADT.cpp (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/test/testGameADT.cpp (100%) rename Assignments/A4/{A4Soln => A4Soln-EH}/test/testStackADT.cpp (100%) create mode 100644 Assignments/A4/A4Soln-EH/test/testmain.cpp diff --git a/Assignments/A4/A4Soln-CS/Makefile b/Assignments/A4/A4Soln-CS/Makefile new file mode 100644 index 00000000..4494e3e3 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/Makefile @@ -0,0 +1,82 @@ +SRC_DIRS := src +C_SRCS := $(foreach srcdir,$(SRC_DIRS),$(wildcard $(srcdir)/*.c)) +CXX_SRCS := $(foreach srcdir,$(SRC_DIRS),$(wildcard $(srcdir)/*.cpp)) +C_OBJS := ${C_SRCS:.c=.o} +CXX_OBJS := ${CXX_SRCS:.cpp=.o} +OBJS := $(C_OBJS) $(CXX_OBJS) +INCLUDE_DIRS := include +LIBRARY_DIRS := +LIBRARIES := + +prog_NAME := experiment +prog_DIR := bin +prog_FULL := $(prog_DIR)/$(prog_NAME) +prog_SRC_DIRS := experiment +prog_C_SRCS := $(foreach srcdir,$(prog_SRC_DIRS),$(wildcard $(srcdir)/*.c)) +prog_CXX_SRCS := $(foreach srcdir,$(prog_SRC_DIRS),$(wildcard $(srcdir)/*.cpp)) +prog_C_OBJS := ${prog_C_SRCS:.c=.o} +prog_CXX_OBJS := ${prog_CXX_SRCS:.cpp=.o} +prog_OBJS := $(prog_C_OBJS) $(prog_CXX_OBJS) +prog_INCLUDE_DIRS := +prog_LIBRARY_DIRS := +prog_LIBRARIES := + +test_NAME := test +test_DIR := bin +test_FULL := $(test_DIR)/$(test_NAME) +test_SRC_DIRS := test +test_C_SRCS := $(foreach srcdir,$(test_SRC_DIRS),$(wildcard $(srcdir)/*.c)) +test_CXX_SRCS := $(foreach srcdir,$(test_SRC_DIRS),$(wildcard $(srcdir)/*.cpp)) +test_C_OBJS := ${test_C_SRCS:.c=.o} +test_CXX_OBJS := ${test_CXX_SRCS:.cpp=.o} +test_OBJS := $(test_C_OBJS) $(test_CXX_OBJS) +test_INCLUDE_DIRS := catch +test_LIBRARY_DIRS := +test_LIBRARIES := + +all_OBJS := $(OBJS) $(prog_OBJS) $(test_OBJS) +DEP := $(all_OBJS:%.o=%.d) + +CXXFLAGS += -std=c++11 +CXXFLAGS += $(foreach includedir,$(INCLUDE_DIRS),-I$(includedir)) +LDFLAGS += $(foreach librarydir,$(LIBRARY_DIRS),-L$(librarydir)) +LDFLAGS += $(foreach library,$(LIBRARIES),-l$(library)) + +.PHONY: test experiment doc clean + +test: CXXFLAGS += $(foreach includedir,$(test_INCLUDE_DIRS),-I$(includedir)) +test: LDFLAGS += $(foreach librarydir,$(test_LIBRARY_DIRS),-L$(librarydir)) +test: LDFLAGS += $(foreach library,$(test_LIBRARIES),-l$(library)) + +experiment: CXXFLAGS += $(foreach includedir,$(prog_INCLUDE_DIRS),-I$(includedir)) +experiment: LDFLAGS += $(foreach librarydir,$(prog_LIBRARY_DIRS),-L$(librarydir)) +experiment: LDFLAGS += $(foreach library,$(prog_LIBRARIES),-l$(library)) + +test: $(test_FULL) + ./$(test_FULL) + +experiment: $(prog_FULL) + ./$(prog_FULL) + +doc: + doxygen doxConfig + cd latex;make;cd .. + +$(test_FULL): $(test_OBJS) $(OBJS) + $(LINK.cc) $^ -o $@ + +$(prog_FULL): $(prog_OBJS) $(OBJS) + $(LINK.cc) $^ -o $@ + +-include $(DEP) + +%.o: %.cpp + $(CXX) $(CXXFLAGS) -MMD -c $< -o $@ + +clean: + @- $(RM) $(prog_FULL) + @- $(RM) $(prog_OBJS) + @- $(RM) $(test_FULL) + @- $(RM) $(test_OBJS) + @- $(RM) $(OBJS) + @- $(RM) $(DEP) diff --git a/Assignments/A4/A4Soln-CS/bin/Test.txt b/Assignments/A4/A4Soln-CS/bin/Test.txt new file mode 100644 index 00000000..b0bd650d --- /dev/null +++ b/Assignments/A4/A4Soln-CS/bin/Test.txt @@ -0,0 +1 @@ +The executables created will appear here. \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/bin/test b/Assignments/A4/A4Soln-CS/bin/test new file mode 100755 index 0000000000000000000000000000000000000000..1f5f7473772eb8837446c283226fd47b691f774a GIT binary patch literal 2349132 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%0Dl_6asv1pvyg$uc=(0+ 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%0Ad$&p;f=f4 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�nBEdHRpm>%(>P0|J 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
k2A1;C<flF3u>2a=a|wLTdWilC*R<XqwhvQu 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≫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%0A_vSK>4Uf9zlt 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%0D!n{j;onb<##=YQ%rg@29X;~T}+tK^l( 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 UKkEXVxow0jCSE$AKh=N!3%mHiBme*a literal 0 HcmV?d00001 diff --git a/Assignments/A4/A4Soln/catch/catch.h b/Assignments/A4/A4Soln-CS/catch/catch.h similarity index 100% rename from Assignments/A4/A4Soln/catch/catch.h rename to Assignments/A4/A4Soln-CS/catch/catch.h diff --git a/Assignments/A4/A4Soln-CS/doxConfig b/Assignments/A4/A4Soln-CS/doxConfig new file mode 100644 index 00000000..b4984cc9 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/doxConfig @@ -0,0 +1,2499 @@ +# Doxyfile 1.8.13 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project. +# +# All text after a double hash (##) is considered a comment and is placed in +# front of the TAG it is preceding. +# +# All text after a single hash (#) is considered a comment and will be ignored. +# The format is: +# TAG = value [value, ...] +# For lists, items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (\" \"). + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all text +# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv +# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv +# for the list of possible encodings. +# The default value is: UTF-8. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by +# double-quotes, unless you are using Doxywizard) that should identify the +# project for which the documentation is generated. This name is used in the +# title of most generated pages and in a few other places. +# The default value is: My Project. + +PROJECT_NAME = "Assignment 3" + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. This +# could be handy for archiving the generated documentation or if some version +# control system is used. + +PROJECT_NUMBER = + +# Using the PROJECT_BRIEF tag one can provide an optional one line description +# for a project that appears at the top of each page and should give viewer a +# quick idea about the purpose of the project. Keep the description short. + +PROJECT_BRIEF = + +# With the PROJECT_LOGO tag one can specify a logo or an icon that is included +# in the documentation. The maximum height of the logo should not exceed 55 +# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy +# the logo to the output directory. + +PROJECT_LOGO = + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path +# into which the generated documentation will be written. If a relative path is +# entered, it will be relative to the location where doxygen was started. If +# left blank the current directory will be used. + +OUTPUT_DIRECTORY = + +# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- +# directories (in 2 levels) under the output directory of each output format and +# will distribute the generated files over these directories. Enabling this +# option can be useful when feeding doxygen a huge amount of source files, where +# putting all generated files in the same directory would otherwise causes +# performance problems for the file system. +# The default value is: NO. + +CREATE_SUBDIRS = NO + +# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII +# characters to appear in the names of generated files. If set to NO, non-ASCII +# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode +# U+3044. +# The default value is: NO. + +ALLOW_UNICODE_NAMES = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, +# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), +# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, +# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), +# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, +# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, +# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, +# Ukrainian and Vietnamese. +# The default value is: English. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member +# descriptions after the members that are listed in the file and class +# documentation (similar to Javadoc). Set to NO to disable this. +# The default value is: YES. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief +# description of a member or function before the detailed description +# +# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. +# The default value is: YES. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator that is +# used to form the text in various listings. Each string in this list, if found +# as the leading text of the brief description, will be stripped from the text +# and the result, after processing the whole list, is used as the annotated +# text. Otherwise, the brief description is used as-is. If left blank, the +# following values are used ($name is automatically replaced with the name of +# the entity):The $name class, The $name widget, The $name file, is, provides, +# specifies, contains, represents, a, an and the. + +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# doxygen will generate a detailed section even if there is only a brief +# description. +# The default value is: NO. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. +# The default value is: NO. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path +# before files name in the file list and in the header files. If set to NO the +# shortest path that makes the file name unique will be used +# The default value is: YES. + +FULL_PATH_NAMES = YES + +# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. +# Stripping is only done if one of the specified strings matches the left-hand +# part of the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the path to +# strip. +# +# Note that you can specify absolute paths here, but also relative paths, which +# will be relative from the directory where doxygen is started. +# This tag requires that the tag FULL_PATH_NAMES is set to YES. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the +# path mentioned in the documentation of a class, which tells the reader which +# header file to include in order to use a class. If left blank only the name of +# the header file containing the class definition is used. Otherwise one should +# specify the list of include paths that are normally passed to the compiler +# using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but +# less readable) file names. This can be useful is your file systems doesn't +# support long names like on DOS, Mac, or CD-ROM. +# The default value is: NO. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the +# first line (until the first dot) of a Javadoc-style comment as the brief +# description. If set to NO, the Javadoc-style will behave just like regular Qt- +# style comments (thus requiring an explicit @brief command for a brief +# description.) +# The default value is: NO. + +JAVADOC_AUTOBRIEF = NO + +# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first +# line (until the first dot) of a Qt-style comment as the brief description. If +# set to NO, the Qt-style will behave just like regular Qt-style comments (thus +# requiring an explicit \brief command for a brief description.) +# The default value is: NO. + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a +# multi-line C++ special comment block (i.e. a block of //! or /// comments) as +# a brief description. This used to be the default behavior. The new default is +# to treat a multi-line C++ comment block as a detailed description. Set this +# tag to YES if you prefer the old behavior instead. +# +# Note that setting this tag to YES also means that rational rose comments are +# not recognized any more. +# The default value is: NO. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the +# documentation from any documented member that it re-implements. +# The default value is: YES. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new +# page for each member. If set to NO, the documentation of a member will be part +# of the file/class/namespace that contains it. +# The default value is: NO. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen +# uses this value to replace tabs by spaces in code fragments. +# Minimum value: 1, maximum value: 16, default value: 4. + +TAB_SIZE = 4 + +# This tag can be used to specify a number of aliases that act as commands in +# the documentation. An alias has the form: +# name=value +# For example adding +# "sideeffect=@par Side Effects:\n" +# will allow you to put the command \sideeffect (or @sideeffect) in the +# documentation, which will result in a user-defined paragraph with heading +# "Side Effects:". You can put \n's in the value part of an alias to insert +# newlines. + +ALIASES = + +# This tag can be used to specify a number of word-keyword mappings (TCL only). +# A mapping has the form "name=value". For example adding "class=itcl::class" +# will allow you to use the command class in the itcl::class meaning. + +TCL_SUBST = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources +# only. Doxygen will then generate output that is more tailored for C. For +# instance, some of the names that are used will be different. The list of all +# members will be omitted, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or +# Python sources only. Doxygen will then generate output that is more tailored +# for that language. For instance, namespaces will be presented as packages, +# qualified scopes will look different, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources. Doxygen will then generate output that is tailored for Fortran. +# The default value is: NO. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for VHDL. +# The default value is: NO. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it +# parses. With this tag you can assign which parser to use for a given +# extension. Doxygen has a built-in mapping, but you can override or extend it +# using this tag. The format is ext=language, where ext is a file extension, and +# language is one of the parsers supported by doxygen: IDL, Java, Javascript, +# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: +# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: +# Fortran. In the later case the parser tries to guess whether the code is fixed +# or free formatted code, this is the default for Fortran type files), VHDL. For +# instance to make doxygen treat .inc files as Fortran files (default is PHP), +# and .f files as C (default is Fortran), use: inc=Fortran f=C. +# +# Note: For files without extension you can use no_extension as a placeholder. +# +# Note that for custom extensions you also need to set FILE_PATTERNS otherwise +# the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments +# according to the Markdown format, which allows for more readable +# documentation. See http://daringfireball.net/projects/markdown/ for details. +# The output of markdown processing is further processed by doxygen, so you can +# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in +# case of backward compatibilities issues. +# The default value is: YES. + +MARKDOWN_SUPPORT = YES + +# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up +# to that level are automatically included in the table of contents, even if +# they do not have an id attribute. +# Note: This feature currently applies only to Markdown headings. +# Minimum value: 0, maximum value: 99, default value: 0. +# This tag requires that the tag MARKDOWN_SUPPORT is set to YES. + +TOC_INCLUDE_HEADINGS = 0 + +# When enabled doxygen tries to link words that correspond to documented +# classes, or namespaces to their corresponding documentation. Such a link can +# be prevented in individual cases by putting a % sign in front of the word or +# globally by setting AUTOLINK_SUPPORT to NO. +# The default value is: YES. + +AUTOLINK_SUPPORT = YES + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should set this +# tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); +# versus func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. +# The default value is: NO. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. +# The default value is: NO. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: +# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen +# will parse them like normal C++ but will assume all classes use public instead +# of private inheritance when no explicit protection keyword is present. +# The default value is: NO. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate +# getter and setter methods for a property. Setting this option to YES will make +# doxygen to replace the get and set methods by a property in the documentation. +# This will only work if the methods are indeed getting or setting a simple +# type. If this is not the case, or you want to show the methods anyway, you +# should set this option to NO. +# The default value is: YES. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. +# The default value is: NO. + +DISTRIBUTE_GROUP_DOC = NO + +# If one adds a struct or class to a group and this option is enabled, then also +# any nested class or struct is added to the same group. By default this option +# is disabled and one has to add nested compounds explicitly via \ingroup. +# The default value is: NO. + +GROUP_NESTED_COMPOUNDS = NO + +# Set the SUBGROUPING tag to YES to allow class member groups of the same type +# (for instance a group of public functions) to be put as a subgroup of that +# type (e.g. under the Public Functions section). Set it to NO to prevent +# subgrouping. Alternatively, this can be done per class using the +# \nosubgrouping command. +# The default value is: YES. + +SUBGROUPING = YES + +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions +# are shown inside the group in which they are included (e.g. using \ingroup) +# instead of on a separate page (for HTML and Man pages) or section (for LaTeX +# and RTF). +# +# Note that this feature does not work in combination with +# SEPARATE_MEMBER_PAGES. +# The default value is: NO. + +INLINE_GROUPED_CLASSES = NO + +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions +# with only public data fields or simple typedef fields will be shown inline in +# the documentation of the scope in which they are defined (i.e. file, +# namespace, or group documentation), provided this scope is documented. If set +# to NO, structs, classes, and unions are shown on a separate page (for HTML and +# Man pages) or section (for LaTeX and RTF). +# The default value is: NO. + +INLINE_SIMPLE_STRUCTS = NO + +# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or +# enum is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically be +# useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. +# The default value is: NO. + +TYPEDEF_HIDES_STRUCT = NO + +# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This +# cache is used to resolve symbols given their name and scope. Since this can be +# an expensive process and often the same symbol appears multiple times in the +# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small +# doxygen will become slower. If the cache is too large, memory is wasted. The +# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range +# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 +# symbols. At the end of a run doxygen will report the cache usage and suggest +# the optimal cache size from a speed point of view. +# Minimum value: 0, maximum value: 9, default value: 0. + +LOOKUP_CACHE_SIZE = 0 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in +# documentation are documented, even if no documentation was available. Private +# class members and static file members will be hidden unless the +# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. +# Note: This will also disable the warnings about undocumented members that are +# normally produced when WARNINGS is set to YES. +# The default value is: NO. + +EXTRACT_ALL = NO + +# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will +# be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal +# scope will be included in the documentation. +# The default value is: NO. + +EXTRACT_PACKAGE = NO + +# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be +# included in the documentation. +# The default value is: NO. + +EXTRACT_STATIC = NO + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined +# locally in source files will be included in the documentation. If set to NO, +# only classes defined in header files are included. Does not have any effect +# for Java sources. +# The default value is: YES. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. If set to YES, local methods, +# which are defined in the implementation section but not in the interface are +# included in the documentation. If set to NO, only methods in the interface are +# included. +# The default value is: NO. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base name of +# the file that contains the anonymous namespace. By default anonymous namespace +# are hidden. +# The default value is: NO. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all +# undocumented members inside documented classes or files. If set to NO these +# members will be included in the various overviews, but no documentation +# section is generated. This option has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. If set +# to NO, these classes will be included in the various overviews. This option +# has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend +# (class|struct|union) declarations. If set to NO, these declarations will be +# included in the documentation. +# The default value is: NO. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any +# documentation blocks found inside the body of a function. If set to NO, these +# blocks will be appended to the function's detailed documentation block. +# The default value is: NO. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation that is typed after a +# \internal command is included. If the tag is set to NO then the documentation +# will be excluded. Set it to YES to include the internal documentation. +# The default value is: NO. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file +# names in lower-case letters. If set to YES, upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. +# The default value is: system dependent. + +CASE_SENSE_NAMES = NO + +# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with +# their full class and namespace scopes in the documentation. If set to YES, the +# scope will be hidden. +# The default value is: NO. + +HIDE_SCOPE_NAMES = NO + +# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will +# append additional text to a page's title, such as Class Reference. If set to +# YES the compound reference will be hidden. +# The default value is: NO. + +HIDE_COMPOUND_REFERENCE= NO + +# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of +# the files that are included by a file in the documentation of that file. +# The default value is: YES. + +SHOW_INCLUDE_FILES = YES + +# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each +# grouped member an include statement to the documentation, telling the reader +# which file to include in order to use the member. +# The default value is: NO. + +SHOW_GROUPED_MEMB_INC = NO + +# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include +# files with double quotes in the documentation rather than with sharp brackets. +# The default value is: NO. + +FORCE_LOCAL_INCLUDES = NO + +# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the +# documentation for inline members. +# The default value is: YES. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the +# (detailed) documentation of file and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. +# The default value is: YES. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief +# descriptions of file, namespace and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. Note that +# this will also influence the order of the classes in the class list. +# The default value is: NO. + +SORT_BRIEF_DOCS = NO + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the +# (brief and detailed) documentation of class members so that constructors and +# destructors are listed first. If set to NO the constructors will appear in the +# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. +# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief +# member documentation. +# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting +# detailed member documentation. +# The default value is: NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy +# of group names into alphabetical order. If set to NO the group names will +# appear in their defined order. +# The default value is: NO. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by +# fully-qualified names, including namespaces. If set to NO, the class list will +# be sorted only by class name, not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the alphabetical +# list. +# The default value is: NO. + +SORT_BY_SCOPE_NAME = NO + +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper +# type resolution of all parameters of a function it will reject a match between +# the prototype and the implementation of a member function even if there is +# only one candidate or it is obvious which candidate to choose by doing a +# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still +# accept a match between prototype and implementation in such cases. +# The default value is: NO. + +STRICT_PROTO_MATCHING = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo +# list. This list is created by putting \todo commands in the documentation. +# The default value is: YES. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test +# list. This list is created by putting \test commands in the documentation. +# The default value is: YES. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug +# list. This list is created by putting \bug commands in the documentation. +# The default value is: YES. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO) +# the deprecated list. This list is created by putting \deprecated commands in +# the documentation. +# The default value is: YES. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional documentation +# sections, marked by \if <section_label> ... \endif and \cond <section_label> +# ... \endcond blocks. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the +# initial value of a variable or macro / define can have for it to appear in the +# documentation. If the initializer consists of more lines than specified here +# it will be hidden. Use a value of 0 to hide initializers completely. The +# appearance of the value of individual variables and macros / defines can be +# controlled using \showinitializer or \hideinitializer command in the +# documentation regardless of this setting. +# Minimum value: 0, maximum value: 10000, default value: 30. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at +# the bottom of the documentation of classes and structs. If set to YES, the +# list will mention the files that were used to generate the documentation. +# The default value is: YES. + +SHOW_USED_FILES = YES + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This +# will remove the Files entry from the Quick Index and from the Folder Tree View +# (if specified). +# The default value is: YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces +# page. This will remove the Namespaces entry from the Quick Index and from the +# Folder Tree View (if specified). +# The default value is: YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command command input-file, where command is the value of the +# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided +# by doxygen. Whatever the program writes to standard output is used as the file +# version. For an example see the documentation. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed +# by doxygen. The layout file controls the global structure of the generated +# output files in an output format independent way. To create the layout file +# that represents doxygen's defaults, run doxygen with the -l option. You can +# optionally specify a file name after the option, if omitted DoxygenLayout.xml +# will be used as the name of the layout file. +# +# Note that if you run doxygen from a directory containing a file called +# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE +# tag is left empty. + +LAYOUT_FILE = + +# The CITE_BIB_FILES tag can be used to specify one or more bib files containing +# the reference definitions. This must be a list of .bib files. The .bib +# extension is automatically appended if omitted. This requires the bibtex tool +# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info. +# For LaTeX the style of the bibliography can be controlled using +# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the +# search path. See also \cite for info how to create references. + +CITE_BIB_FILES = + +#--------------------------------------------------------------------------- +# Configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated to +# standard output by doxygen. If QUIET is set to YES this implies that the +# messages are off. +# The default value is: NO. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES +# this implies that the warnings are on. +# +# Tip: Turn warnings on while writing the documentation. +# The default value is: YES. + +WARNINGS = YES + +# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate +# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag +# will automatically be disabled. +# The default value is: YES. + +WARN_IF_UNDOCUMENTED = YES + +# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some parameters +# in a documented function, or documenting parameters that don't exist or using +# markup commands wrongly. +# The default value is: YES. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that +# are documented, but have no documentation for their parameters or return +# value. If set to NO, doxygen will only warn about wrong or incomplete +# parameter documentation, but not about the absence of documentation. +# The default value is: NO. + +WARN_NO_PARAMDOC = NO + +# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when +# a warning is encountered. +# The default value is: NO. + +WARN_AS_ERROR = NO + +# The WARN_FORMAT tag determines the format of the warning messages that doxygen +# can produce. The string should contain the $file, $line, and $text tags, which +# will be replaced by the file and line number from which the warning originated +# and the warning text. Optionally the format may contain $version, which will +# be replaced by the version of the file (if it could be obtained via +# FILE_VERSION_FILTER) +# The default value is: $file:$line: $text. + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning and error +# messages should be written. If left blank the output is written to standard +# error (stderr). + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# Configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag is used to specify the files and/or directories that contain +# documented source files. You may enter file names like myfile.cpp or +# directories like /usr/src/myproject. Separate the files or directories with +# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING +# Note: If this tag is empty the current directory is searched. + +INPUT = include/CardADT.h \ + include/CardDeckUtils.h \ + include/CardStack.h \ + include/CardTypes.h \ + include/Exceptions.h \ + include/GameBoard.h \ + include/GameBoardTypes.h \ + include/Stack.h + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses +# libiconv (or the iconv built into libc) for the transcoding. See the libiconv +# documentation (see: http://www.gnu.org/software/libiconv) for the list of +# possible encodings. +# The default value is: UTF-8. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and +# *.h) to filter out the source-files in the directories. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# read by doxygen. +# +# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, +# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, +# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, +# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, +# *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf and *.qsf. + +FILE_PATTERNS = *.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.java \ + *.ii \ + *.ixx \ + *.ipp \ + *.i++ \ + *.inl \ + *.idl \ + *.ddl \ + *.odl \ + *.h \ + *.hh \ + *.hxx \ + *.hpp \ + *.h++ \ + *.cs \ + *.d \ + *.php \ + *.php4 \ + *.php5 \ + *.phtml \ + *.inc \ + *.m \ + *.markdown \ + *.md \ + *.mm \ + *.dox \ + *.py \ + *.pyw \ + *.f90 \ + *.f95 \ + *.f03 \ + *.f08 \ + *.f \ + *.for \ + *.tcl \ + *.vhd \ + *.vhdl \ + *.ucf \ + *.qsf + +# The RECURSIVE tag can be used to specify whether or not subdirectories should +# be searched for input files as well. +# The default value is: NO. + +RECURSIVE = NO + +# The EXCLUDE tag can be used to specify files and/or directories that should be +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. +# +# Note that relative paths are relative to the directory from which doxygen is +# run. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or +# directories that are symbolic links (a Unix file system feature) are excluded +# from the input. +# The default value is: NO. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories use the pattern */test/* + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or directories +# that contain example code fragments that are included (see the \include +# command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and +# *.h) to filter out the source-files in the directories. If left blank all +# files are included. + +EXAMPLE_PATTERNS = * + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude commands +# irrespective of the value of the RECURSIVE tag. +# The default value is: NO. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or directories +# that contain images that are to be included in the documentation (see the +# \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command: +# +# <filter> <input-file> +# +# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the +# name of an input file. Doxygen will then use the output that the filter +# program writes to standard output. If FILTER_PATTERNS is specified, this tag +# will be ignored. +# +# Note that the filter must not add or remove lines; it is applied before the +# code is scanned, but not when the output code is generated. If lines are added +# or removed, the anchors will not be placed correctly. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: pattern=filter +# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how +# filters are used. If the FILTER_PATTERNS tag is empty or if none of the +# patterns match the file name, INPUT_FILTER is applied. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will also be used to filter the input files that are used for +# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). +# The default value is: NO. + +FILTER_SOURCE_FILES = NO + +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and +# it is also possible to disable source filtering for a specific pattern using +# *.ext= (so without naming a filter). +# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. + +FILTER_SOURCE_PATTERNS = + +# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that +# is part of the input, its contents will be placed on the main page +# (index.html). This can be useful if you have a project on for instance GitHub +# and want to reuse the introduction page also for the doxygen output. + +USE_MDFILE_AS_MAINPAGE = + +#--------------------------------------------------------------------------- +# Configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will be +# generated. Documented entities will be cross-referenced with these sources. +# +# Note: To get rid of all source code in the generated output, make sure that +# also VERBATIM_HEADERS is set to NO. +# The default value is: NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body of functions, +# classes and enums directly into the documentation. +# The default value is: NO. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any +# special comment blocks from generated source code fragments. Normal C, C++ and +# Fortran comments will always remain visible. +# The default value is: YES. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES then for each documented +# function all documented functions referencing it will be listed. +# The default value is: NO. + +REFERENCED_BY_RELATION = NO + +# If the REFERENCES_RELATION tag is set to YES then for each documented function +# all documented entities called/used by that function will be listed. +# The default value is: NO. + +REFERENCES_RELATION = NO + +# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set +# to YES then the hyperlinks from functions in REFERENCES_RELATION and +# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will +# link to the documentation. +# The default value is: YES. + +REFERENCES_LINK_SOURCE = YES + +# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the +# source code will show a tooltip with additional information such as prototype, +# brief description and links to the definition and documentation. Since this +# will make the HTML file larger and loading of large files a bit slower, you +# can opt to disable this feature. +# The default value is: YES. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +SOURCE_TOOLTIPS = YES + +# If the USE_HTAGS tag is set to YES then the references to source code will +# point to the HTML generated by the htags(1) tool instead of doxygen built-in +# source browser. The htags tool is part of GNU's global source tagging system +# (see http://www.gnu.org/software/global/global.html). You will need version +# 4.8.6 or higher. +# +# To use it do the following: +# - Install the latest version of global +# - Enable SOURCE_BROWSER and USE_HTAGS in the config file +# - Make sure the INPUT points to the root of the source tree +# - Run doxygen as normal +# +# Doxygen will invoke htags (and that will in turn invoke gtags), so these +# tools must be available from the command line (i.e. in the search path). +# +# The result: instead of the source browser generated by doxygen, the links to +# source code will now point to the output of htags. +# The default value is: NO. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a +# verbatim copy of the header file for each class for which an include is +# specified. Set to NO to disable this. +# See also: Section \class. +# The default value is: YES. + +VERBATIM_HEADERS = YES + +# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the +# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the +# cost of reduced performance. This can be particularly helpful with template +# rich C++ code for which doxygen's built-in parser lacks the necessary type +# information. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse-libclang=ON option for CMake. +# The default value is: NO. + +CLANG_ASSISTED_PARSING = NO + +# If clang assisted parsing is enabled you can provide the compiler with command +# line options that you would normally use when invoking the compiler. Note that +# the include paths will already be set by doxygen for the files and directories +# specified with INPUT and INCLUDE_PATH. +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. + +CLANG_OPTIONS = + +#--------------------------------------------------------------------------- +# Configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all +# compounds will be generated. Enable this if the project contains a lot of +# classes, structs, unions or interfaces. +# The default value is: YES. + +ALPHABETICAL_INDEX = YES + +# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in +# which the alphabetical index list will be split. +# Minimum value: 1, maximum value: 20, default value: 5. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all classes will +# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag +# can be used to specify a prefix (or a list of prefixes) that should be ignored +# while generating the index headers. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output +# The default value is: YES. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each +# generated HTML page (for example: .htm, .php, .asp). +# The default value is: .html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a user-defined HTML header file for +# each generated HTML page. If the tag is left blank doxygen will generate a +# standard header. +# +# To get valid HTML the header file that includes any scripts and style sheets +# that doxygen needs, which is dependent on the configuration options used (e.g. +# the setting GENERATE_TREEVIEW). It is highly recommended to start with a +# default header using +# doxygen -w html new_header.html new_footer.html new_stylesheet.css +# YourConfigFile +# and then modify the file new_header.html. See also section "Doxygen usage" +# for information on how to generate the default header that doxygen normally +# uses. +# Note: The header is subject to change so you typically have to regenerate the +# default header when upgrading to a newer version of doxygen. For a description +# of the possible markers and block names see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each +# generated HTML page. If the tag is left blank doxygen will generate a standard +# footer. See HTML_HEADER for more information on how to generate a default +# footer and what special commands can be used inside the footer. See also +# section "Doxygen usage" for information on how to generate the default footer +# that doxygen normally uses. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style +# sheet that is used by each HTML page. It can be used to fine-tune the look of +# the HTML output. If left blank doxygen will generate a default style sheet. +# See also section "Doxygen usage" for information on how to generate the style +# sheet that doxygen normally uses. +# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as +# it is more robust and this tag (HTML_STYLESHEET) will in the future become +# obsolete. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_STYLESHEET = + +# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined +# cascading style sheets that are included after the standard style sheets +# created by doxygen. Using this option one can overrule certain style aspects. +# This is preferred over using HTML_STYLESHEET since it does not replace the +# standard style sheet and is therefore more robust against future updates. +# Doxygen will copy the style sheet files to the output directory. +# Note: The order of the extra style sheet files is of importance (e.g. the last +# style sheet in the list overrules the setting of the previous ones in the +# list). For an example see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_STYLESHEET = + +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the HTML output directory. Note +# that these files will be copied to the base HTML output directory. Use the +# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these +# files. In the HTML_STYLESHEET file, use the file name only. Also note that the +# files will be copied as-is; there are no commands or markers available. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_FILES = + +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen +# will adjust the colors in the style sheet and background images according to +# this color. Hue is specified as an angle on a colorwheel, see +# http://en.wikipedia.org/wiki/Hue for more information. For instance the value +# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 +# purple, and 360 is red again. +# Minimum value: 0, maximum value: 359, default value: 220. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_HUE = 220 + +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors +# in the HTML output. For a value of 0 the output will use grayscales only. A +# value of 255 will produce the most vivid colors. +# Minimum value: 0, maximum value: 255, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_SAT = 100 + +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the +# luminance component of the colors in the HTML output. Values below 100 +# gradually make the output lighter, whereas values above 100 make the output +# darker. The value divided by 100 is the actual gamma applied, so 80 represents +# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not +# change the gamma. +# Minimum value: 40, maximum value: 240, default value: 80. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_GAMMA = 80 + +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting this +# to YES can help to show when doxygen was last run and thus if the +# documentation is up to date. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_TIMESTAMP = NO + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_SECTIONS = NO + +# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries +# shown in the various tree structured indices initially; the user can expand +# and collapse entries dynamically later on. Doxygen will expand the tree to +# such a level that at most the specified number of entries are visible (unless +# a fully collapsed tree already exceeds this amount). So setting the number of +# entries 1 will produce a full collapsed tree by default. 0 is a special value +# representing an infinite number of entries and will result in a full expanded +# tree by default. +# Minimum value: 0, maximum value: 9999, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_INDEX_NUM_ENTRIES = 100 + +# If the GENERATE_DOCSET tag is set to YES, additional index files will be +# generated that can be used as input for Apple's Xcode 3 integrated development +# environment (see: http://developer.apple.com/tools/xcode/), introduced with +# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a +# Makefile in the HTML output directory. Running make will produce the docset in +# that directory and running make install will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at +# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html +# for more information. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_DOCSET = NO + +# This tag determines the name of the docset feed. A documentation feed provides +# an umbrella under which multiple documentation sets from a single provider +# (such as a company or product suite) can be grouped. +# The default value is: Doxygen generated docs. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# This tag specifies a string that should uniquely identify the documentation +# set bundle. This should be a reverse domain-name style string, e.g. +# com.mycompany.MyDocSet. Doxygen will append .docset to the name. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify +# the documentation publisher. This should be a reverse domain-name style +# string, e.g. com.mycompany.MyDocSet.documentation. +# The default value is: org.doxygen.Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_ID = org.doxygen.Publisher + +# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. +# The default value is: Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_NAME = Publisher + +# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three +# additional HTML index files: index.hhp, index.hhc, and index.hhk. The +# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop +# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on +# Windows. +# +# The HTML Help Workshop contains a compiler that can convert all HTML output +# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML +# files are now used as the Windows 98 help format, and will replace the old +# Windows help format (.hlp) on all Windows platforms in the future. Compressed +# HTML files also contain an index, a table of contents, and you can search for +# words in the documentation. The HTML workshop also contains a viewer for +# compressed HTML files. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_HTMLHELP = NO + +# The CHM_FILE tag can be used to specify the file name of the resulting .chm +# file. You can add a path in front of the file if the result should not be +# written to the html output directory. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_FILE = + +# The HHC_LOCATION tag can be used to specify the location (absolute path +# including file name) of the HTML help compiler (hhc.exe). If non-empty, +# doxygen will try to run the HTML help compiler on the generated index.hhp. +# The file has to be specified with full path. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +HHC_LOCATION = + +# The GENERATE_CHI flag controls if a separate .chi index file is generated +# (YES) or that it should be included in the master .chm file (NO). +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +GENERATE_CHI = NO + +# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc) +# and project file content. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_INDEX_ENCODING = + +# The BINARY_TOC flag controls whether a binary table of contents is generated +# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it +# enables the Previous and Next buttons. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members to +# the table of contents of the HTML help documentation and to the tree view. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +TOC_EXPAND = NO + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that +# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help +# (.qch) of the generated HTML documentation. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify +# the file name of the resulting .qch file. The path specified is relative to +# the HTML output folder. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help +# Project output. For more information please see Qt Help Project / Namespace +# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace). +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt +# Help Project output. For more information please see Qt Help Project / Virtual +# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual- +# folders). +# The default value is: doc. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_VIRTUAL_FOLDER = doc + +# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom +# filter to add. For more information please see Qt Help Project / Custom +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the +# custom filter to add. For more information please see Qt Help Project / Custom +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this +# project's filter section matches. Qt Help Project / Filter Attributes (see: +# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_SECT_FILTER_ATTRS = + +# The QHG_LOCATION tag can be used to specify the location of Qt's +# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the +# generated .qhp file. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be +# generated, together with the HTML files, they form an Eclipse help plugin. To +# install this plugin and make it available under the help contents menu in +# Eclipse, the contents of the directory containing the HTML and XML files needs +# to be copied into the plugins directory of eclipse. The name of the directory +# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. +# After copying Eclipse needs to be restarted before the help appears. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the Eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have this +# name. Each documentation set should have its own identifier. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. + +ECLIPSE_DOC_ID = org.doxygen.Project + +# If you want full control over the layout of the generated HTML pages it might +# be necessary to disable the index and replace it with your own. The +# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top +# of each HTML page. A value of NO enables the index and the value YES disables +# it. Since the tabs in the index contain the same information as the navigation +# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +DISABLE_INDEX = NO + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. If the tag +# value is set to YES, a side panel will be generated containing a tree-like +# index structure (just like the one that is generated for HTML Help). For this +# to work a browser that supports JavaScript, DHTML, CSS and frames is required +# (i.e. any modern browser). Windows users are probably better off using the +# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can +# further fine-tune the look of the index. As an example, the default style +# sheet generated by doxygen has an example that shows how to put an image at +# the root of the tree instead of the PROJECT_NAME. Since the tree basically has +# the same information as the tab index, you could consider setting +# DISABLE_INDEX to YES when enabling this option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_TREEVIEW = NO + +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that +# doxygen will group on one line in the generated HTML documentation. +# +# Note that a value of 0 will completely suppress the enum values from appearing +# in the overview section. +# Minimum value: 0, maximum value: 20, default value: 4. +# This tag requires that the tag GENERATE_HTML is set to YES. + +ENUM_VALUES_PER_LINE = 4 + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used +# to set the initial width (in pixels) of the frame in which the tree is shown. +# Minimum value: 0, maximum value: 1500, default value: 250. +# This tag requires that the tag GENERATE_HTML is set to YES. + +TREEVIEW_WIDTH = 250 + +# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to +# external symbols imported via tag files in a separate window. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +EXT_LINKS_IN_WINDOW = NO + +# Use this tag to change the font size of LaTeX formulas included as images in +# the HTML documentation. When you change the font size after a successful +# doxygen run you need to manually remove any form_*.png images from the HTML +# output directory to force them to be regenerated. +# Minimum value: 8, maximum value: 50, default value: 10. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_FONTSIZE = 10 + +# Use the FORMULA_TRANPARENT tag to determine whether or not the images +# generated for formulas are transparent PNGs. Transparent PNGs are not +# supported properly for IE 6.0, but are supported on all modern browsers. +# +# Note that when changing this option you need to delete any form_*.png files in +# the HTML output directory before the changes have effect. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_TRANSPARENT = YES + +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see +# http://www.mathjax.org) which uses client side Javascript for the rendering +# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX +# installed or if you want to formulas look prettier in the HTML output. When +# enabled you may also need to install MathJax separately and configure the path +# to it using the MATHJAX_RELPATH option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +USE_MATHJAX = NO + +# When MathJax is enabled you can set the default output format to be used for +# the MathJax output. See the MathJax site (see: +# http://docs.mathjax.org/en/latest/output.html) for more details. +# Possible values are: HTML-CSS (which is slower, but has the best +# compatibility), NativeMML (i.e. MathML) and SVG. +# The default value is: HTML-CSS. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_FORMAT = HTML-CSS + +# When MathJax is enabled you need to specify the location relative to the HTML +# output directory using the MATHJAX_RELPATH option. The destination directory +# should contain the MathJax.js script. For instance, if the mathjax directory +# is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax +# Content Delivery Network so you can quickly see the result without installing +# MathJax. However, it is strongly recommended to install a local copy of +# MathJax from http://www.mathjax.org before deployment. +# The default value is: http://cdn.mathjax.org/mathjax/latest. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest + +# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax +# extension names that should be enabled during MathJax rendering. For example +# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_EXTENSIONS = + +# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces +# of code that will be used on startup of the MathJax code. See the MathJax site +# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an +# example see the documentation. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_CODEFILE = + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box for +# the HTML output. The underlying search engine uses javascript and DHTML and +# should work on any modern browser. Note that when using HTML help +# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) +# there is already a search function so this one should typically be disabled. +# For large projects the javascript based search engine can be slow, then +# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to +# search using the keyboard; to jump to the search box use <access key> + S +# (what the <access key> is depends on the OS and browser, but it is typically +# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down +# key> to jump into the search results window, the results can be navigated +# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel +# the search. The filter options can be selected when the cursor is inside the +# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys> +# to select a filter and <Enter> or <escape> to activate or cancel the filter +# option. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +SEARCHENGINE = YES + +# When the SERVER_BASED_SEARCH tag is enabled the search engine will be +# implemented using a web server instead of a web client using Javascript. There +# are two flavors of web server based searching depending on the EXTERNAL_SEARCH +# setting. When disabled, doxygen will generate a PHP script for searching and +# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing +# and searching needs to be provided by external tools. See the section +# "External Indexing and Searching" for details. +# The default value is: NO. +# This tag requires that the tag SEARCHENGINE is set to YES. + +SERVER_BASED_SEARCH = NO + +# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP +# script for searching. Instead the search results are written to an XML file +# which needs to be processed by an external indexer. Doxygen will invoke an +# external search engine pointed to by the SEARCHENGINE_URL option to obtain the +# search results. +# +# Doxygen ships with an example indexer (doxyindexer) and search engine +# (doxysearch.cgi) which are based on the open source search engine library +# Xapian (see: http://xapian.org/). +# +# See the section "External Indexing and Searching" for details. +# The default value is: NO. +# This tag requires that the tag SEARCHENGINE is set to YES. + +EXTERNAL_SEARCH = NO + +# The SEARCHENGINE_URL should point to a search engine hosted by a web server +# which will return the search results when EXTERNAL_SEARCH is enabled. +# +# Doxygen ships with an example indexer (doxyindexer) and search engine +# (doxysearch.cgi) which are based on the open source search engine library +# Xapian (see: http://xapian.org/). See the section "External Indexing and +# Searching" for details. +# This tag requires that the tag SEARCHENGINE is set to YES. + +SEARCHENGINE_URL = + +# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed +# search data is written to a file for indexing by an external tool. With the +# SEARCHDATA_FILE tag the name of this file can be specified. +# The default file is: searchdata.xml. +# This tag requires that the tag SEARCHENGINE is set to YES. + +SEARCHDATA_FILE = searchdata.xml + +# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the +# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is +# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple +# projects and redirect the results back to the right project. +# This tag requires that the tag SEARCHENGINE is set to YES. + +EXTERNAL_SEARCH_ID = + +# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen +# projects other than the one defined by this configuration file, but that are +# all added to the same external search index. Each project needs to have a +# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of +# to a relative location where the documentation can be found. The format is: +# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ... +# This tag requires that the tag SEARCHENGINE is set to YES. + +EXTRA_SEARCH_MAPPINGS = + +#--------------------------------------------------------------------------- +# Configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output. +# The default value is: YES. + +GENERATE_LATEX = YES + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: latex. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. +# +# Note that when enabling USE_PDFLATEX this option is only used for generating +# bitmaps for formulas in the HTML output, but not in the Makefile that is +# written to the output directory. +# The default file is: latex. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate +# index for LaTeX. +# The default file is: makeindex. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX +# documents. This may be useful for small projects and may help to save some +# trees in general. +# The default value is: NO. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +COMPACT_LATEX = NO + +# The PAPER_TYPE tag can be used to set the paper type that is used by the +# printer. +# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x +# 14 inches) and executive (7.25 x 10.5 inches). +# The default value is: a4. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +PAPER_TYPE = a4 + +# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names +# that should be included in the LaTeX output. The package can be specified just +# by its name or with the correct syntax as to be used with the LaTeX +# \usepackage command. To get the times font for instance you can specify : +# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times} +# To use the option intlimits with the amsmath package you can specify: +# EXTRA_PACKAGES=[intlimits]{amsmath} +# If left blank no extra packages will be included. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +EXTRA_PACKAGES = + +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the +# generated LaTeX document. The header should contain everything until the first +# chapter. If it is left blank doxygen will generate a standard header. See +# section "Doxygen usage" for information on how to let doxygen write the +# default header to a separate file. +# +# Note: Only use a user-defined header if you know what you are doing! The +# following commands have a special meaning inside the header: $title, +# $datetime, $date, $doxygenversion, $projectname, $projectnumber, +# $projectbrief, $projectlogo. Doxygen will replace $title with the empty +# string, for the replacement values of the other commands the user is referred +# to HTML_HEADER. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_HEADER = + +# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the +# generated LaTeX document. The footer should contain everything after the last +# chapter. If it is left blank doxygen will generate a standard footer. See +# LATEX_HEADER for more information on how to generate a default footer and what +# special commands can be used inside the footer. +# +# Note: Only use a user-defined footer if you know what you are doing! +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_FOOTER = + +# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined +# LaTeX style sheets that are included after the standard style sheets created +# by doxygen. Using this option one can overrule certain style aspects. Doxygen +# will copy the style sheet files to the output directory. +# Note: The order of the extra style sheet files is of importance (e.g. the last +# style sheet in the list overrules the setting of the previous ones in the +# list). +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_EXTRA_STYLESHEET = + +# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the LATEX_OUTPUT output +# directory. Note that the files will be copied as-is; there are no commands or +# markers available. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_EXTRA_FILES = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is +# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will +# contain links (just like the HTML output) instead of page references. This +# makes the output suitable for online browsing using a PDF viewer. +# The default value is: YES. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +PDF_HYPERLINKS = YES + +# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate +# the PDF file directly from the LaTeX files. Set this option to YES, to get a +# higher quality PDF documentation. +# The default value is: YES. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +USE_PDFLATEX = YES + +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode +# command to the generated LaTeX files. This will instruct LaTeX to keep running +# if errors occur, instead of asking the user for help. This option is also used +# when generating formulas in HTML. +# The default value is: NO. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_BATCHMODE = NO + +# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the +# index chapters (such as File Index, Compound Index, etc.) in the output. +# The default value is: NO. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_HIDE_INDICES = NO + +# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source +# code with syntax highlighting in the LaTeX output. +# +# Note that which sources are shown also depends on other settings such as +# SOURCE_BROWSER. +# The default value is: NO. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_SOURCE_CODE = NO + +# The LATEX_BIB_STYLE tag can be used to specify the style to use for the +# bibliography, e.g. plainnat, or ieeetr. See +# http://en.wikipedia.org/wiki/BibTeX and \cite for more info. +# The default value is: plain. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_BIB_STYLE = plain + +# If the LATEX_TIMESTAMP tag is set to YES then the footer of each generated +# page will contain the date and time when the page was generated. Setting this +# to NO can help when comparing the output of multiple runs. +# The default value is: NO. +# This tag requires that the tag GENERATE_LATEX is set to YES. + +LATEX_TIMESTAMP = NO + +#--------------------------------------------------------------------------- +# Configuration options related to the RTF output +#--------------------------------------------------------------------------- + +# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The +# RTF output is optimized for Word 97 and may not look too pretty with other RTF +# readers/editors. +# The default value is: NO. + +GENERATE_RTF = NO + +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: rtf. +# This tag requires that the tag GENERATE_RTF is set to YES. + +RTF_OUTPUT = rtf + +# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF +# documents. This may be useful for small projects and may help to save some +# trees in general. +# The default value is: NO. +# This tag requires that the tag GENERATE_RTF is set to YES. + +COMPACT_RTF = NO + +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will +# contain hyperlink fields. The RTF file will contain links (just like the HTML +# output) instead of page references. This makes the output suitable for online +# browsing using Word or some other Word compatible readers that support those +# fields. +# +# Note: WordPad (write) and others do not support links. +# The default value is: NO. +# This tag requires that the tag GENERATE_RTF is set to YES. + +RTF_HYPERLINKS = NO + +# Load stylesheet definitions from file. Syntax is similar to doxygen's config +# file, i.e. a series of assignments. You only have to provide replacements, +# missing definitions are set to their default value. +# +# See also section "Doxygen usage" for information on how to generate the +# default style sheet that doxygen normally uses. +# This tag requires that the tag GENERATE_RTF is set to YES. + +RTF_STYLESHEET_FILE = + +# Set optional variables used in the generation of an RTF document. Syntax is +# similar to doxygen's config file. A template extensions file can be generated +# using doxygen -e rtf extensionFile. +# This tag requires that the tag GENERATE_RTF is set to YES. + +RTF_EXTENSIONS_FILE = + +# If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code +# with syntax highlighting in the RTF output. +# +# Note that which sources are shown also depends on other settings such as +# SOURCE_BROWSER. +# The default value is: NO. +# This tag requires that the tag GENERATE_RTF is set to YES. + +RTF_SOURCE_CODE = NO + +#--------------------------------------------------------------------------- +# Configuration options related to the man page output +#--------------------------------------------------------------------------- + +# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for +# classes and files. +# The default value is: NO. + +GENERATE_MAN = NO + +# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. A directory man3 will be created inside the directory specified by +# MAN_OUTPUT. +# The default directory is: man. +# This tag requires that the tag GENERATE_MAN is set to YES. + +MAN_OUTPUT = man + +# The MAN_EXTENSION tag determines the extension that is added to the generated +# man pages. In case the manual section does not start with a number, the number +# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is +# optional. +# The default value is: .3. +# This tag requires that the tag GENERATE_MAN is set to YES. + +MAN_EXTENSION = .3 + +# The MAN_SUBDIR tag determines the name of the directory created within +# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by +# MAN_EXTENSION with the initial . removed. +# This tag requires that the tag GENERATE_MAN is set to YES. + +MAN_SUBDIR = + +# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it +# will generate one additional man file for each entity documented in the real +# man page(s). These additional files only source the real man page, but without +# them the man command would be unable to find the correct page. +# The default value is: NO. +# This tag requires that the tag GENERATE_MAN is set to YES. + +MAN_LINKS = NO + +#--------------------------------------------------------------------------- +# Configuration options related to the XML output +#--------------------------------------------------------------------------- + +# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that +# captures the structure of the code including all documentation. +# The default value is: NO. + +GENERATE_XML = NO + +# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: xml. +# This tag requires that the tag GENERATE_XML is set to YES. + +XML_OUTPUT = xml + +# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program +# listings (including syntax highlighting and cross-referencing information) to +# the XML output. Note that enabling this will significantly increase the size +# of the XML output. +# The default value is: YES. +# This tag requires that the tag GENERATE_XML is set to YES. + +XML_PROGRAMLISTING = YES + +#--------------------------------------------------------------------------- +# Configuration options related to the DOCBOOK output +#--------------------------------------------------------------------------- + +# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files +# that can be used to generate PDF. +# The default value is: NO. + +GENERATE_DOCBOOK = NO + +# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in +# front of it. +# The default directory is: docbook. +# This tag requires that the tag GENERATE_DOCBOOK is set to YES. + +DOCBOOK_OUTPUT = docbook + +# If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the +# program listings (including syntax highlighting and cross-referencing +# information) to the DOCBOOK output. Note that enabling this will significantly +# increase the size of the DOCBOOK output. +# The default value is: NO. +# This tag requires that the tag GENERATE_DOCBOOK is set to YES. + +DOCBOOK_PROGRAMLISTING = NO + +#--------------------------------------------------------------------------- +# Configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- + +# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an +# AutoGen Definitions (see http://autogen.sf.net) file that captures the +# structure of the code including all documentation. Note that this feature is +# still experimental and incomplete at the moment. +# The default value is: NO. + +GENERATE_AUTOGEN_DEF = NO + +#--------------------------------------------------------------------------- +# Configuration options related to the Perl module output +#--------------------------------------------------------------------------- + +# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module +# file that captures the structure of the code including all documentation. +# +# Note that this feature is still experimental and incomplete at the moment. +# The default value is: NO. + +GENERATE_PERLMOD = NO + +# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary +# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI +# output from the Perl module output. +# The default value is: NO. +# This tag requires that the tag GENERATE_PERLMOD is set to YES. + +PERLMOD_LATEX = NO + +# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely +# formatted so it can be parsed by a human reader. This is useful if you want to +# understand what is going on. On the other hand, if this tag is set to NO, the +# size of the Perl module output will be much smaller and Perl will parse it +# just the same. +# The default value is: YES. +# This tag requires that the tag GENERATE_PERLMOD is set to YES. + +PERLMOD_PRETTY = YES + +# The names of the make variables in the generated doxyrules.make file are +# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful +# so different doxyrules.make files included by the same Makefile don't +# overwrite each other's variables. +# This tag requires that the tag GENERATE_PERLMOD is set to YES. + +PERLMOD_MAKEVAR_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- + +# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all +# C-preprocessor directives found in the sources and include files. +# The default value is: YES. + +ENABLE_PREPROCESSING = YES + +# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names +# in the source code. If set to NO, only conditional compilation will be +# performed. Macro expansion can be done in a controlled way by setting +# EXPAND_ONLY_PREDEF to YES. +# The default value is: NO. +# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. + +MACRO_EXPANSION = NO + +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then +# the macro expansion is limited to the macros specified with the PREDEFINED and +# EXPAND_AS_DEFINED tags. +# The default value is: NO. +# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. + +EXPAND_ONLY_PREDEF = NO + +# If the SEARCH_INCLUDES tag is set to YES, the include files in the +# INCLUDE_PATH will be searched if a #include is found. +# The default value is: YES. +# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. + +SEARCH_INCLUDES = YES + +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by the +# preprocessor. +# This tag requires that the tag SEARCH_INCLUDES is set to YES. + +INCLUDE_PATH = + +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will be +# used. +# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. + +INCLUDE_FILE_PATTERNS = + +# The PREDEFINED tag can be used to specify one or more macro names that are +# defined before the preprocessor is started (similar to the -D option of e.g. +# gcc). The argument of the tag is a list of macros of the form: name or +# name=definition (no spaces). If the definition and the "=" are omitted, "=1" +# is assumed. To prevent a macro definition from being undefined via #undef or +# recursively expanded use the := operator instead of the = operator. +# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. + +PREDEFINED = + +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this +# tag can be used to specify a list of macro names that should be expanded. The +# macro definition that is found in the sources will be used. Use the PREDEFINED +# tag if you want to use a different macro definition that overrules the +# definition found in the source code. +# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. + +EXPAND_AS_DEFINED = + +# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will +# remove all references to function-like macros that are alone on a line, have +# an all uppercase name, and do not end with a semicolon. Such function macros +# are typically used for boiler-plate code, and will confuse the parser if not +# removed. +# The default value is: YES. +# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. + +SKIP_FUNCTION_MACROS = YES + +#--------------------------------------------------------------------------- +# Configuration options related to external references +#--------------------------------------------------------------------------- + +# The TAGFILES tag can be used to specify one or more tag files. For each tag +# file the location of the external documentation should be added. The format of +# a tag file without this location is as follows: +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where loc1 and loc2 can be relative or absolute paths or URLs. See the +# section "Linking to external documentation" for more information about the use +# of tag files. +# Note: Each tag file must have a unique name (where the name does NOT include +# the path). If a tag file is not located in the directory in which doxygen is +# run, you must also specify the path to the tagfile here. + +TAGFILES = + +# When a file name is specified after GENERATE_TAGFILE, doxygen will create a +# tag file that is based on the input files it reads. See section "Linking to +# external documentation" for more information about the usage of tag files. + +GENERATE_TAGFILE = + +# If the ALLEXTERNALS tag is set to YES, all external class will be listed in +# the class index. If set to NO, only the inherited external classes will be +# listed. +# The default value is: NO. + +ALLEXTERNALS = NO + +# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will be +# listed. +# The default value is: YES. + +EXTERNAL_GROUPS = YES + +# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in +# the related pages index. If set to NO, only the current project's pages will +# be listed. +# The default value is: YES. + +EXTERNAL_PAGES = YES + +# The PERL_PATH should be the absolute path and name of the perl script +# interpreter (i.e. the result of 'which perl'). +# The default file (with absolute path) is: /usr/bin/perl. + +PERL_PATH = /usr/bin/perl + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- + +# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram +# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to +# NO turns the diagrams off. Note that this option also works with HAVE_DOT +# disabled, but it is recommended to install and use dot, since it yields more +# powerful graphs. +# The default value is: YES. + +CLASS_DIAGRAMS = YES + +# You can define message sequence charts within doxygen comments using the \msc +# command. Doxygen will then run the mscgen tool (see: +# http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the +# documentation. The MSCGEN_PATH tag allows you to specify the directory where +# the mscgen tool resides. If left empty the tool is assumed to be found in the +# default search path. + +MSCGEN_PATH = + +# You can include diagrams made with dia in doxygen documentation. Doxygen will +# then run dia to produce the diagram and insert it in the documentation. The +# DIA_PATH tag allows you to specify the directory where the dia binary resides. +# If left empty dia is assumed to be found in the default search path. + +DIA_PATH = + +# If set to YES the inheritance and collaboration graphs will hide inheritance +# and usage relations if the target is undocumented or is not a class. +# The default value is: YES. + +HIDE_UNDOC_RELATIONS = YES + +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz (see: +# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent +# Bell Labs. The other options in this section have no effect if this option is +# set to NO +# The default value is: NO. + +HAVE_DOT = NO + +# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed +# to run in parallel. When set to 0 doxygen will base this on the number of +# processors available in the system. You can set it explicitly to a value +# larger than 0 to get control over the balance between CPU load and processing +# speed. +# Minimum value: 0, maximum value: 32, default value: 0. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_NUM_THREADS = 0 + +# When you want a differently looking font in the dot files that doxygen +# generates you can specify the font name using DOT_FONTNAME. You need to make +# sure dot is able to find the font, which can be done by putting it in a +# standard location or by setting the DOTFONTPATH environment variable or by +# setting DOT_FONTPATH to the directory containing the font. +# The default value is: Helvetica. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_FONTNAME = Helvetica + +# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of +# dot graphs. +# Minimum value: 4, maximum value: 24, default value: 10. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_FONTSIZE = 10 + +# By default doxygen will tell dot to use the default font as specified with +# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set +# the path where dot can find it using this tag. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_FONTPATH = + +# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for +# each documented class showing the direct and indirect inheritance relations. +# Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO. +# The default value is: YES. +# This tag requires that the tag HAVE_DOT is set to YES. + +CLASS_GRAPH = YES + +# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a +# graph for each documented class showing the direct and indirect implementation +# dependencies (inheritance, containment, and class references variables) of the +# class with other documented classes. +# The default value is: YES. +# This tag requires that the tag HAVE_DOT is set to YES. + +COLLABORATION_GRAPH = YES + +# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for +# groups, showing the direct groups dependencies. +# The default value is: YES. +# This tag requires that the tag HAVE_DOT is set to YES. + +GROUP_GRAPHS = YES + +# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and +# collaboration diagrams in a style similar to the OMG's Unified Modeling +# Language. +# The default value is: NO. +# This tag requires that the tag HAVE_DOT is set to YES. + +UML_LOOK = NO + +# If the UML_LOOK tag is enabled, the fields and methods are shown inside the +# class node. If there are many fields or methods and many nodes the graph may +# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the +# number of items for each type to make the size more manageable. Set this to 0 +# for no limit. Note that the threshold may be exceeded by 50% before the limit +# is enforced. So when you set the threshold to 10, up to 15 fields may appear, +# but if the number exceeds 15, the total amount of fields shown is limited to +# 10. +# Minimum value: 0, maximum value: 100, default value: 10. +# This tag requires that the tag HAVE_DOT is set to YES. + +UML_LIMIT_NUM_FIELDS = 10 + +# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and +# collaboration graphs will show the relations between templates and their +# instances. +# The default value is: NO. +# This tag requires that the tag HAVE_DOT is set to YES. + +TEMPLATE_RELATIONS = NO + +# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to +# YES then doxygen will generate a graph for each documented file showing the +# direct and indirect include dependencies of the file with other documented +# files. +# The default value is: YES. +# This tag requires that the tag HAVE_DOT is set to YES. + +INCLUDE_GRAPH = YES + +# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are +# set to YES then doxygen will generate a graph for each documented file showing +# the direct and indirect include dependencies of the file with other documented +# files. +# The default value is: YES. +# This tag requires that the tag HAVE_DOT is set to YES. + +INCLUDED_BY_GRAPH = YES + +# If the CALL_GRAPH tag is set to YES then doxygen will generate a call +# dependency graph for every global function or class method. +# +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable call graphs for selected +# functions only using the \callgraph command. Disabling a call graph can be +# accomplished by means of the command \hidecallgraph. +# The default value is: NO. +# This tag requires that the tag HAVE_DOT is set to YES. + +CALL_GRAPH = NO + +# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller +# dependency graph for every global function or class method. +# +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable caller graphs for selected +# functions only using the \callergraph command. Disabling a caller graph can be +# accomplished by means of the command \hidecallergraph. +# The default value is: NO. +# This tag requires that the tag HAVE_DOT is set to YES. + +CALLER_GRAPH = NO + +# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical +# hierarchy of all classes instead of a textual one. +# The default value is: YES. +# This tag requires that the tag HAVE_DOT is set to YES. + +GRAPHICAL_HIERARCHY = YES + +# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the +# dependencies a directory has on other directories in a graphical way. The +# dependency relations are determined by the #include relations between the +# files in the directories. +# The default value is: YES. +# This tag requires that the tag HAVE_DOT is set to YES. + +DIRECTORY_GRAPH = YES + +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. For an explanation of the image formats see the section +# output formats in the documentation of the dot tool (Graphviz (see: +# http://www.graphviz.org/)). +# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order +# to make the SVG files visible in IE 9+ (other browsers do not have this +# requirement). +# Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo, +# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and +# png:gdiplus:gdiplus. +# The default value is: png. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_IMAGE_FORMAT = png + +# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to +# enable generation of interactive SVG images that allow zooming and panning. +# +# Note that this requires a modern browser other than Internet Explorer. Tested +# and working are Firefox, Chrome, Safari, and Opera. +# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make +# the SVG files visible. Older versions of IE do not have SVG support. +# The default value is: NO. +# This tag requires that the tag HAVE_DOT is set to YES. + +INTERACTIVE_SVG = NO + +# The DOT_PATH tag can be used to specify the path where the dot tool can be +# found. If left blank, it is assumed the dot tool can be found in the path. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_PATH = + +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the \dotfile +# command). +# This tag requires that the tag HAVE_DOT is set to YES. + +DOTFILE_DIRS = + +# The MSCFILE_DIRS tag can be used to specify one or more directories that +# contain msc files that are included in the documentation (see the \mscfile +# command). + +MSCFILE_DIRS = + +# The DIAFILE_DIRS tag can be used to specify one or more directories that +# contain dia files that are included in the documentation (see the \diafile +# command). + +DIAFILE_DIRS = + +# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the +# path where java can find the plantuml.jar file. If left blank, it is assumed +# PlantUML is not used or called during a preprocessing step. Doxygen will +# generate a warning when it encounters a \startuml command in this case and +# will not generate output for the diagram. + +PLANTUML_JAR_PATH = + +# When using plantuml, the PLANTUML_CFG_FILE tag can be used to specify a +# configuration file for plantuml. + +PLANTUML_CFG_FILE = + +# When using plantuml, the specified paths are searched for files specified by +# the !include statement in a plantuml block. + +PLANTUML_INCLUDE_PATH = + +# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes +# that will be shown in the graph. If the number of nodes in a graph becomes +# larger than this value, doxygen will truncate the graph, which is visualized +# by representing a node as a red box. Note that doxygen if the number of direct +# children of the root node in a graph is already larger than +# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that +# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. +# Minimum value: 0, maximum value: 10000, default value: 50. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_GRAPH_MAX_NODES = 50 + +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs +# generated by dot. A depth value of 3 means that only nodes reachable from the +# root by following a path via at most 3 edges will be shown. Nodes that lay +# further from the root node will be omitted. Note that setting this option to 1 +# or 2 may greatly reduce the computation time needed for large code bases. Also +# note that the size of a graph can be further restricted by +# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. +# Minimum value: 0, maximum value: 1000, default value: 0. +# This tag requires that the tag HAVE_DOT is set to YES. + +MAX_DOT_GRAPH_DEPTH = 0 + +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent +# background. This is disabled by default, because dot on Windows does not seem +# to support this out of the box. +# +# Warning: Depending on the platform used, enabling this option may lead to +# badly anti-aliased labels on the edges of a graph (i.e. they become hard to +# read). +# The default value is: NO. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_TRANSPARENT = NO + +# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output +# files in one run (i.e. multiple -o and -T options on the command line). This +# makes dot run faster, but since only newer versions of dot (>1.8.10) support +# this, this feature is disabled by default. +# The default value is: NO. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_MULTI_TARGETS = NO + +# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page +# explaining the meaning of the various boxes and arrows in the dot generated +# graphs. +# The default value is: YES. +# This tag requires that the tag HAVE_DOT is set to YES. + +GENERATE_LEGEND = YES + +# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot +# files that are used to generate the various graphs. +# The default value is: YES. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_CLEANUP = YES diff --git a/Assignments/A4/A4Soln-CS/experiment/main.cpp b/Assignments/A4/A4Soln-CS/experiment/main.cpp new file mode 100644 index 00000000..80d2f260 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/experiment/main.cpp @@ -0,0 +1,64 @@ +/* + * use this file for experimenting with your code, + * testing things that don't work, debugging, etc. + * + * you can compile and run this via 'make experiment' + * + * this file will not be graded + */ + +#include "GameBoard.h" +#include "CardDeckUtils.h" +#include "CardTypes.h" +#include <vector> +#include <iostream> + +int main() +{ + // std::vector<CardT> deck = CardDeckUtils::randomDeck(); + // std::cout << deck.size() << std::endl; + // std::vector<CardStackT> cardStacks = GameBoard::tableauDeck(deck); + // std::cout << cardStacks.size() << std::endl; + + GameBoardT gb = GameBoardT(); + CardT c0(H, A); + CardT c1(C, C2); + CardT c2(D, C3); + + CardStackT stack = CardStackT(19,std::vector<CardT>()); + + stack = stack.push(c0); + stack = stack.pop(); + //stack = stack.pop(); + + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + gb.place(Tableau, 2, c2); + + std::cout << "Move T1 to T0: " << gb.isValidMove(Tableau, 1, Tableau, 0) << std::endl; + std::cout << "Move T0 to T1: " << gb.isValidMove(Tableau, 0, Tableau, 1) << std::endl; + std::cout << "Move T1 to T2: " << gb.isValidMove(Tableau, 1, Tableau, 2) << std::endl; + std::cout << "Move T0 to T2: " << gb.isValidMove(Tableau, 0, Tableau, 2) << std::endl; + + gb.makeMove(Tableau, 1, Tableau, 2); + + std::cout << "Move T1 to T0: " << gb.isValidMove(Tableau, 1, Tableau, 0) << std::endl; + std::cout << "Move T0 to T1: " << gb.isValidMove(Tableau, 0, Tableau, 1) << std::endl; + std::cout << "Move T1 to T2: " << gb.isValidMove(Tableau, 1, Tableau, 2) << std::endl; + std::cout << "Move T0 to T2: " << gb.isValidMove(Tableau, 0, Tableau, 2) << std::endl; + + gb.makeMove(Tableau, 0, Tableau, 2); + + std::cout << "Move T1 to T0: " << gb.isValidMove(Tableau, 1, Tableau, 0) << std::endl; + std::cout << "Move T0 to T1: " << gb.isValidMove(Tableau, 0, Tableau, 1) << std::endl; + std::cout << "Move T1 to T2: " << gb.isValidMove(Tableau, 1, Tableau, 2) << std::endl; + std::cout << "Move T0 to T2: " << gb.isValidMove(Tableau, 0, Tableau, 2) << std::endl; + std::cout << "Move T2 to T0: " << gb.isValidMove(Tableau, 2, Tableau, 0) << std::endl; + std::cout << std::endl; + std::cout << "validMoveExists: " << gb.validMoveExists() << std::endl; + std::cout << "isInWinState: " << gb.isInWinState() << std::endl; + + gb = GameBoardT(CardDeckUtils::randomDeck()); + + return 0; +} \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/include/CardADT.h b/Assignments/A4/A4Soln-CS/include/CardADT.h new file mode 100644 index 00000000..2242dbdb --- /dev/null +++ b/Assignments/A4/A4Soln-CS/include/CardADT.h @@ -0,0 +1,54 @@ +/** + * \file CardADT.h + * \brief Provides the CardADT class for representing a card in a standard 52-card deck of cards. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + + +#ifndef CARDADT_H +#define CARDADT_H + +#include "CardTypes.h" +#include <map> + +/** + * \brief Class for representing a card in a deck of cards given a suit and a rank. + * \details Implements a class for representing a card in a deck of cards. Stores the + suit and the rank of the card. Also provides functions for outputting the rank, suit + and colour of the card. + */ +class CardT { + private: + SuitT suit; + RankT rank; + + public: + /** + * \brief Creates a new card + * \details Create a new card given a suit and a rank for the card. + * \param s The suit of the card (H, D, C, S). + * \param r The rank of the card (A,2-10,J,Q,K). + */ + CardT (SuitT s, RankT r); + + /** + * \brief Returns the suit of the current card. + * \return The suit of the given card. + */ + SuitT getSuit(); + + /** + * \brief Returns the colour of the current card. + * \return The colour of the given card. + */ + ColourT getColour(); + + /** + * \brief Returns the rank of the current card. + * \return The rank of the given card. + */ + RankT getRank(); +}; + +#endif \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/include/CardDeckUtils.h b/Assignments/A4/A4Soln-CS/include/CardDeckUtils.h new file mode 100644 index 00000000..2c8bc125 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/include/CardDeckUtils.h @@ -0,0 +1,34 @@ +/** + * \file CardDeckUtils.h + * \brief A module providing functions to generate and randomize sequences representing decks of cards. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + +#ifndef CARDDECKUTILS_H +#define CARDDECKUTILS_H + +#include <vector> +#include "CardStack.h" +#include "GameBoardTypes.h" + +/** + * \brief A static class for generating and shuffling sequences of playing cards, + * representing a deck of cards. + */ +class CardDeckUtils{ + private: + //private to avoid instances of this class being created. + CardDeckUtils(); + static std::vector<CardT> deckSet(); + static std::vector<CardT> permute(std::vector<CardT> inSet); + + public: + /** + * \brief Returns a random sequence of CardT object, representing a shuffled deck of cards. + * \returns A sequence of all 52 playing cards in a randomized order. + */ + static std::vector<CardT> randomDeck(); +}; + +#endif \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/include/CardStack.h b/Assignments/A4/A4Soln-CS/include/CardStack.h new file mode 100644 index 00000000..d32259ae --- /dev/null +++ b/Assignments/A4/A4Soln-CS/include/CardStack.h @@ -0,0 +1,19 @@ +/** + * \file LanduseMap.h + * \brief The header file for the LanduseMap type definition. + * \author Christopher W. Schankula, MacID: schankuc + * \date March 26th, 2018 +*/ + +#ifndef CARDSTACK_H +#define CARDSTACK_H + +#include "CardADT.h" +#include "Stack.h" + +/** + * \brief A Seq2D instance consisting of LanduseT, used for representing land use on a two-dimensional map +*/ +typedef Stack<CardT> CardStackT; + +#endif \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/include/CardTypes.h b/Assignments/A4/A4Soln-CS/include/CardTypes.h new file mode 100644 index 00000000..9cfcd760 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/include/CardTypes.h @@ -0,0 +1,27 @@ +/** + * \file CardTypes.h + * \brief Provides enumerated types for representing a card in a deck of cards. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + +#ifndef CARDTYPES_H +#define CARDTYPES_H + + +/** + * \brief Enumerated type representing the four suits of a card: Hearts (H), Diamonds (D), Clubs (C) and Spades (S). +*/ +enum SuitT {H, D, C, S}; + +/** + * \brief Enumerated type representing the ranks of a card in a deck of cards (Ace, 2-10, Jack, Queen, King). +*/ +enum RankT {A, C2, C3, C4, C5, C6, C7, C8, C9, C10, J, Q, K}; + +/** + * \brief Enumerated type representing the possible colours of a card in a deck of cards (Red or Black). +*/ +enum ColourT {Red, Black}; + +#endif \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/include/Exceptions.h b/Assignments/A4/A4Soln-CS/include/Exceptions.h new file mode 100644 index 00000000..0f4c3ccd --- /dev/null +++ b/Assignments/A4/A4Soln-CS/include/Exceptions.h @@ -0,0 +1,49 @@ +/** + * \file Exceptions.h + * \brief Defines exceptions for use in this project. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 9th, 2018 +*/ + +#ifndef EXCEPTIONS_H +#define EXCEPTIONS_H + +#include <exception> + +class invalid_argument : public std::exception { + const char * what () const throw () { + return "invalid argument"; + } +}; + +class invalid_config : public std::exception { + const char * what () const throw () { + return "invalid board configuration"; + } +}; + +class invalid_cell : public std::exception { + const char * what () const throw () { + return "invalid cell, cell does not exist on gameboard"; + } +}; + +class invalid_move : public std::exception { + const char * what () const throw () { + return "invalid move, this move cannot be made according to the rules of FreeCell."; + } +}; + +class stack_full : public std::exception { + const char * what () const throw () { + return "cannot push to stack, stack is full"; + } +}; + +class stack_empty : public std::exception { + const char * what () const throw () { + return "cannot perform top or pop operation, stack is empty"; + } +}; + +#endif \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/include/GameBoard.h b/Assignments/A4/A4Soln-CS/include/GameBoard.h new file mode 100644 index 00000000..3c4356f4 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/include/GameBoard.h @@ -0,0 +1,128 @@ +/** + * \file GameBoard.h + * \brief An abstract data type (ADT) for representing the state of a game of FreeCell Solitaire. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + +#ifndef GAMEBOARD_H +#define GAMEBOARD_H + +#include <vector> +#include "CardStack.h" +#include "GameBoardTypes.h" + +/** + * \brief Class for representing the gameboard of a game of Freecell Solitaire. + * \details Implements a class for representing the gameboard of a Freecell Solitaire game, + * as well as functions for making and validating moves and verifying win states and states with no + * possible moves. Implemented as an Abstract Data Type (ADT) so that client code could create and manage + * multiple games at once, for example in a server model. + */ +class GameBoardT { + private: + std::vector<CardStackT> T; + std::vector<CardStackT> F; + std::vector<CardStackT> H; + std::vector<CardStackT> stackSeq(unsigned int l, unsigned int n); + std::vector<CardStackT> tableauDeck(std::vector<CardT> deck); + bool isValidCell(CellT c, unsigned int n); + bool validTabTab(unsigned int t0, unsigned int t1); + bool validTabFree(unsigned int t, unsigned int f); + bool validTabHome(unsigned int t, unsigned int h); + bool validFreeTab(unsigned int f, unsigned int t); + bool validFreeFree(unsigned int f0, unsigned int f1); + bool validFreeHome(unsigned int f, unsigned int h); + bool oneLess(CardT c0, CardT c1); + bool oneMore(CardT c0, CardT c1); + bool tabPlaceable(CardT c0, CardT c1); + bool homePlaceable(CardT c0, CardT c1); + bool isWinningHomeCell(unsigned int i); + + + public: + /** + * \brief Construct a new Freecell gameboard. + * \details Create a new instance of a Freecell gameboard with all cells empty. This can be + * populated manually by a client. + */ + GameBoardT(); + + /** + * \brief Construct a new Freecell gameboard from a deck of cards + * \details Create a new instance of a Freecell gameboard by placing the given deck + * on the tableau cells of the gameboard. + * \throws invalid_argument The given initial deck does not have 52 cards. + */ + GameBoardT(std::vector<CardT> deck); + + /** + * \brief Place a card on a given cell of the gameboard. + * \details Place a card on a given cell of the gameboard. Used to manually construct an + * initial game state. + * \param cell The type of cell on which to place the code + * \param i The identifier of the cell of type cell at which to place the new card on the gameboard. + * \param card The new card to place on the top of the cell given. + * \throws invalid_config The placement of the card would result in an invalid + * configuration of the game board (beyond the possible sizes of the cell in question). + * \throw invalid_cell The given cell does not exist on the gameboard. + */ + void place(CellT cell, unsigned int i, CardT card); + + /** + * \brief Determine whether a given move is valid given the current gameboard state. + * \details Returns whether moving a potential card from a given cell to another given cell + * is a valid move according to Freecell game rules. + * \returns true if the card on the top (if any) of the given cell represented by c0 and n0 + * can be moved to the given cell represented by c1 and n1. false if the move is invalid or + * if the cell at c0 and n0 is empty. + * \param c0 The type of cell for the "from" cell to move the card from. + * \param n0 The identifier of the cell of type cell from which to move a card. + * \param c1 The type of cell for the "to" cell to move the card to. + * \param n1 The identifier of the cell of type cell to which to move the card. + * \throws invalid_cell One or both of the cells provided are not valid cells on the gameboard. + */ + bool isValidMove(CellT c0, unsigned int n0, CellT c1, unsigned int n1); + + /** + * \brief Make a move from one cell to another, if it's valid. + * \details Moves the card from the top of the cell represented by c0 and n0 to the cell + * represented by c1 and n1. + * \param c0 The type of cell for the "from" cell to move the card from. + * \param n0 The identifier of the cell of type cell from which to move a card. + * \param c1 The type of cell for the "to" cell to move the card to. + * \param n1 The identifier of the cell of type cell to which to move the card. + * \throws invalid_cell One or both of the cells provided are not valid cells on the gameboard. + */ + void makeMove(CellT c0, unsigned int n0, CellT c1, unsigned int n1); + + /** + * \brief Return the cards in the cell given as a CardStackT object. + * \details Returns the cards in the cell on the gameboard given as a CardStackT object. + * \param cell The type of cell on which to place the code + * \param i The identifier of the cell of type cell at which to place the new card on the gameboard. + * \return The CardStackT representation of the given cell. + * \throws invalid_cell One or both of the cells provided are not valid cells on the gameboard. + */ + CardStackT getCell(CellT cell, unsigned int n); + + /** + * \brief Return whether a valid move exists. + * \details Returns whether the current game state contains a valid move. This means that it is possible + * to move a card from a given cell to any other cell on the board. Note that it is possible to have a valid move + * but still be in an unwinnable game (e.g. the card can be moved back and forth between two Tableau cell). + * This function does not check for this condition. + * \return true if a valid move exists on the gameboard, and false if no valid move exists. + */ + bool validMoveExists(); + + /** + * \brief Return whether the gameboard is currently in the win state. + * \details Returns whether the current game state is a win state. This would mean that all HomeCells + * are stacked from Ace to King of each suit. + * \return true if the gameboard is currently in a winning state, false otherwise. + */ + bool isInWinState(); +}; + +#endif \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/include/GameBoardTypes.h b/Assignments/A4/A4Soln-CS/include/GameBoardTypes.h new file mode 100644 index 00000000..adef70ee --- /dev/null +++ b/Assignments/A4/A4Soln-CS/include/GameBoardTypes.h @@ -0,0 +1,16 @@ +/** + * \file GameBoardTypes.h + * \brief A module providing types for representing a Freecell Solitaire game board. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + +#ifndef GAMEBOARDTYPES_H +#define GAMEBOARDTYPES_H + +/** + * \brief Enumerated type representing the three types of card cells in a Freecell Solitaire game board: FreeCell, HomeCell and Tableau cells. +*/ +enum CellT {FreeCell, HomeCell, Tableau}; + +#endif \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/include/Stack.h b/Assignments/A4/A4Soln-CS/include/Stack.h new file mode 100644 index 00000000..cbe2ecae --- /dev/null +++ b/Assignments/A4/A4Soln-CS/include/Stack.h @@ -0,0 +1,89 @@ +/** + * \file Stack.h + * \brief A template module for a stack of a given type of elements. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + + +#ifndef STACK_H +#define STACK_H + +#include <vector> + +/** + * \brief Template class for storing values in a first in, last out (FILO) stack. + * \details Implements a template for a first in, last out (FILO) stack. + */ +template<class T> +class Stack{ + private: + std::vector<T> S; + unsigned int max_size; + + public: + /** + * \brief Construct a new stack. + * \details Create a new instance of stack given some initial elements and a maximum size. + * \param n The maximum size of the given stack. + * \param s The initial elements to push on to the stack. Elements are pushed in an order where + * the first elements (i.e s[0]) are pushed on to the stack first and thus would be the last to be popped. + * \throw invalid_argument The number of elements in the initial stack given is greater than + the maximum stack size. + */ + Stack(unsigned int n, std::vector<T> s); + + /** + * \brief Creates a new stack by pushing the given value on to the current stack. + * \details Create a new instance of stack identical to the last one except with one more value, the one given, + * placed on top. + * \param e The new element of type T to place on top of the stack. + * \return A new instance of stack with the same elements as the current one, with the new value e on the top + * of the stack. + * \throw stack_full The number of elements on the current stack already equals the maximum + * capacity of the stack. + */ + Stack<T> push(T e); + + /** + * \brief Creates a new stack by popping the top value off the current one. + * \details Create a new instance of stack identical to the last one except with one less value: + * the topmost value on the stack is deleted. + * \return A new instance of stack with one less value than the current one, the top having been + * removed. + * \throw stack_empty The current stack does not have any more values to pop off. + */ + Stack<T> pop(); + + /** + * \brief Get the top value of the current stack. + * \details Returns the topmost value on the current stack, the value most recently added to the stack. + * \return The top value of type T of the current stack. + * \throw stack_empty The current stack does not have values to return. + */ + T top(); + + /** + * \brief Get the current size of the stack. + * \details Returns the number of elements currently stored on the current stack. + * \return The number of elements on the current stack. + */ + unsigned int getSize(); + + /** + * \brief Get the maximum size of the stack. + * \details Returns the maximum number of elements of type T which can be stored on the current stack. + * \return The maximum number of elements which can be stored the current stack. + */ + unsigned int getMaxSize(); + + /** + * \brief Get a sequence representation of the current stack. + * \details Returns a sequence representing the elements in the current stack. The beginning of the sequence + * represents the bottommost values on the stack. + * \return The sequence representation of the current stack. + */ + std::vector<T> toSeq(); +}; + +#endif \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/report/FreeCellBoard.jpg b/Assignments/A4/A4Soln-CS/report/FreeCellBoard.jpg new file mode 100644 index 0000000000000000000000000000000000000000..89664b2e3b202bb8449aaaf02ca1eda8ac69b44a GIT binary patch literal 57272 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 DSV<hT literal 0 HcmV?d00001 diff --git a/Assignments/A4/A4Soln-CS/report/report.pdf b/Assignments/A4/A4Soln-CS/report/report.pdf new file mode 100644 index 0000000000000000000000000000000000000000..3ac72f59f8f23f2fc554af3a0b6d0e4e58b0dee3 GIT binary patch literal 162137 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 b)z!_^#m&p*`53`aFqDTE8wiwEmBIdh+56^3 literal 0 HcmV?d00001 diff --git a/Assignments/A4/A4Soln-CS/report/report.tex b/Assignments/A4/A4Soln-CS/report/report.tex new file mode 100644 index 00000000..b2c792c5 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/report/report.tex @@ -0,0 +1,753 @@ +\documentclass[12pt]{article} + +\usepackage{graphicx} +\usepackage{paralist} +\usepackage{amsfonts} +\usepackage{amsmath} +\usepackage{hhline} +\usepackage{booktabs} +\usepackage{multirow} +\usepackage{multicol} + +\oddsidemargin 0mm +\evensidemargin 0mm +\textwidth 160mm +\textheight 200mm +\renewcommand\baselinestretch{1.0} + +\pagestyle {plain} +\pagenumbering{arabic} + +\newcounter{stepnum} + +%% Comments + +\usepackage{color} + +\newif\ifcomments\commentstrue + +\ifcomments +\newcommand{\authornote}[3]{\textcolor{#1}{[#3 ---#2]}} +\newcommand{\todo}[1]{\textcolor{red}{[TODO: #1]}} +\else +\newcommand{\authornote}[3]{} +\newcommand{\todo}[1]{} +\fi + +\newcommand{\wss}[1]{\authornote{blue}{SS}{#1}} + +\title{Assignment 4 Specification} +\author{SFWR ENG 2AA4} + +\begin {document} + +\maketitle + +\noindent This Module Interface Specification (MIS) document contains modules, types and methods for implementing the game state of +a game of FreeCell solitaire. The game involves a standard 52-card deck of cards shuffled into 8 piles called Tableau cascades, four +having 7 cards each and four having 6 cards each at the beginning. The player has 4 FreeCells where they may choose to place any +card as part of their moves. Tableaux can be built by placing alternately-coloured cards of descending suits on top of one another. +The goal is to fill all four HomeCells, each stacked from Ace to King of the four different suits. Throughout this document, each of these +will be referred to as a different type of ``cell'', following naming +conventions from the following gameboard visualization from http://www.solitairecity.com/Help/FreeCell.shtml: +\begin{center} +\includegraphics[width=13cm]{FreeCellBoard.jpg} +\end{center} + +\newpage + +\section* {Card Types Module} + +\subsection*{Module} + +CardTypes + +\subsection* {Uses} + +N/A + +\subsection* {Syntax} + +\subsubsection* {Exported Constants} + +None + +\subsubsection* {Exported Types} + +SuitT = \{H, D, C, S\}\\ +RankT = \{A, C2, C3, C4, C5, C6, C7, C8, C9, C10, J, Q, K\}\\ +ColourT = \{Red, Black\} + +\subsubsection* {Exported Access Programs} + +None + +\subsection* {Semantics} + +\subsubsection* {State Variables} + +None + +\subsubsection* {State Invariant} + +None + +\newpage + +\section* {Game Board Types Module} + +\subsection*{Module} + +GameBoardTypes + +\subsection* {Uses} + +N/A + +\subsection* {Syntax} + +\subsubsection* {Exported Constants} + +None + +\subsubsection* {Exported Types} + +CellT = \{FreeCell, HomeCell, Tableau\}\\ + +\subsubsection* {Exported Access Programs} + +None + +\subsection* {Semantics} + +\subsubsection* {State Variables} + +None + +\subsubsection* {State Invariant} + +None + + +\newpage + +\section* {Card ADT Module} + +\subsection*{Template Module} + +CardT + +\subsection* {Uses} + +CardTypes for SuitT, RankT, ColourT + +\subsection* {Syntax} + +\subsubsection* {Exported Types} + +\noindent CardT = ? + +\subsubsection* {Exported Access Programs} + +\begin{tabular}{| l | l | l | l |} +\hline +\textbf{Routine name} & \textbf{In} & \textbf{Out} & \textbf{Exceptions}\\ +\hline +CardT & SuitT, RankT & CardT & \\ +\hline +getSuit & ~ & SuitT & ~\\ +\hline +getColour & ~ & ColourT & ~\\ +\hline +getRank & ~ & RankT & ~\\ +\hline +\end{tabular} + +\subsection* {Semantics} + +\subsubsection* {State Variables} + +$suit$: $\rm SuitT$\\ +$rank$: $\rm RankT$ + + +\subsubsection* {State Invariant} + +None + +\subsubsection* {Assumptions} + +The constructor CardT is called for each object instance before any other +access routine is called for that object. The constructor cannot be called on +an existing object. + +\subsubsection* {Access Routine Semantics} + +CardT($s, r$): +\begin{itemize} +\item transition: $suit, rank := s, r$ +\item output: $out := \mathit{self}$ +\item exception: None +\end{itemize} + +\noindent getSuit(): +\begin{itemize} +\item output: $out := suit$ +\item exception: None +\end{itemize} + +\noindent getColour(): +\begin{itemize} +\item output: $out := (suit = H \lor suit = D \Rightarrow {\rm Red}\ |\ suit = C \lor suit = S \Rightarrow {\rm Black})$ +\item exception: None +\end{itemize} + +\noindent getRank(): +\begin{itemize} +\item output: $out := rank$ +\item exception: None +\end{itemize} + +\newpage + +\newpage + +\section* {Generic Stack Module} + +\subsection* {Generic Template Module} + +Stack(T) + +\subsection* {Uses} + +N/A + +\subsection* {Syntax} + +\subsubsection* {Exported Types} + +Stack(T) = ? + +\subsubsection* {Exported Constants} + +None + +\subsubsection* {Exported Access Programs} + +\begin{tabular}{| l | l | l | p{5cm} |} +\hline +\textbf{Routine name} & \textbf{In} & \textbf{Out} & \textbf{Exceptions}\\ +\hline +Stack & $\mathbb{N}$, seq of T & Stack & invalid\_argument\\ +\hline +push & T & Stack & stack\_full\\ +\hline +pop & & Stack & stack\_empty\\ +\hline +top & & T & stack\_empty\\ +\hline +getSize & & $\mathbb{N}$ & \\ +\hline +getMaxSize & & $\mathbb{N}$ & \\ +\hline +toSeq& & seq of $T$ & \\ +\hline +\end{tabular} + +\subsection* {Semantics} + +\subsubsection* {State Variables} + +$S$: seq of T\\ +$max\_size$: $\mathbb{N}$ + +\subsubsection* {State Invariant} + +$|S| \leq max\_size$ + +\subsubsection* {Assumptions \& Design Decisions} + +\begin{itemize} +\item The Stack(T) constructor is called for each object instance before any +other access routine is called for that object. The constructor can only be +called once. +\item Though the toSeq() method violates the essential property of the stack object, since this could be achieved by calling top and pop many times, this method is provided as a convenience to the client. In fact, it increases the property of separation of concerns since this means that the client does not have to worry about details of building their own sequence from the sequence of pops. +\end{itemize} + +\subsubsection* {Access Routine Semantics} + +Stack($sze$, $s$): +\begin{itemize} +\item transition: $S, max\_size:= s, sze$ + +\item output: $\mathit{out} := \mathit{self}$ +\item exception: $exc := (sze = 0 \Rightarrow {\rm invalid\_argument}\ |\ |s| > sze \Rightarrow {\rm invalid\_argument})$ +\end{itemize} + +\noindent push($e$): +\begin{itemize} +\item output: $out := {\rm Stack}(max\_size, S\ ||\ \langle e \rangle)$ + +\item exception: $exc := (|S| = max\_size \Rightarrow {\rm stack\_full})$ + +\end{itemize} + +\noindent pop(): +\begin{itemize} +\item output: $out := {\rm Stack}(max\_size, S[0..|S| - 2])$ + +\item exception: $exc := (|S| = 0 \Rightarrow {\rm stack\_empty})$ + +\end{itemize} + +\noindent top(): +\begin{itemize} +\item output: $\mathit{out} := S[|S| - 1]$ + +\item exception: $exc := (|S| = 0 \Rightarrow {\rm stack\_empty})$ + +\end{itemize} + +\noindent getSize(): +\begin{itemize} +\item output: $\mathit{out} := |S|$ + +\item exception: None + +\end{itemize} + +\noindent getMaxSize(): +\begin{itemize} +\item output: $\mathit{out} := max\_size$ + +\item exception: None + +\end{itemize} + +\noindent toSeq(): +\begin{itemize} +\item output: $\mathit{out} := S$ + +\item exception: None + +\end{itemize} + +\section* {CardStack Module} + +\subsection* {Template Module} + +CardStackT is Stack(CardT) + +\newpage + +\section* {Game Board ADT Module} + +\subsection*{Template Module} + +GameBoardT + +\subsection* {Uses} + +\noindent CardTypes for SuitT, RankT and ColourT + +\noindent GameBoardTypes for CellT + +\noindent CardADT for CardT + +\noindent CardStack for CardStackT + +\subsection* {Syntax} + +\subsubsection* {Exported Access Programs} + +\begin{tabular}{| l | l | l | l |} +\hline +\textbf{Routine name} & \textbf{In} & \textbf{Out} & \textbf{Exceptions}\\ +\hline +GameBoardT & & GameBoardT &\\ +\hline +GameBoardT & seq of CardT& GameBoardT & invalid\_argument\\ +\hline +place & CellT, $\mathbb{N}$, CardT & & invalid\_config, invaid\_cell\\ +\hline +isValidMove & CellT, $\mathbb{N}$, CellT, $\mathbb{N}$ & $\mathbb{B}$ & invalid\_cell\\ +\hline +makeMove & CellT, $\mathbb{N}$, CellT, $\mathbb{N}$ & & invalid\_cell, invalid\_move\\ +\hline +getCell & CellT, $\mathbb{N}$ & CardStackT & invalid\_cell\\ +\hline +validMoveExists& & $\mathbb{B}$ &\\ +\hline +isInWinState & & $\mathbb{B}$ & \\ +\hline +\end{tabular} + +\subsection* {Semantics} + +\subsubsection* {State Variables} + +$T$: seq of CardStackT\\ +$F$: seq of CardStackT\\ +$H$: seq of CardStackT + +\subsubsection* {State Invariant} + +$|T| = 8$\\ +$|F| = 4$\\ +$|H| = 4$ + +\subsubsection* {Assumptions \& Design Decisions} + +\begin{itemize} +\item Either of the GameBoardT constructors is called before any other +access routine is called on that instance. Once a GameBoardT has been created, the constructor will not be called on it again. + +\item place() is only called before the game is started, as a way to build the game state. It will not be used during the game by the client code. It is up to the client to build the game state in a way that makes sense, i.e. all cards being present and no duplicate cards, like the real game of FreeCell Solitaire. The RandomDeck module provides functions for creating a valid shuffled deck of cards. + +\item The main stacks on the board are referred to as the Tableau stacks. The freecells are called FreeCell and the cells where the player must +stack all the cards in order to win the game are called HomeCells. + +\item As per FreeCell rules, HomeCells must start with an ace, but any HomeCell can start with any suit. Once an Ace of that suit is placed there, +this HomeCell becomes that type of stack and only those type of cards can be placed there. + +\item Once a card has been move to a HomeCell, moving it back to the board is a pointless move. For simplicity and to help a would-be player +using this model, it is considered invalid by the current model. + +\item For better scalability, this module is specified as an Abstract Data Type (ADT) instead of an Abstract Object. This would allow multiple games to be created and tracked at once by a client. + +\item The getCell() function is provided, though violating the property of being essential, to give a would-be view function easy access to the state of the game. This ensures that the model is able to be easily integrated with a game system in the future. +\end{itemize} + +\subsubsection* {Access Routine Semantics} + +\noindent GameBoard(): +\begin{itemize} +\item transition: $T, F, H := {\rm stackSeq}(8,19), {\rm stackSeq}(4,1), {\rm stackSeq}(4,13)$ + +\item exception: None + +\end{itemize} + +\noindent GameBoard($deck$): +\begin{itemize} +\item transition: $T, F, H := {\rm tableauDeck}(deck), {\rm stackSeq}(4,1), {\rm stackSeq}(4,13)$ + +\item exception: $exc := (|deck| \neq 52 \Rightarrow {\rm invalid\_argument})$ + +\end{itemize} + +\noindent place($cell, i, card$): +\begin{itemize} +\item transition: + +\begin{tabular}{|p{3cm}|p{5cm}|l|} +\hhline{|-|-|-|} +$cell = \mbox{Tableau}$ & T[$i$] := T[$i$].push($card$) \\ +\hhline{|-|-|-|} +$cell = \mbox{FreeCell}$ & F[$i$] := F[$i$].push($card$)\\ +\hhline{|-|-|-|} +$cell = \mbox{HomeCell}$ & H[$i$] := H[$i$].push($card$)\\ +\hhline{-|-|-|} +\end{tabular} + +\item exception: + +\begin{tabular}{|p{3.cm}|p{12.5cm}|p{8cm}|l|} +\hhline{~|-|~|~|} +\multicolumn{1}{r|}{} & \multicolumn{1}{l|}{$exc :=$}\\ +\hhline{|-|-|-|-|} +$cell = \mbox{Tableau}$ & $(((0 \leq i < 8)\ \land$ (T[$i$].getSize() = T[$i$].getMaxSize()) $\Rightarrow$ invalid\_config$\ |\ $ + \newline $(i \geq 8) \Rightarrow $ invalid\_cell)\\ +\hhline{|-|-|-|-|} +$cell = \mbox{FreeCell}$ & $(((0 \leq i < 4)$ $\land$ (F[$i$].getSize() = F[$i$].getMaxSize()) $\Rightarrow$ invalid\_config$\ |\ $ +\newline $(i \geq 4) \Rightarrow$ invalid\_cell)\\ +\hhline{|-|-|-|-|} +$cell = \mbox{HomeCell}$ & $(((0 \leq i < 4)\ \land$ (H[$i$].getSize() = H[$i$].getMaxSize()) $\Rightarrow$ invalid\_config$\ |\ $ +\newline $(i \geq 4) \Rightarrow$ invalid\_cell)\\ + \hhline{|-|-|-|-|} +\end{tabular} + +\end{itemize} + +\noindent isValidMove($c0, n0, c1, n1$): +\begin{itemize} +\item output: + +\begin{tabular}{|p{3.cm}|p{3cm}|l|} +\hhline{~|~|-|} +\multicolumn{1}{r}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l|}{$out :=$}\\ +\hhline{|-|-|-|} +$c0 = \mbox{Tableau}$ & $c1 = \mbox{Tableau}$ & validTabTab($n0$,$n1$) \\ +\hhline{|~|-|-|} +& $c1 = \mbox{FreeCell}$ & validTabFree($n0$,$n1$) \\ +\hhline{|~|-|-|} + & $c1 = \mbox{HomeCell}$& validTabHome($n0$,$n1$) \\ +\hhline{|-|-|-|} +$c0 = \mbox{FreeCell}$ & $c1 = \mbox{Tableau}$ & validFreeTab($n0$,$n1$) \\ +\hhline{|~|-|-|} +& $c1 = \mbox{FreeCell}$ & validFreeFree($n0$,$n1$) \\ +\hhline{|~|-|-|} + & $c1 = \mbox{HomeCell}$& validFreeHome($n0$,$n1$) \\ +\hhline{|-|-|-|} +$c0 = \mbox{HomeCell}$ & $c1 = \mbox{Tableau}$ & false \\ +\hhline{|~|-|-|} +& $c1 = \mbox{FreeCell}$ & false\\ +\hhline{|~|-|-|} + & $c1 = \mbox{HomeCell}$& false \\ + \hhline{|-|-|-|} +\end{tabular} + +\item exception: $exc :=$ ((${\rm\lnot isValidCell}(c0, n0) \lor {\rm\lnot isValidCell}(c1, n1)) \Rightarrow {\rm invalid\_cell})$ + +\end{itemize} + +\noindent makeMove($c0, n0, c1, n1$): +\begin{itemize} +\item transition: + +\begin{tabular}{|p{2.5cm}|p{3cm}|l|} +\hhline{|-|-|-|} +$c0 = \mbox{Tableau}$ & $c1 = \mbox{Tableau}$ & T[$n0$], T[$n1$] := T[$n0$].pop(), T[$n1$].push(T[$n0$].top()) \\ +\hhline{|~|-|-|} +& $c1 = \mbox{FreeCell}$ & T[$n0$], F[$n1$] := T[$n0$].pop(), F[$n1$].push(T[$n0$].top()) \\ +\hhline{|~|-|-|} + & $c1 = \mbox{HomeCell}$& T[$n0$], H[$n1$] := T[$n0$].pop(), H[$n1$].push(T[$n0$].top()) \\ +\hhline{|-|-|-|} +$c0 = \mbox{FreeCell}$ & $c1 = \mbox{Tableau}$ & F[$n0$], T[$n1$] := F[$n0$].pop(), T[$n1$].push(F[$n0$].top()) \\ +\hhline{|~|-|-|} +& $c1 = \mbox{FreeCell}$ & F[$n0$], F[$n1$] := F[$n0$].pop(), F[$n1$].push(F[$n0$].top()) \\ +\hhline{|~|-|-|} + & $c1 = \mbox{HomeCell}$& F[$n0$], H[$n1$] := F[$n0$].pop(), H[$n1$].push(F[$n0$].top()) \\ +\hhline{|-|-|-|} +\end{tabular} +\item exception: exc := ($(\lnot\ {\rm isValidCell}(c0, n0) \lor \lnot {\rm isValidCell}(c1, n1)) \Rightarrow {\rm invalid\_cell}\ |\ \\(\lnot\ {\rm isValidMove}(c0, n0, c1, n1)) \Rightarrow {\rm invalid\_move})$ + +\end{itemize} + +\noindent getCell($cell,n$): +\begin{itemize} +\item output: + +\begin{tabular}{|p{3.cm}|p{1cm}|l|} +\hhline{~|-|} +\multicolumn{1}{r|}{} & \multicolumn{1}{l|}{$out :=$}\\ +\hhline{|-|-|-|} +$cell = \mbox{Tableau}$ & $T[n]$ \\ +\hhline{|-|-|-|} +$cell = \mbox{FreeCell}$ & $F[n]$ \\ +\hhline{|-|-|-|} +$cell = \mbox{HomeCell}$& $H[n]$ \\ +\hhline{|-|-|-|} +\end{tabular} + +\item exception: $exc :=$ ($(\lnot\ {\rm isValidCell}(cell,n)) \Rightarrow {\rm invalid\_cell})$ + +\end{itemize} + +\noindent validMoveExists(): +\begin{itemize} +\item output: $out := (\exists\, c0, c1: {\rm CellT}, i, j: \mathbb{N} : {\rm isValidMove}(c0, i, c1, j))$ + +\item exception: None + +\end{itemize} + +\noindent isInWinState(): +\begin{itemize} +\item output: $out := \\{\rm isWinningHomeCell}(0) \land\\ {\rm isWinningHomeCell}(1) \land\\ {\rm isWinningHomeCell}(2) \land\\ {\rm isWinningHomeCell}(3)$ + +\item exception: None + +\end{itemize} + + +\subsection*{Local Functions} + +\noindent stackSeq: $\mathbb{N} \times \mathbb{N} \rightarrow \mbox{(seq of CardStackT)}$\\ +\noindent stackSeq ($l, n$) $= s$ such that ($|s| = l \land (\forall\, i \in [0..l-1] : s[i] = {\rm CardStackT}(n, \langle \rangle))$\\ + +\noindent tableauDeck: $\mbox {(seq of CardT)} \rightarrow \mbox{(seq of CardStackT)}$\\ +\noindent tableauDeck ($deck$) = +\\$\langle {\rm CardStackT}(deck[0..6], 19) \rangle || \\ +\langle {\rm CardStackT}(deck[7..13], 19) \rangle || \\ +\langle {\rm CardStackT}(deck[14..20], 19) \rangle || \\ +\langle {\rm CardStackT}(deck[21..27], 19) \rangle|| \\ +\langle {\rm CardStackT}(deck[28..33], 18) \rangle|| \\ +\langle {\rm CardStackT}(deck[34..39], 18) \rangle|| \\ +\langle {\rm CardStackT}(deck[40..45], 18) \rangle|| \\ +\langle {\rm CardStackT}(deck[46..51], 18) \rangle$\\ + +\noindent isValidCell: $ \mbox{CellT} \times \mathbb{N} \rightarrow \mathbb{B}$\\ +\noindent isValidCell ($c, n$) $\equiv$\\ + +\begin{tabular}{|p{3cm}|p{2cm}|l|} +\hhline{|-|-|-|} +$c = $ Tableau & $0 \leq n < 8$\\ +\hhline{|-|-|-|} + $c =$ FreeCell & $0 \leq n < 4$\\ +\hhline{|-|-|-|} +$c =$ HomeCell & $0 \leq n < 4$\\ +\hhline{|-|-|-|} +\end{tabular}\\\\ + +\noindent validTabTab: $\rm \mathbb{N} \times \mathbb{N} \rightarrow \mathbb{B}$\\ +\noindent validTabTab ($t0, t1$) $\equiv$ + +\begin{tabular}{|p{4cm}|p{3.5cm}|l|} +\hhline{|-|-|-|} +$T[t0].getSize() > 0$ & T[$t1$].getSize() $>$ 0 & tabPlaceable(T[$t0$].top(), T[$t1$].top())\\ +\hhline{|~|-|-|} + & T[$t1$].getSize() = 0 & true\\ +\hhline{|-|-|-|} +T[$t0$].getSize() = 0 & T[$t1$].getSize() $>$ 0 & false\\ +\hhline{|~|-|-|} +& T[$t1$].getSize() $=$ 0 & false\\ +\hhline{|-|-|-|} +\end{tabular}\\\\ + + +\noindent validTabFree: $\rm \mathbb{N} \times \mathbb{N} \rightarrow \mathbb{B}$\\ +\noindent validTabFree ($t, f$) $\equiv$ T[$t$].getSize() $>$ 0 $\land$ F[$f$].getSize() = 0\\ + + +\noindent validTabHome: $\rm \mathbb{N} \times \mathbb{N} \rightarrow \mathbb{B}$\\ +\noindent validTabHome ($t, h$) $\equiv$ + +\begin{tabular}{|p{3.5cm}|p{3.5cm}|l|p{4cm}|} +\hhline{|-|-|-|-|} +T[$t$].getSize() $>$ 0 & H[$h$].getSize() $>$ 0 & homePlaceable(T[$t$].top(), H[$h$].top()) \\ +\hhline{|~|-|-|-|} + & H[$h$].getSize() = 0 & T[$t$].top().getSuit() = A \\ + \hhline{|-|-|-|-|} +T[$t$].getSize() = 0 & H[$h$].getSize() $>$ 0 & false \\ +\hhline{|~|-|-|-|} + & H[$h$].getSize() = 0 & false \\ +\hhline{|-|-|-|-|} +\end{tabular}\\\\ + + +\noindent validFreeTab: $\rm \mathbb{N} \times \mathbb{N} \rightarrow \mathbb{B}$\\ +\noindent validFreeTab ($f, t$) $\equiv$ + +\begin{tabular}{|p{3.5cm}|p{3.5cm}|l|} +\hhline{|-|-|-|} +F[$f$].getSize() $>$ 0 & T[$t$].getSize() $>$ 0 & tabPlaceable(F[$f$].top(), T[$t$].top())\\ +\hhline{|~|-|-|} + & T[$t$].getSize() = 0 & true\\ + \hhline{|-|-|-|} +F[$f$].getSize() = 0 & T[$t$].getSize() $>$ 0 & false\\ +\hhline{|~|-|-|} + & T[$t$].getSize() = 0 & false\\ +\hhline{|-|-|-|} +\end{tabular}\\\\ + + +\noindent validFreeFree: $\rm \mathbb{N} \times \mathbb{N} \rightarrow \mathbb{B}$\\ +\noindent validFreeFree ($f0, f1$) $\equiv$ F[$f0$].getSize() $>$ 0 $\land$ F[$f1$].getSize() = 0\\ + + +\noindent validFreeHome: $\rm \mathbb{N} \times \mathbb{N} \rightarrow \mathbb{B}$\\ +\noindent validFreeHome ($f, h$) $\equiv$ + +\begin{tabular}{|p{3.5cm}|p{3.5cm}|l|p{4cm}|} +\hhline{|-|-|-|-|} +F[$f$].getSize() $>$ 0 & H[$h$].getSize() $>$ 0 & homePlaceable\newline(F[$f$].top(), H[$h$].top()) \\ +\hhline{|~|-|-|-|} +& H[$h$].getSize() = 0 & F[$f$].top().getRank() = A \\ +\hhline{|-|-|-|-|} +F[$f$].getSize() = 0 & H[$h$].getSize() $>$ 0 & false\\ +\hhline{|~|-|-|-|} + & H[$h$].getSize() = 0 & false \\ +\hhline{|-|-|-|-|} +\end{tabular}\\\\ + +\noindent oneLess: $\rm CardT \times CardT \rightarrow \mathbb{B}$\\ +\noindent oneLess ($c0, c1$) $\equiv$\\ +let sts = [A, C2, C3, C4, C5, C6, C7, C8, C9, C10, J, Q, K]\\ in +($\exists\,i \in [0..|sts| - 2] : sts[i] = c0.getRank() \land sts[i+1] = c1.getRank()$)\\ + +\noindent oneMore: $\rm CardT \times CardT \rightarrow \mathbb{B}$\\ +\noindent oneMore ($c0, c1$) $\equiv$\\ +let sts = [A, C2, C3, C4, C5, C6, C7, C8, C9, C10, J, Q, K]\\ in +($\exists\,i \in [0..|sts| - 2] : sts[i] = c1.getRank() \land sts[i+1] = c0.getRank()$)\\ + +\noindent tabPlaceable: $\rm CardT \times CardT \rightarrow \mathbb{B}$\\ +\noindent tabPlaceable ($c0, c1$) $\equiv$ + +\begin{tabular}{|p{6.cm}|p{3cm}|l|} +\hhline{|-|-|-|} +c0.getColour() $\neq$ c1.getColour() & oneLess(c0, c1)\\ +\hhline{|-|-|-|} +c0.getColour() = c1.getColour() & false\\ +\hhline{|-|-|-|} +\end{tabular}\\\\ + +\noindent homePlaceable: $\rm CardT \times CardT \rightarrow \mathbb{B}$\\ +\noindent homePlaceable ($c0, c1$) $\equiv$ + +\begin{tabular}{|p{5.cm}|p{3cm}|l|} +\hhline{|-|-|-|} +c0.getSuit() = c1.getSuit() & oneMore(c0, c1)\\ +\hhline{|-|-|-|} +c0.getSuit() $\neq$ c1.getSuit() & false\\ +\hhline{|-|-|-|} +\end{tabular}\\\\ + +\noindent isWinningHomeCell: $\mathbb{N} \rightarrow \mathbb{B}$\\ +\noindent isWinningHomeCell ($i$) $\equiv$\\ +let $stSeq = H[i].{\rm toSeq}()$ in \\ +$stSeq[0].getRank() = {\rm A} \land |stSeq| = 13 \land (\forall\,i \in [0..|stSeq| - 2] : {\rm oneLess}(stSeq[i], stSeq[i+1]))$ + +\newpage + +\section* {Card Deck Utils Module} + +\subsection*{Module} + +CardDeckUtils + +\subsection* {Uses} + +\noindent CardTypes for SuitT, RankT and ColourT + +\noindent CardADT for CardT + +\subsection* {Syntax} + +\subsubsection* {Exported Access Programs} + +\begin{tabular}{| l | l | l | l |} +\hline +\textbf{Routine name} & \textbf{In} & \textbf{Out} & \textbf{Exceptions}\\ +\hline +CardDeckUtils\_randomDeck & & seq of CardT &\\ +\hline +\end{tabular} + +\subsection* {Semantics} + +\subsubsection* {State Variables} + +\subsubsection* {State Invariant} + +\subsubsection* {Assumptions} + +\subsubsection* {Access Routine Semantics} + +\noindent CardDeckUtils\_randomDeck(): +\begin{itemize} +\item output: $out := {\rm permute}({\rm deckSet()}) $ + +\item exception: None + +\end{itemize} + + +\subsection*{Local Functions} + +\noindent deckSet: $\mbox{(set of CardT)}$\\ +\noindent deckSet() $= \{ s: {\rm SuitT}, r: {\rm RankT} : {\rm CardT}(s, r) \} $\\ + +\noindent permute($inSet$): $\mbox{set of CardT} \to \mbox{seq of CardT}$\\ +\noindent permute = $S$ such that $S$ is a random permutation of $inSet$, satisfying \\$(\forall\,c \in S : c \in inSet) \land (\forall\,c \in inSet : c \in S) \land |S| = |inSet| \land (\forall\,i, j: \mathbb{N} | i \neq j : S[i] \neq S[j])$ +\end{document} \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/src/CardADT.cpp b/Assignments/A4/A4Soln-CS/src/CardADT.cpp new file mode 100644 index 00000000..e26ddc9a --- /dev/null +++ b/Assignments/A4/A4Soln-CS/src/CardADT.cpp @@ -0,0 +1,29 @@ +/** + * \file CardADT.cpp + * \brief The implementation of the CardT class. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + +#include "CardTypes.h" +#include "../include/CardADT.h" + +CardT::CardT(SuitT s, RankT r){ + this->suit = s; + this->rank = r; +} + +SuitT CardT::getSuit(){ + return this->suit; +} + +ColourT CardT::getColour(){ + if (this->suit == H || this->suit == D) + return Red; + else + return Black; +} + +RankT CardT::getRank(){ + return this->rank; +} \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/src/CardDeckUtils.cpp b/Assignments/A4/A4Soln-CS/src/CardDeckUtils.cpp new file mode 100644 index 00000000..3532aacb --- /dev/null +++ b/Assignments/A4/A4Soln-CS/src/CardDeckUtils.cpp @@ -0,0 +1,44 @@ +/** + * \file CardDeckUtils.cpp + * \brief Implementation of functions described by CardDeckUtils.h. Provides funcitons for generating + * and shuffling a deck of cards. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + +#include "CardDeckUtils.h" +#include "CardADT.h" +#include "CardTypes.h" +#include <vector> +#include <stdlib.h> + +std::vector<CardT> CardDeckUtils::deckSet(){ + RankT ranks[] = {A, C2, C3, C4, C5, C6, C7, C8, C9, C10, J, Q, K}; + SuitT suits[] = {H, D, S, C}; + + std::vector<CardT> deck = std::vector<CardT>(); + + for (int i = 0; i < 4; i++) + for (int j = 0; j < 13; j++) + deck.push_back(CardT(suits[i], ranks[j])); + return deck; +} + +std::vector<CardT> CardDeckUtils::permute(std::vector<CardT> inSet){ + srand(time(NULL)); + + for (int i = 0; i < 1000; i++){ + int j = rand() % 52; + int k = rand() % 52; + + CardT tmp = inSet[j]; + inSet[j] = inSet[k]; + inSet[k] = tmp; + } + + return inSet; +} + +std::vector<CardT> CardDeckUtils::randomDeck(){ + return permute(deckSet()); +} \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/src/GameBoard.cpp b/Assignments/A4/A4Soln-CS/src/GameBoard.cpp new file mode 100644 index 00000000..4bf47635 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/src/GameBoard.cpp @@ -0,0 +1,297 @@ +/** + * \file GameBoard.cpp + * \brief The implementation of the Freecell gameboard ADT described in GameBoard.h. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + +#include "GameBoard.h" +#include "CardStack.h" +#include "CardTypes.h" +#include "GameBoardTypes.h" +#include "Exceptions.h" +#include <stddef.h> + +GameBoardT::GameBoardT(){ + this->T = GameBoardT::stackSeq(8,19); + this->F = GameBoardT::stackSeq(4,1); + this->H = GameBoardT::stackSeq(4,13); +} + +GameBoardT::GameBoardT(std::vector<CardT> deck){ + if(deck.size() != 52) throw invalid_argument(); + + this->T = GameBoardT::tableauDeck(deck); + this->F = GameBoardT::stackSeq(4,1); + this->H = GameBoardT::stackSeq(4,13); +} + +void GameBoardT::place(CellT cell, unsigned int i, CardT card){ + switch (cell){ + case Tableau: + if ((i < 8) && (this->T[i].getSize() == this->T[i].getMaxSize())) + throw invalid_config(); + else if (i >= 8) + throw invalid_cell(); + break; + case FreeCell: + if ((i < 4) && (this->F[i].getSize() == this->F[i].getMaxSize())) + throw invalid_config(); + else if (i >= 4) + throw invalid_cell(); + break; + case HomeCell: + if ((i < 4) && (this->H[i].getSize() == this->H[i].getMaxSize())) + throw invalid_config(); + else if (i >= 4) + throw invalid_cell(); + break; + } + + switch (cell){ + case Tableau: + this->T[i] = this->T[i].push(card); + break; + case FreeCell: + this->F[i] = this->F[i].push(card); + break; + case HomeCell: + this->H[i] = this->H[i].push(card); + break; + } +} + +bool GameBoardT::isValidMove(CellT c0, unsigned int n0, CellT c1, unsigned int n1){ + if (!isValidCell(c0, n0) || !isValidCell(c1, n1)) throw invalid_cell(); + + switch (c0){ + case Tableau: + switch (c1){ + case Tableau: + return validTabTab(n0, n1); + case FreeCell: + return validTabFree(n0, n1); + case HomeCell: + return validTabHome(n0, n1); + } + case FreeCell: + switch (c1){ + case Tableau: + return validFreeTab(n0, n1); + case FreeCell: + return validFreeFree(n0, n1); + case HomeCell: + return validFreeHome(n0, n1); + } + case HomeCell: + return false; + } +} + +void GameBoardT::makeMove(CellT c0, unsigned int n0, CellT c1, unsigned int n1){ + if (!isValidMove(c0, n0, c1, n1)) throw invalid_move(); + if (!isValidCell(c0, n0) || !isValidCell(c1, n1)) throw invalid_cell(); + + switch (c0){ + case Tableau: + switch (c1){ + case Tableau: + this->T[n1] = this->T[n1].push(this->T[n0].top()); + this->T[n0] = this->T[n0].pop(); + return; + case FreeCell: + this->F[n1] = this->F[n1].push(this->T[n0].top()); + this->T[n0] = this->T[n0].pop(); + return; + case HomeCell: + this->H[n1] = this->H[n1].push(this->T[n0].top()); + this->T[n0] = this->T[n0].pop(); + return; + } + case FreeCell: + switch (c1){ + case Tableau: + this->T[n1] = this->T[n1].push(this->F[n0].top()); + this->F[n0] = this->F[n0].pop(); + return; + case FreeCell: + this->F[n1] = this->F[n1].push(this->F[n0].top()); + this->F[n0] = this->F[n0].pop(); + return; + case HomeCell: + this->H[n1] = this->H[n1].push(this->F[n0].top()); + this->F[n0] = this->F[n0].pop(); + return; + } + case HomeCell: return; + } +} + +CardStackT GameBoardT::getCell(CellT cell, unsigned int n){ + if (!isValidCell(cell, n)) throw invalid_cell(); + + switch (cell){ + case Tableau: + return this->T[n]; + case FreeCell: + return this->F[n]; + case HomeCell: + return this->H[n]; + } +} + +bool GameBoardT::validMoveExists(){ + CellT cells[] = {Tableau, FreeCell, HomeCell}; + unsigned int size[] = {8, 4, 4}; + + for(int i = 0; i < 3; i++){ + CellT c0 = cells[i]; + for (int n0 = 0; n0 < size[i]; n0++){ + for (int j = 0; j < 3; j++){ + CellT c1 = cells[j]; + for(int n1 = 0; n1 < size[j]; n1++){ + if (isValidMove(c0, n0, c1, n1)) return true; + } + } + } + } + return false; +} + +bool GameBoardT::isInWinState(){ + return isWinningHomeCell(0) && isWinningHomeCell(1) && isWinningHomeCell(2) && isWinningHomeCell(3); +} + +/****** private local functions ******/ + +std::vector<CardStackT> GameBoardT::stackSeq(unsigned int l, unsigned int n){ + std::vector<CardStackT> stSeq = std::vector<CardStackT>(); + + for(int i = 0; i < l; i++){ + stSeq.push_back(CardStackT(n, std::vector<CardT>())); + } + + return stSeq; +} + + +std::vector<CardStackT> GameBoardT::tableauDeck(std::vector<CardT> deck){ + std::vector<CardStackT> stSeq = std::vector<CardStackT>(); + + unsigned int lengths[] = {7, 7, 7, 7, 6, 6, 6, 6}; + unsigned int sizes[] = {19,19,19,19,18,18,18,18}; + + int n = 0; + for (int i = 0; i < 8; i++){ + std::vector<CardT> slice(deck.begin() + n, deck.begin() + n + lengths[i]); + stSeq.push_back(CardStackT(sizes[i], slice)); + n += lengths[i]; + } + + return stSeq; +} + +bool GameBoardT::isValidCell(CellT c, unsigned int n){ + switch (c){ + case Tableau: + return n < 8; + case FreeCell: + return n < 4; + case HomeCell: + return n < 4; + } +} + +bool GameBoardT::validTabTab(unsigned int t0, unsigned int t1){ + if (this->T[t0].getSize() > 0){ + if(this->T[t1].getSize() > 0) + return tabPlaceable(this->T[t0].top(), this->T[t1].top()); + else if (this->T[t1].getSize() == 0) + return true; + } + return false; +} + +bool GameBoardT::validTabFree(unsigned int t, unsigned int f){ + if (this->T[t].getSize() > 0){ + if(this->F[f].getSize() > 0) + return false; + else if (this->F[f].getSize() == 0) + return true; + } + return false; +} + +bool GameBoardT::validTabHome(unsigned int t, unsigned int h){ + if (this->T[t].getSize() > 0){ + if(H[h].getSize() > 0) + return homePlaceable(T[t].top(), H[h].top()); + else if (this->H[h].getSize() == 0) + return this->T[t].top().getRank() == A; + } + return false; +} + +bool GameBoardT::validFreeTab(unsigned int f, unsigned int t){ + if (this->F[f].getSize() > 0){ + if(this->T[t].getSize() > 0) + return tabPlaceable(this->F[f].top(), this->T[t].top()); + else if (this->T[t].getSize() == 0) + return true; + } + return false; +} + +bool GameBoardT::validFreeFree(unsigned int f0, unsigned int f1){ + return (this->F[f0].getSize() > 0 && this->F[f1].getSize() == 0); +} + +bool GameBoardT::validFreeHome(unsigned int f, unsigned int h){ + if (this->F[f].getSize() > 0){ + if(this->H[h].getSize() > 0) + return homePlaceable(F[f].top(), this->H[h].top()); + else if (this->H[h].getSize() == 0) + return this->F[f].top().getRank() == A; + } + return false; +} + +bool GameBoardT::oneLess(CardT c0, CardT c1){ + RankT ranks[] = {A, C2, C3, C4, C5, C6, C7, C8, C9, C10, J, Q, K}; + + for(int i = 0; i < 12; i++) + if (c0.getRank() == ranks[i] && c1.getRank() == ranks[i + 1]) return true; + return false; +} + +bool GameBoardT::oneMore(CardT c0, CardT c1){ + RankT ranks[] = {A, C2, C3, C4, C5, C6, C7, C8, C9, C10, J, Q, K}; + + for(int i = 0; i < 12; i++) + if (c1.getRank() == ranks[i] && c0.getRank() == ranks[i + 1]) return true; + return false; +} + +bool GameBoardT::tabPlaceable(CardT c0, CardT c1){ + if (c0.getColour() != c1.getColour()) return oneLess(c0, c1); + else return false; +} + +bool GameBoardT::homePlaceable(CardT c0, CardT c1){ + if (c0.getSuit() == c1.getSuit()) return oneMore(c0, c1); + else return false; +} + +bool GameBoardT::isWinningHomeCell(unsigned int i){ + std::vector<CardT> stSeq = H[i].toSeq(); + + if (!(stSeq.size() == 13)) return false; + if (!(stSeq[0].getRank() == A)) return false; + + bool winning = true; + + for (int j = 0; j < H[i].getSize() - 1; j++) + winning = winning && oneLess(stSeq[j], stSeq[j + 1]); + + return winning; +} diff --git a/Assignments/A4/A4Soln/src/README.md b/Assignments/A4/A4Soln-CS/src/README.md similarity index 100% rename from Assignments/A4/A4Soln/src/README.md rename to Assignments/A4/A4Soln-CS/src/README.md diff --git a/Assignments/A4/A4Soln-CS/src/Stack.cpp b/Assignments/A4/A4Soln-CS/src/Stack.cpp new file mode 100644 index 00000000..c8732dcc --- /dev/null +++ b/Assignments/A4/A4Soln-CS/src/Stack.cpp @@ -0,0 +1,63 @@ +/** + * \file Stack.h + * \brief The implementation of the generic stack module described in Stack.h. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 8th, 2018 +*/ + +#include "Stack.h" +#include "CardADT.h" +#include "Exceptions.h" +#include <vector> + +template <class T> +Stack<T>::Stack(unsigned int n, std::vector<T> s){ + if (s.size() > n) throw invalid_argument(); + if (n == 0) throw invalid_argument(); + + this->S = s; + this->max_size = n; +} + +template <class T> +Stack<T> Stack<T>::push(T e){ + if (this->max_size == this->S.size()) throw stack_full(); + + std::vector<T> new_(this->S); + new_.push_back(e); + return Stack<T>(this->max_size, new_); +} + +template <class T> +Stack<T> Stack<T>::pop(){ + if (this->S.size() == 0) throw stack_empty(); + + std::vector<T> new_(this->S); + new_.pop_back(); + return Stack<T>(this->max_size, new_); +} + +template <class T> +T Stack<T>::top(){ + if (this->S.size() == 0) throw stack_empty(); + + return this->S.back(); +} + +template <class T> +unsigned int Stack<T>::getSize(){ + return this->S.size(); +} + +template <class T> +unsigned int Stack<T>::getMaxSize(){ + return this->max_size; +} + +template <class T> +std::vector<T> Stack<T>::toSeq(){ + return this->S; +} + +//A stack of CardT objects +template class Stack<CardT>; \ No newline at end of file diff --git a/Assignments/A4/A4Soln-CS/test/testCardADT.cpp b/Assignments/A4/A4Soln-CS/test/testCardADT.cpp new file mode 100644 index 00000000..7cc81df4 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/test/testCardADT.cpp @@ -0,0 +1,46 @@ +/** + * \file testCardADT.cpp + * \brief Implementation of CardT tests. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 9th, 2018 +*/ + +#include "catch.h" +#include "CardADT.h" +#include "CardTypes.h" + +TEST_CASE( "tests for CardT" , "[CardT]" ) { + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + SECTION("test constuctor"){ + CardT newC0(D, C2); + + REQUIRE(newC0.getRank() == C2); + REQUIRE(newC0.getSuit() == D); + } + + SECTION("test getSuit() returns correct value"){ + REQUIRE(c0.getSuit() == H); + REQUIRE(c1.getSuit() == D); + REQUIRE(c2.getSuit() == S); + REQUIRE(c3.getSuit() == C); + } + + SECTION("test getColour() returns correct value"){ + REQUIRE(c0.getColour() == Red); + REQUIRE(c1.getColour() == Red); + REQUIRE(c2.getColour() == Black); + REQUIRE(c3.getColour() == Black); + } + + SECTION("test getRank() returns correct value"){ + REQUIRE(c0.getRank() == C2); + REQUIRE(c1.getRank() == C9); + REQUIRE(c2.getRank() == K); + REQUIRE(c3.getRank() == J); + } + +} diff --git a/Assignments/A4/A4Soln-CS/test/testCardDeckUtils.cpp b/Assignments/A4/A4Soln-CS/test/testCardDeckUtils.cpp new file mode 100644 index 00000000..ba7fb9fa --- /dev/null +++ b/Assignments/A4/A4Soln-CS/test/testCardDeckUtils.cpp @@ -0,0 +1,50 @@ +/** + * \file testCardADT.cpp + * \brief Implementation of CardDeckUtils tests. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 9th, 2018 +*/ + +#include "catch.h" +#include <vector> +#include "CardDeckUtils.h" + +TEST_CASE( "tests for CardDeckUtils" , "[CardDeckUtils]" ) { + SECTION("test randomDeck() contains all cards"){ + std::vector<CardT> deck = CardDeckUtils::randomDeck(); + REQUIRE(deck.size() == 52); + + bool found[52]; + + for(int i = 0; i < 52; i++) + found[i] = false; + + //mark cards as found in found array + for (auto card: deck) + found[card.getSuit()*13 + card.getRank()] = true; + + //ensure that all cards are in the found array + for (auto f: found) + REQUIRE(f); + } + + SECTION("test randomDeck() is not the same ordering as the original deck"){ + //generate deck same way that CardDeckUtils generates it in the deckSet function + RankT ranks[] = {A, C2, C3, C4, C5, C6, C7, C8, C9, C10, J, Q, K}; + SuitT suits[] = {H, D, S, C}; + + std::vector<CardT> deck = std::vector<CardT>(); + + for (int i = 0; i < 4; i++) + for (int j = 0; j < 13; j++) + deck.push_back(CardT(suits[i], ranks[j])); + + std::vector<CardT> deck0 = CardDeckUtils::randomDeck(); + + //check that the shuffled deck is not the same as the original one (SUPER low chance that this could happen randomly) + bool same = true; + for (int i = 0; i < 52; i++) + same = same && (deck[i].getSuit() == deck0[i].getSuit() && deck[i].getRank() == deck0[i].getRank()); + REQUIRE(!same); + } +} diff --git a/Assignments/A4/A4Soln-CS/test/testGameBoard.cpp b/Assignments/A4/A4Soln-CS/test/testGameBoard.cpp new file mode 100644 index 00000000..c6a28ca6 --- /dev/null +++ b/Assignments/A4/A4Soln-CS/test/testGameBoard.cpp @@ -0,0 +1,818 @@ +/** + * \file testCardADT.cpp + * \brief Implementation of CardT tests. + * \author Christopher W. Schankula, MacID: schankuc + * \date April 9th, 2018 +*/ + + +/* +* NOTABLE TEST CASES (ACCORDING TO RUBRIC) +* Lines 135-163: Test case for an invalid move between columns +* Lines 165-175, 301-315: Test case for moving to free cell, when one is available +* Lines 177-215, 317-350: Test case for moving to free cell, when no free cell available +* Lines 804-818: Test case for detecting winning game board (true case and false case) +* Lines 756-801: Test case for detecting no valid moves left (true case and false case) +*/ + +#include "catch.h" +#include "GameBoard.h" +#include "GameBoardTypes.h" +#include "CardDeckUtils.h" +#include <iostream> +#include "Exceptions.h" + +TEST_CASE( "tests for GameBoard" , "[GameBoard]" ) { + GameBoardT gb = GameBoardT(); + + SECTION("test GameBoardT blank constructor"){ + CellT cellTypes[] = {Tableau, FreeCell, HomeCell}; + unsigned int cellLens[] = {8, 4, 4}; + + //require that all cells are empty at the start + for (int i = 0; i < 3; i++){ + CellT c = cellTypes[i]; + for (int j = 0; j < cellLens[i]; j++) + REQUIRE(gb.getCell(c, i).getSize() == 0); + } + } + + SECTION("test GameBoardT deck constructor"){ + CellT cellTypes[] = {Tableau, FreeCell, HomeCell}; + unsigned int cellLens[] = {8, 4, 4}; + //correct sizes of cell //sizes of tableau spaces //FreeCells and HomeCells empty (below) + std::vector<std::vector<unsigned int>> cellSizes = {{7, 7, 7, 7, 6, 6, 6, 6}, {0, 0, 0, 0}, {0, 0, 0, 0}}; + + std::vector<CardT> deck = CardDeckUtils::randomDeck(); + gb = GameBoardT(deck); + + //require that all cells are the correct sizes at the start + for (int i = 0; i < 3; i++){ + CellT c = cellTypes[i]; + for (int j = 0; j < cellLens[i]; j++) + REQUIRE(gb.getCell(c, j).getSize() == cellSizes[i][j]); + } + + //require that the top cards of each Tableau space are in the correct places according to the spec + int k = 0; + for (int j = 0; j < cellLens[0]; j++){ + k += cellSizes[0][j]; + REQUIRE(gb.getCell(Tableau, j).top().getRank() == deck[k-1].getRank()); + } + } + + SECTION("test GameBoardT deck constructor throws invalid_argument"){ + CardT c0 = CardT(H, C10); + + std::vector<CardT> singleCard = std::vector<CardT>(); + + singleCard.push_back(c0); + + REQUIRE_THROWS_AS(GameBoardT(singleCard), invalid_argument); + } + + + SECTION("test place() places card correctly"){ + CardT c0 = CardT(H, C10); + + gb.place(Tableau, 0, c0); + + REQUIRE(gb.getCell(Tableau, 0).top().getSuit() == H); + REQUIRE(gb.getCell(Tableau, 0).top().getRank() == C10); + } + + SECTION("test place() throws invalid_config if trying to place card incorrectly"){ + CardT c0 = CardT(H, C10); + + for (int i = 0; i < 19; i++){ + REQUIRE(gb.getCell(Tableau, 0).getSize() == i); + gb.place(Tableau, 0, c0); + } + + gb.place(FreeCell, 0, c0); + REQUIRE(gb.getCell(FreeCell, 0).getSize() == 1); + + for (int i = 0; i < 13; i++){ + REQUIRE(gb.getCell(HomeCell, 0).getSize() == i); + gb.place(HomeCell, 0, c0); + } + + REQUIRE_THROWS_AS(gb.place(Tableau, 0, c0), invalid_config); + REQUIRE_THROWS_AS(gb.place(FreeCell, 0, c0), invalid_config); + REQUIRE_THROWS_AS(gb.place(HomeCell, 0, c0), invalid_config); + } + + SECTION("test place() throws invalid_cell if trying to place card on incorrect cell"){ + CardT c0 = CardT(H, C10); + + REQUIRE_THROWS_AS(gb.place(Tableau, 8, c0), invalid_cell); + REQUIRE_THROWS_AS(gb.place(FreeCell, 5, c0), invalid_cell); + REQUIRE_THROWS_AS(gb.place(HomeCell, 5, c0), invalid_cell); + } + + SECTION("test getCell() gets correct cell"){ + CardT c0 = CardT(H, C10); + + gb.place(Tableau, 0, c0); + + REQUIRE(gb.getCell(Tableau, 0).top().getRank() == C10); + REQUIRE(gb.getCell(Tableau, 0).top().getSuit() == H); + } + + SECTION("test getCell() throws invalid_cell"){ + REQUIRE_THROWS_AS(gb.getCell(Tableau, 9), invalid_cell); + REQUIRE_THROWS_AS(gb.getCell(HomeCell, 4), invalid_cell); + REQUIRE_THROWS_AS(gb.getCell(FreeCell, 4), invalid_cell); + } + + /******* TESTS FOR isValidMove() *******/ + + SECTION("test isValidMove() throws invalid_cell"){ + REQUIRE_THROWS_AS(gb.isValidMove(Tableau, 9, FreeCell, 0), invalid_cell); + REQUIRE_THROWS_AS(gb.isValidMove(Tableau, 0, FreeCell, 5), invalid_cell); + } + + SECTION("test isValidMove() for moving a card from a Tableau to a Tableau - valid moves"){ + CardT c0 = CardT(H, J); + CardT c1 = CardT(S, C10); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + + //This is a valid move (black 10 on to red Jack) + REQUIRE(gb.isValidMove(Tableau, 1, Tableau, 0)); + + //This is a valid move (black 10 on to empty Tableau cell 2) + REQUIRE(gb.isValidMove(Tableau, 1, Tableau, 2)); + } + + SECTION("test isValidMove() for moving a card from a Tableau to a Tableau - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + + //This is a not a valid move (red Jack on to black 10) + REQUIRE(!gb.isValidMove(Tableau, 0, Tableau, 1)); + + //This is a not a valid move (Tableau 2 is empty cell) + REQUIRE(!gb.isValidMove(Tableau, 2, Tableau, 1)); + } + + SECTION("test isValidMove() for moving a card from a Tableau to a FreeCell - valid move"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + + //This is a valid move (red Jack on to empty freecell) + REQUIRE(gb.isValidMove(Tableau, 0, FreeCell, 0)); + } + + SECTION("test isValidMove() for moving a card from a Tableau to a FreeCell - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + CardT c2 = CardT(C, A); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + //place card on FreeCell + gb.place(FreeCell, 0, c2); + + //This is a not a valid move (empty Tableau cell to empty freecell) + REQUIRE(!gb.isValidMove(Tableau, 2, FreeCell, 0)); + + //This is a not a valid move (red Jack to occupied freecell) + REQUIRE(!gb.isValidMove(Tableau, 0, FreeCell, 0)); + } + + SECTION("test isValidMove() for moving a card from a Tableau to a FreeCell - no freecells available"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + CardT c2 = CardT(C, A); + CardT c3 = CardT(H, C5); + CardT c4 = CardT(D, K); + + //place cards on all four freecells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + gb.place(FreeCell, 2, c2); + gb.place(FreeCell, 3, c3); + //place a card on a tableau cell to move + gb.place(Tableau, 0, c4); + + //These are not valid moves (all freecells used) + REQUIRE(!gb.isValidMove(Tableau, 0, FreeCell, 0)); + REQUIRE(!gb.isValidMove(Tableau, 0, FreeCell, 1)); + REQUIRE(!gb.isValidMove(Tableau, 0, FreeCell, 2)); + REQUIRE(!gb.isValidMove(Tableau, 0, FreeCell, 3)); + } + + SECTION("test isValidMove() for moving a card from a Tableau to a HomeCell - valid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, A); + CardT c2 = CardT(S, C2); + CardT c3 = CardT(S, C3); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c3); + gb.place(Tableau, 2, c2); + gb.place(Tableau, 1, c1); + + //This is a valid move (ace to empty HomeCell) + REQUIRE(gb.isValidMove(Tableau, 1, HomeCell, 0)); + REQUIRE_NOTHROW(gb.makeMove(Tableau, 1, HomeCell, 0)); + + //This is a valid move (2 to ace of same suit) + REQUIRE(gb.isValidMove(Tableau, 2, HomeCell, 0)); + REQUIRE_NOTHROW(gb.makeMove(Tableau, 2, HomeCell, 0)); + + //This is a valid move (2 to 3 of same suit) + REQUIRE(gb.isValidMove(Tableau, 1, HomeCell, 0)); + REQUIRE_NOTHROW(gb.makeMove(Tableau, 1, HomeCell, 0)); + } + + SECTION("test isValidMove() for moving a card from a Tableau to a HomeCell - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C2); + CardT c2 = CardT(C, A); + CardT c3 = CardT(C, C3); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + //place card on FreeCell + gb.place(Tableau, 3, c3); + gb.place(HomeCell, 0, c2); + + //This is a not a valid move (empty Tableau cell to empty homecell) + REQUIRE(!gb.isValidMove(Tableau, 2, HomeCell, 1)); + + //This is a not a valid move (3 of Clubs to ace of clubs) + REQUIRE(!gb.isValidMove(Tableau, 3, HomeCell, 0)); + + //This is a not a valid move (2 of spades to ace of clubs) + REQUIRE(!gb.isValidMove(Tableau, 1, HomeCell, 0)); + } + + //moving from a FreeCell to any type of cell + + + SECTION("test isValidMove() for moving a card from a FreeCell to a Tableau - valid moves"){ + CardT c0 = CardT(H, J); + CardT c1 = CardT(S, C10); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + + //This is a valid move (jack of Hearts (red) on to empty tableau cell) + REQUIRE(gb.isValidMove(FreeCell, 0, Tableau, 0)); + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 0, Tableau, 0)); + + //This is a valid move (black 10 on to red jack of hearts) + REQUIRE(gb.isValidMove(FreeCell, 1, Tableau, 0)); + } + + SECTION("test isValidMove() for moving a card from a FreeCell to a Tableau - invalid moves"){ + CardT c0 = CardT(H, J); + CardT c1 = CardT(S, C10); + CardT c2 = CardT(S, J); + + //place cards on freecell and tableau cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + gb.place(Tableau, 0, c2); + + //This is an invalid move (empty FreeCell to tableau cell) + REQUIRE(!gb.isValidMove(FreeCell, 2, Tableau, 0)); + + //This is an invalid move (10 of Spades on to Jack of Spades) + REQUIRE(!gb.isValidMove(FreeCell, 1, Tableau, 0)); + } + + SECTION("test isValidMove() for moving a card from a FreeCell to a FreeCell - valid move"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + + //This is a valid move (red 10 on to empty freecell) + REQUIRE(gb.isValidMove(FreeCell, 0, FreeCell, 2)); + REQUIRE(gb.isValidMove(FreeCell, 0, FreeCell, 3)); + //This is a valid move (black 9 to empty freecell) + REQUIRE(gb.isValidMove(FreeCell, 1, FreeCell, 3)); + REQUIRE(gb.isValidMove(FreeCell, 0, FreeCell, 3)); + } + + SECTION("test isValidMove() for moving a card from a FreeCell to a FreeCell - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + + //This is an invalid move (empty freecell to other empty freecell) + REQUIRE(!gb.isValidMove(FreeCell, 2, FreeCell, 3)); + REQUIRE(!gb.isValidMove(FreeCell, 3, FreeCell, 2)); + //This is an invalid move (freecell with a card to an occupied one) + REQUIRE(!gb.isValidMove(FreeCell, 1, FreeCell, 0)); + REQUIRE(!gb.isValidMove(FreeCell, 0, FreeCell, 1)); + } + + SECTION("test isValidMove() for moving a card from a FreeCell to a FreeCell - no freecells available"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + CardT c2 = CardT(C, A); + CardT c3 = CardT(H, C5); + + //place cards on all four freecells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + gb.place(FreeCell, 2, c2); + gb.place(FreeCell, 3, c3); + //place a card on a tableau cell to move + + //These are not valid moves (all freecells used) + REQUIRE(!gb.isValidMove(FreeCell, 0, FreeCell, 1)); + REQUIRE(!gb.isValidMove(FreeCell, 0, FreeCell, 2)); + REQUIRE(!gb.isValidMove(FreeCell, 0, FreeCell, 3)); + } + + SECTION("test isValidMove() for moving a card from a FreeCell to a HomeCell - valid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, A); + CardT c2 = CardT(S, C2); + CardT c3 = CardT(S, C3); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + gb.place(FreeCell, 2, c2); + gb.place(FreeCell, 3, c3); + + //This is a valid move (ace to empty HomeCell) + REQUIRE(gb.isValidMove(FreeCell, 1, HomeCell, 0)); + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 1, HomeCell, 0)); + + //This is a valid move (2 to ace of same suit) + REQUIRE(gb.isValidMove(FreeCell, 2, HomeCell, 0)); + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 2, HomeCell, 0)); + + //This is a valid move (2 to 3 of same suit) + REQUIRE(gb.isValidMove(FreeCell, 3, HomeCell, 0)); + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 3, HomeCell, 0)); + } + + SECTION("test isValidMove() for moving a card from a FreeCell to a HomeCell - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C2); + CardT c2 = CardT(C, A); + CardT c3 = CardT(C, C3); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + //place card on FreeCell + gb.place(FreeCell, 3, c3); + gb.place(HomeCell, 0, c2); + + //This is a not a valid move (empty FreeCell to empty homecell) + REQUIRE(!gb.isValidMove(FreeCell, 2, HomeCell, 1)); + + //This is a not a valid move (3 of Clubs to ace of clubs) + REQUIRE(!gb.isValidMove(FreeCell, 3, HomeCell, 0)); + + //This is a not a valid move (2 of spades to ace of clubs) + REQUIRE(!gb.isValidMove(FreeCell, 1, HomeCell, 0)); + } + + SECTION("moves from from HomeCell are invalid"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C2); + CardT c2 = CardT(C, A); + CardT c3 = CardT(C, C3); + + gb.place(HomeCell, 0, c2); + + CellT cellTypes[] = {Tableau, HomeCell, FreeCell}; + + //try moving from all HomeCells to all other types of cells + for (int i = 0; i < 4; i++) + for(int j = 0; j < 3; j++) + REQUIRE(!gb.isValidMove(HomeCell, i, cellTypes[j], 0)); + } + + + /******* TESTS FOR makeMove() *******/ + + SECTION("test makeMove() for moving a card from a Tableau to a Tableau - valid moves"){ + CardT c0 = CardT(H, J); + CardT c1 = CardT(S, C10); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + + REQUIRE(gb.getCell(Tableau, 0).getSize() == 1); + REQUIRE(gb.getCell(Tableau, 1).getSize() == 1); + + //This is a valid move (black 10 on to red Jack) + REQUIRE_NOTHROW(gb.makeMove(Tableau, 1, Tableau, 0)); + + //verify correct state afterwards + REQUIRE(gb.getCell(Tableau, 1).getSize() == 0); + REQUIRE(gb.getCell(Tableau, 0).getSize() == 2); + REQUIRE(gb.getCell(Tableau, 0).top().getRank() == C10); + REQUIRE(gb.getCell(Tableau, 0).top().getSuit() == S); + } + + SECTION("test makeMove() for moving a card from a Tableau to a Tableau - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + + //This is a not a valid move (red Jack on to black 10) + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 0, Tableau, 1), invalid_move); + + //This is a not a valid move (Tableau 2 is empty cell) + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 2, Tableau, 1), invalid_move); + } + + SECTION("test makeMove() for moving a card from a Tableau to a FreeCell - valid move"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + + + REQUIRE(gb.getCell(Tableau, 0).getSize() == 1); + REQUIRE(gb.getCell(Tableau, 1).getSize() == 1); + + //This is a valid move (red Jack on to empty freecell) + REQUIRE_NOTHROW(gb.makeMove(Tableau, 0, FreeCell, 0)); + + REQUIRE(gb.getCell(Tableau, 0).getSize() == 0); + REQUIRE(gb.getCell(FreeCell, 0).getSize() == 1); + REQUIRE(gb.getCell(FreeCell, 0).top().getRank() == C10); + REQUIRE(gb.getCell(FreeCell, 0).top().getSuit() == H); + } + + SECTION("test makeMove() for moving a card from a Tableau to a FreeCell - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + CardT c2 = CardT(C, A); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + //place card on FreeCell + gb.place(FreeCell, 0, c2); + + //This is a not a valid move (empty Tableau cell to empty freecell) + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 2, FreeCell, 0), invalid_move); + + //This is a not a valid move (red Jack to occupied freecell) + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 0, FreeCell, 0), invalid_move); + } + + SECTION("test makeMove() for moving a card from a Tableau to a FreeCell - no freecells available"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + CardT c2 = CardT(C, A); + CardT c3 = CardT(H, C5); + CardT c4 = CardT(D, K); + + //place cards on all four freecells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + gb.place(FreeCell, 2, c2); + gb.place(FreeCell, 3, c3); + //place a card on a tableau cell to move + gb.place(Tableau, 0, c4); + + //These are not valid moves (all freecells used) + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 0, FreeCell, 0), invalid_move); + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 0, FreeCell, 1), invalid_move); + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 0, FreeCell, 2), invalid_move); + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 0, FreeCell, 3), invalid_move); + } + + SECTION("test makeMove() for moving a card from a Tableau to a HomeCell - valid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, A); + CardT c2 = CardT(S, C2); + CardT c3 = CardT(S, C3); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c3); + gb.place(Tableau, 2, c2); + gb.place(Tableau, 1, c1); + + //This is a valid move (ace to empty HomeCell) + REQUIRE_NOTHROW(gb.makeMove(Tableau, 1, HomeCell, 0)); + + REQUIRE(gb.getCell(HomeCell, 0).getSize() == 1); + REQUIRE(gb.getCell(Tableau, 1).getSize() == 1); + REQUIRE(gb.getCell(HomeCell, 0).top().getRank() == A); + REQUIRE(gb.getCell(HomeCell, 0).top().getSuit() == S); + + //This is a valid move (2 to ace of same suit) + REQUIRE_NOTHROW(gb.makeMove(Tableau, 2, HomeCell, 0)); + + REQUIRE(gb.getCell(HomeCell, 0).getSize() == 2); + REQUIRE(gb.getCell(Tableau, 2).getSize() == 0); + REQUIRE(gb.getCell(HomeCell, 0).top().getRank() == C2); + REQUIRE(gb.getCell(HomeCell, 0).top().getSuit() == S); + + //This is a valid move (2 to 3 of same suit) + REQUIRE_NOTHROW(gb.makeMove(Tableau, 1, HomeCell, 0)); + + REQUIRE(gb.getCell(HomeCell, 0).getSize() == 3); + REQUIRE(gb.getCell(Tableau, 1).getSize() == 0); + REQUIRE(gb.getCell(HomeCell, 0).top().getRank() == C3); + REQUIRE(gb.getCell(HomeCell, 0).top().getSuit() == S); + } + + SECTION("test makeMove() for moving a card from a Tableau to a HomeCell - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C2); + CardT c2 = CardT(C, A); + CardT c3 = CardT(C, C3); + + //place cards on tableaux cells + gb.place(Tableau, 0, c0); + gb.place(Tableau, 1, c1); + //place card on FreeCell + gb.place(Tableau, 3, c3); + gb.place(HomeCell, 0, c2); + + //This is a not a valid move (empty Tableau cell to empty homecell) + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 2, HomeCell, 1), invalid_move); + + //This is a not a valid move (3 of Clubs to ace of clubs) + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 3, HomeCell, 0), invalid_move); + + //This is a not a valid move (2 of spades to ace of clubs) + REQUIRE_THROWS_AS(gb.makeMove(Tableau, 1, HomeCell, 0), invalid_move); + } + + //moving from a FreeCell to any type of cell + + + SECTION("test makeMove() for moving a card from a FreeCell to a Tableau - valid moves"){ + CardT c0 = CardT(H, J); + CardT c1 = CardT(S, C10); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + + //This is a valid move (jack of Hearts (red) on to empty tableau cell) + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 0, Tableau, 0)); + + REQUIRE(gb.getCell(FreeCell, 0).getSize() == 0); + REQUIRE(gb.getCell(Tableau, 0).getSize() == 1); + REQUIRE(gb.getCell(Tableau, 0).top().getRank() == J); + REQUIRE(gb.getCell(Tableau, 0).top().getSuit() == H); + + //This is a valid move (black 10 on to red jack of hearts) + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 1, Tableau, 0)); + + REQUIRE(gb.getCell(FreeCell, 1).getSize() == 0); + REQUIRE(gb.getCell(Tableau, 0).getSize() == 2); + REQUIRE(gb.getCell(Tableau, 0).top().getRank() == C10); + REQUIRE(gb.getCell(Tableau, 0).top().getSuit() == S); + } + + SECTION("test makeMove() for moving a card from a FreeCell to a Tableau - invalid moves"){ + CardT c0 = CardT(H, J); + CardT c1 = CardT(S, C10); + CardT c2 = CardT(S, J); + + //place cards on freecell and tableau cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + gb.place(Tableau, 0, c2); + + //This is an invalid move (empty FreeCell to tableau cell) + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 2, Tableau, 0), invalid_move); + + //This is an invalid move (10 of Spades on to Jack of Spades) + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 1, Tableau, 0), invalid_move); + } + + SECTION("test makeMove() for moving a card from a FreeCell to a FreeCell - valid move"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + + //This is a valid move (red 10 on to empty freecell) + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 0, FreeCell, 2)); + + REQUIRE(gb.getCell(FreeCell, 0).getSize() == 0); + REQUIRE(gb.getCell(FreeCell, 2).getSize() == 1); + REQUIRE(gb.getCell(FreeCell, 2).top().getRank() == C10); + REQUIRE(gb.getCell(FreeCell, 2).top().getSuit() == H); + //This is a valid move (black 9 to empty freecell) + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 1, FreeCell, 3)); + + REQUIRE(gb.getCell(FreeCell, 1).getSize() == 0); + REQUIRE(gb.getCell(FreeCell, 3).getSize() == 1); + REQUIRE(gb.getCell(FreeCell, 3).top().getRank() == C9); + REQUIRE(gb.getCell(FreeCell, 3).top().getSuit() == S); + } + + SECTION("test makeMove() for moving a card from a FreeCell to a FreeCell - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + + //This is an invalid move (empty freecell to other empty freecell) + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 2, FreeCell, 3), invalid_move); + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 3, FreeCell, 2), invalid_move); + //This is an invalid move (freecell with a card to an occupied one) + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 1, FreeCell, 0), invalid_move); + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 0, FreeCell, 1), invalid_move); + } + + SECTION("test makeMove() for moving a card from a FreeCell to a FreeCell - no freecells available"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C9); + CardT c2 = CardT(C, A); + CardT c3 = CardT(H, C5); + + //place cards on all four freecells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + gb.place(FreeCell, 2, c2); + gb.place(FreeCell, 3, c3); + //place a card on a tableau cell to move + + //These are not valid moves (all freecells used) + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 0, FreeCell, 1), invalid_move); + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 0, FreeCell, 2), invalid_move); + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 0, FreeCell, 3), invalid_move); + } + + SECTION("test makeMove() for moving a card from a FreeCell to a HomeCell - valid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, A); + CardT c2 = CardT(S, C2); + CardT c3 = CardT(S, C3); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + gb.place(FreeCell, 2, c2); + gb.place(FreeCell, 3, c3); + + //This is a valid move (ace to empty HomeCell) + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 1, HomeCell, 0)); + + REQUIRE(gb.getCell(FreeCell, 1).getSize() == 0); + REQUIRE(gb.getCell(HomeCell, 0).getSize() == 1); + REQUIRE(gb.getCell(HomeCell, 0).top().getRank() == A); + REQUIRE(gb.getCell(HomeCell, 0).top().getSuit() == S); + + //This is a valid move (2 to ace of same suit) + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 2, HomeCell, 0)); + + REQUIRE(gb.getCell(FreeCell, 2).getSize() == 0); + REQUIRE(gb.getCell(HomeCell, 0).getSize() == 2); + REQUIRE(gb.getCell(HomeCell, 0).top().getRank() == C2); + REQUIRE(gb.getCell(HomeCell, 0).top().getSuit() == S); + + //This is a valid move (2 to 3 of same suit) + REQUIRE_NOTHROW(gb.makeMove(FreeCell, 3, HomeCell, 0)); + + REQUIRE(gb.getCell(FreeCell, 3).getSize() == 0); + REQUIRE(gb.getCell(HomeCell, 0).getSize() == 3); + REQUIRE(gb.getCell(HomeCell, 0).top().getRank() == C3); + REQUIRE(gb.getCell(HomeCell, 0).top().getSuit() == S); + } + + SECTION("test makeMove() for moving a card from a FreeCell to a HomeCell - invalid moves"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C2); + CardT c2 = CardT(C, A); + CardT c3 = CardT(C, C3); + + //place cards on tableaux cells + gb.place(FreeCell, 0, c0); + gb.place(FreeCell, 1, c1); + //place card on FreeCell + gb.place(FreeCell, 3, c3); + gb.place(HomeCell, 0, c2); + + //This is a not a valid move (empty FreeCell to empty homecell) + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 2, HomeCell, 1), invalid_move); + + //This is a not a valid move (3 of Clubs to ace of clubs) + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 3, HomeCell, 0), invalid_move); + + //This is a not a valid move (2 of spades to ace of clubs) + REQUIRE_THROWS_AS(gb.makeMove(FreeCell, 1, HomeCell, 0), invalid_move); + } + + SECTION("moves from from HomeCell are invalid"){ + CardT c0 = CardT(H, C10); + CardT c1 = CardT(S, C2); + CardT c2 = CardT(C, A); + CardT c3 = CardT(C, C3); + + gb.place(HomeCell, 0, c2); + + CellT cellTypes[] = {Tableau, HomeCell, FreeCell}; + + //try moving from all HomeCells to all other types of cells + for (int i = 0; i < 4; i++) + for(int j = 0; j < 3; j++) + REQUIRE_THROWS_AS(gb.makeMove(HomeCell, i, cellTypes[j], 0), invalid_move); + } + + SECTION("test no moves state - false (one FreeCell available)"){ + gb.place(Tableau, 0, CardT(C,J)); + gb.place(Tableau, 1, CardT(D, C3)); + gb.place(Tableau, 2, CardT(S, C7)); + gb.place(Tableau, 3, CardT(D, C2)); + gb.place(Tableau, 4, CardT(H, C4)); + gb.place(Tableau, 5, CardT(H, C7)); + gb.place(Tableau, 6, CardT(H, C2)); + gb.place(Tableau, 7, CardT(S, Q )); + + gb.place(FreeCell, 0, CardT(H, K )); + gb.place(FreeCell, 1, CardT(D, C9)); + gb.place(FreeCell, 2, CardT(H, Q )); + //i = 3 freecell available! + gb.place(HomeCell, 0, CardT(C, C2)); + gb.place(HomeCell, 1, CardT(S, C3)); + + REQUIRE(gb.validMoveExists()); + } + + SECTION("test no moves state - true (no cards at all)"){ + REQUIRE(!gb.validMoveExists()); + } + + SECTION("test no moves state - true (stuck game)"){ + //unwinnable game (only top cards in each stack matter) + + gb.place(Tableau, 0, CardT(C,J)); + gb.place(Tableau, 1, CardT(D, C3)); + gb.place(Tableau, 2, CardT(S, C7)); + gb.place(Tableau, 3, CardT(D, C2)); + gb.place(Tableau, 4, CardT(H, C4)); + gb.place(Tableau, 5, CardT(H, C7)); + gb.place(Tableau, 6, CardT(H, C2)); + gb.place(Tableau, 7, CardT(S, Q )); + + gb.place(FreeCell, 0, CardT(H, K )); + gb.place(FreeCell, 1, CardT(D, C9)); + gb.place(FreeCell, 2, CardT(H, Q )); + gb.place(FreeCell, 3, CardT(H, C8)); + gb.place(HomeCell, 0, CardT(C, C2)); + gb.place(HomeCell, 1, CardT(S, C3)); + //HomeCells i = 2 and i = 3 are empty + + REQUIRE(!gb.validMoveExists()); + } + + + SECTION("test winning state - false"){ + REQUIRE(!gb.isInWinState()); + } + + SECTION("test winning state - true"){ + SuitT suits[] = {H, C, S, D}; + RankT ranks[] = {A, C2, C3, C4, C5, C6, C7, C8, C9, C10, J, Q, K}; + + for(int i = 0; i < 4; i++) + for(int j = 0; j < 13; j++) + gb.place(HomeCell, i, CardT(suits[i], ranks[j])); + + REQUIRE(gb.isInWinState()); + } +} diff --git a/Assignments/A4/A4Soln-CS/test/testStack.cpp b/Assignments/A4/A4Soln-CS/test/testStack.cpp new file mode 100644 index 00000000..b15f91ac --- /dev/null +++ b/Assignments/A4/A4Soln-CS/test/testStack.cpp @@ -0,0 +1,293 @@ +/** + * \file testCardADT.cpp + * \brief Implementation of CardT tests. + * \author Christopher W. Schankula, MacID: schankuc + * \date March 26th, 2018 +*/ + +#include "catch.h" +#include "CardStack.h" +#include "Exceptions.h" + +TEST_CASE( "tests for Stack" , "[Stack]" ) { + CardStackT cs(4, std::vector<CardT>()); + + SECTION("test empty constructor"){ + CardStackT newCs = CardStackT(10, std::vector<CardT>()); + REQUIRE(newCs.getSize() == 0); + REQUIRE(newCs.getMaxSize() == 10); + } + + + SECTION("test non-empty constructor"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + + std::vector<CardT> cards = std::vector<CardT>(); + cards.push_back(c0);cards.push_back(c1);cards.push_back(c2);cards.push_back(c3); + + REQUIRE(cards[0].getSuit() == H); + REQUIRE(cards[1].getSuit() == D); + REQUIRE(cards[2].getSuit() == S); + REQUIRE(cards[3].getSuit() == C); + + CardStackT cs = CardStackT(10, cards); + REQUIRE(cs.getSize() == 4); + REQUIRE(cs.getMaxSize() == 10); + REQUIRE(cs.top().getRank() == J); + } + + + SECTION("test constructor with long sequence throws invalid_argument error"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + std::vector<CardT> cards = std::vector<CardT>(); + cards.push_back(c0);cards.push_back(c1);cards.push_back(c2);cards.push_back(c3); + + REQUIRE_NOTHROW(CardStackT(4, cards)); + REQUIRE_THROWS_AS(CardStackT(3, cards), invalid_argument); + } + + SECTION("test constructor with zero maximum size throws invalid_argument"){ + REQUIRE_THROWS_AS(CardStackT(0, std::vector<CardT>()), invalid_argument); + } + + SECTION("test push does not change original stack's size"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + REQUIRE(cs.getSize() == 0); + cs.push(c0); + REQUIRE(cs.getSize() == 0); + cs.push(c1); + REQUIRE(cs.getSize() == 0); + cs.push(c2); + REQUIRE(cs.getSize() == 0); + cs.push(c3); + REQUIRE(cs.getSize() == 0); + } + + SECTION("test push increases size of new object"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + REQUIRE(cs.getSize() == 0); + cs = cs.push(c0); + REQUIRE(cs.getSize() == 1); + cs = cs.push(c1); + REQUIRE(cs.getSize() == 2); + cs = cs.push(c2); + REQUIRE(cs.getSize() == 3); + cs = cs.push(c3); + REQUIRE(cs.getSize() == 4); + } + + SECTION("test push changes top of new stack"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + cs = cs.push(c0); + REQUIRE(cs.top().getSuit() == H); + REQUIRE(cs.top().getRank() == C2); + cs = cs.push(c1); + REQUIRE(cs.top().getSuit() == D); + REQUIRE(cs.top().getRank() == C9); + cs = cs.push(c2); + REQUIRE(cs.top().getSuit() == S); + REQUIRE(cs.top().getRank() == K); + cs = cs.push(c3); + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + } + + SECTION("test push does not change top of original stack"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + cs = cs.push(c0); + cs = cs.push(c1); + cs = cs.push(c3); + + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + cs.push(c0); + + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + cs.push(c0); + + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + cs.push(c0); + + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + } + + SECTION("test pop does not change original stack's size"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + cs = cs.push(c0); + cs = cs.push(c1); + cs = cs.push(c2); + cs = cs.push(c3); + + REQUIRE(cs.getSize() == 4); + cs.pop(); + REQUIRE(cs.getSize() == 4); + cs.pop(); + REQUIRE(cs.getSize() == 4); + cs.pop(); + REQUIRE(cs.getSize() == 4); + cs.pop(); + REQUIRE(cs.getSize() == 4); + } + + SECTION("test pop does not change top of original stack"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + cs = cs.push(c0); + cs = cs.push(c1); + cs = cs.push(c2); + cs = cs.push(c3); + + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + cs.pop(); + + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + cs.pop(); + + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + cs.pop(); + + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + } + + SECTION("test pop decreases size of new stack"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + cs = cs.push(c0); + cs = cs.push(c1); + cs = cs.push(c2); + cs = cs.push(c3); + + REQUIRE(cs.getSize() == 4); + cs = cs.pop(); + REQUIRE(cs.getSize() == 3); + cs = cs.pop(); + REQUIRE(cs.getSize() == 2); + cs = cs.pop(); + REQUIRE(cs.getSize() == 1); + cs = cs.pop(); + REQUIRE(cs.getSize() == 0); + } + + SECTION("test pop changes top of new stack"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + cs = cs.push(c0); + cs = cs.push(c1); + cs = cs.push(c2); + cs = cs.push(c3); + + REQUIRE(cs.top().getSuit() == C); + REQUIRE(cs.top().getRank() == J); + cs = cs.pop(); + + REQUIRE(cs.top().getSuit() == S); + REQUIRE(cs.top().getRank() == K); + cs = cs.pop(); + + REQUIRE(cs.top().getSuit() == D); + REQUIRE(cs.top().getRank() == C9); + cs = cs.pop(); + + REQUIRE(cs.top().getSuit() == H); + REQUIRE(cs.top().getRank() == C2); + } + + SECTION("test pop from empty stack throws stack_empty"){ + REQUIRE_THROWS_AS(cs.pop(), stack_empty); + } + + SECTION("test top on empty stack throws stack_empty"){ + REQUIRE_THROWS_AS(cs.top(), stack_empty); + } + + SECTION("test push on full stack throws stack_full"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + cs = cs.push(c0); + cs = cs.push(c1); + cs = cs.push(c2); + cs = cs.push(c3); + + REQUIRE_THROWS_AS(cs.push(c0), stack_full); + } + + SECTION("test toSeq returns correct sequence"){ + CardT c0(H, C2); + CardT c1(D, C9); + CardT c2(S, K); + CardT c3(C, J); + + //proper ordering of cards + std::vector<CardT> cards = std::vector<CardT>(); + cards.push_back(c0);cards.push_back(c1);cards.push_back(c2);cards.push_back(c3); + + //test when placed by push() + cs = cs.push(c0); + cs = cs.push(c1); + cs = cs.push(c2); + cs = cs.push(c3); + + std::vector<CardT> fromStack = cs.toSeq(); + for (int i = 0; i < fromStack.size(); i++){ + REQUIRE(cards[i].getSuit() == fromStack[i].getSuit()); + REQUIRE(cards[i].getRank() == fromStack[i].getRank()); + } + + //test when placed by constructor + CardStackT newCs = CardStackT(4, cards); + + std::vector<CardT> fromNewStack = newCs.toSeq(); + for (int i = 0; i < fromNewStack.size(); i++){ + REQUIRE(cards[i].getSuit() == fromNewStack[i].getSuit()); + REQUIRE(cards[i].getRank() == fromNewStack[i].getRank()); + } + } + +} diff --git a/Assignments/A4/A4Soln/test/testmain.cpp b/Assignments/A4/A4Soln-CS/test/testmain.cpp similarity index 100% rename from Assignments/A4/A4Soln/test/testmain.cpp rename to Assignments/A4/A4Soln-CS/test/testmain.cpp diff --git a/Assignments/A4/A4Soln/Makefile b/Assignments/A4/A4Soln-EH/Makefile similarity index 100% rename from Assignments/A4/A4Soln/Makefile rename to Assignments/A4/A4Soln-EH/Makefile diff --git a/Assignments/A4/A4Soln/bin/.gitkeep b/Assignments/A4/A4Soln-EH/bin/.gitkeep similarity index 100% rename from Assignments/A4/A4Soln/bin/.gitkeep rename to Assignments/A4/A4Soln-EH/bin/.gitkeep diff --git a/Assignments/A4/A4Soln-EH/catch/catch.h b/Assignments/A4/A4Soln-EH/catch/catch.h new file mode 100644 index 00000000..882699ea --- /dev/null +++ b/Assignments/A4/A4Soln-EH/catch/catch.h @@ -0,0 +1,12796 @@ +/* + * Catch v2.1.2 + * Generated: 2018-02-09 17:05:21.506253 + * ---------------------------------------------------------- + * This file has been merged from multiple headers. Please don't edit it directly + * Copyright (c) 2018 Two Blue Cubes Ltd. All rights reserved. + * + * Distributed under the Boost Software License, Version 1.0. (See accompanying + * file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + */ +#ifndef TWOBLUECUBES_SINGLE_INCLUDE_CATCH_HPP_INCLUDED +#define TWOBLUECUBES_SINGLE_INCLUDE_CATCH_HPP_INCLUDED +// start catch.hpp + + +#define CATCH_VERSION_MAJOR 2 +#define CATCH_VERSION_MINOR 1 +#define CATCH_VERSION_PATCH 2 + +#ifdef __clang__ +# pragma clang system_header +#elif defined __GNUC__ +# pragma GCC system_header +#endif + +// start catch_suppress_warnings.h + +#ifdef __clang__ +# ifdef __ICC // icpc defines the __clang__ macro +# pragma warning(push) +# pragma warning(disable: 161 1682) +# else // __ICC +# pragma clang diagnostic ignored "-Wunused-variable" +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wpadded" +# pragma clang diagnostic ignored "-Wswitch-enum" +# pragma clang diagnostic ignored "-Wcovered-switch-default" +# endif +#elif defined __GNUC__ +# pragma GCC diagnostic ignored "-Wunused-variable" +# pragma GCC diagnostic ignored "-Wparentheses" +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wpadded" +#endif +// end catch_suppress_warnings.h +#if defined(CATCH_CONFIG_MAIN) || defined(CATCH_CONFIG_RUNNER) +# define CATCH_IMPL +# define CATCH_CONFIG_ALL_PARTS +#endif + +// In the impl file, we want to have access to all parts of the headers +// Can also be used to sanely support PCHs +#if defined(CATCH_CONFIG_ALL_PARTS) +# define CATCH_CONFIG_EXTERNAL_INTERFACES +# if defined(CATCH_CONFIG_DISABLE_MATCHERS) +# undef CATCH_CONFIG_DISABLE_MATCHERS +# endif +# define CATCH_CONFIG_ENABLE_CHRONO_STRINGMAKER +#endif + +#if !defined(CATCH_CONFIG_IMPL_ONLY) +// start catch_platform.h + +#ifdef __APPLE__ +# include <TargetConditionals.h> +# if TARGET_OS_OSX == 1 +# define CATCH_PLATFORM_MAC +# elif TARGET_OS_IPHONE == 1 +# define CATCH_PLATFORM_IPHONE +# endif + +#elif defined(linux) || defined(__linux) || defined(__linux__) +# define CATCH_PLATFORM_LINUX + +#elif defined(WIN32) || defined(__WIN32__) || defined(_WIN32) || defined(_MSC_VER) +# define CATCH_PLATFORM_WINDOWS +#endif + +// end catch_platform.h + +#ifdef CATCH_IMPL +# ifndef CLARA_CONFIG_MAIN +# define CLARA_CONFIG_MAIN_NOT_DEFINED +# define CLARA_CONFIG_MAIN +# endif +#endif + +// start catch_user_interfaces.h + +namespace Catch { + unsigned int rngSeed(); +} + +// end catch_user_interfaces.h +// start catch_tag_alias_autoregistrar.h + +// start catch_common.h + +// start catch_compiler_capabilities.h + +// Detect a number of compiler features - by compiler +// The following features are defined: +// +// CATCH_CONFIG_COUNTER : is the __COUNTER__ macro supported? +// CATCH_CONFIG_WINDOWS_SEH : is Windows SEH supported? +// CATCH_CONFIG_POSIX_SIGNALS : are POSIX signals supported? +// **************** +// Note to maintainers: if new toggles are added please document them +// in configuration.md, too +// **************** + +// In general each macro has a _NO_<feature name> form +// (e.g. CATCH_CONFIG_NO_POSIX_SIGNALS) which disables the feature. +// Many features, at point of detection, define an _INTERNAL_ macro, so they +// can be combined, en-mass, with the _NO_ forms later. + +#ifdef __cplusplus + +# if __cplusplus >= 201402L +# define CATCH_CPP14_OR_GREATER +# endif + +# if __cplusplus >= 201703L +# define CATCH_CPP17_OR_GREATER +# endif + +#endif + +#if defined(CATCH_CPP17_OR_GREATER) +# define CATCH_INTERNAL_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS +#endif + +#ifdef __clang__ + +# define CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + _Pragma( "clang diagnostic push" ) \ + _Pragma( "clang diagnostic ignored \"-Wexit-time-destructors\"" ) \ + _Pragma( "clang diagnostic ignored \"-Wglobal-constructors\"") +# define CATCH_INTERNAL_UNSUPPRESS_GLOBALS_WARNINGS \ + _Pragma( "clang diagnostic pop" ) + +# define CATCH_INTERNAL_SUPPRESS_PARENTHESES_WARNINGS \ + _Pragma( "clang diagnostic push" ) \ + _Pragma( "clang diagnostic ignored \"-Wparentheses\"" ) +# define CATCH_INTERNAL_UNSUPPRESS_PARENTHESES_WARNINGS \ + _Pragma( "clang diagnostic pop" ) + +#endif // __clang__ + +//////////////////////////////////////////////////////////////////////////////// +// We know some environments not to support full POSIX signals +#if defined(__CYGWIN__) || defined(__QNX__) + +# if !defined(CATCH_CONFIG_POSIX_SIGNALS) +# define CATCH_INTERNAL_CONFIG_NO_POSIX_SIGNALS +# endif + +#endif + +#ifdef __OS400__ +# define CATCH_INTERNAL_CONFIG_NO_POSIX_SIGNALS +# define CATCH_CONFIG_COLOUR_NONE +#endif + +//////////////////////////////////////////////////////////////////////////////// +// Cygwin +#ifdef __CYGWIN__ + +// Required for some versions of Cygwin to declare gettimeofday +// see: http://stackoverflow.com/questions/36901803/gettimeofday-not-declared-in-this-scope-cygwin +# define _BSD_SOURCE + +#endif // __CYGWIN__ + +//////////////////////////////////////////////////////////////////////////////// +// Visual C++ +#ifdef _MSC_VER + +# if _MSC_VER >= 1900 // Visual Studio 2015 or newer +# define CATCH_INTERNAL_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS +# endif + +// Universal Windows platform does not support SEH +// Or console colours (or console at all...) +# if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_APP) +# define CATCH_CONFIG_COLOUR_NONE +# else +# define CATCH_INTERNAL_CONFIG_WINDOWS_SEH +# endif + +#endif // _MSC_VER + +//////////////////////////////////////////////////////////////////////////////// + +// Use of __COUNTER__ is suppressed during code analysis in +// CLion/AppCode 2017.2.x and former, because __COUNTER__ is not properly +// handled by it. +// Otherwise all supported compilers support COUNTER macro, +// but user still might want to turn it off +#if ( !defined(__JETBRAINS_IDE__) || __JETBRAINS_IDE__ >= 20170300L ) + #define CATCH_INTERNAL_CONFIG_COUNTER +#endif + +#if defined(CATCH_INTERNAL_CONFIG_COUNTER) && !defined(CATCH_CONFIG_NO_COUNTER) && !defined(CATCH_CONFIG_COUNTER) +# define CATCH_CONFIG_COUNTER +#endif +#if defined(CATCH_INTERNAL_CONFIG_WINDOWS_SEH) && !defined(CATCH_CONFIG_NO_WINDOWS_SEH) && !defined(CATCH_CONFIG_WINDOWS_SEH) +# define CATCH_CONFIG_WINDOWS_SEH +#endif +// This is set by default, because we assume that unix compilers are posix-signal-compatible by default. +#if !defined(CATCH_INTERNAL_CONFIG_NO_POSIX_SIGNALS) && !defined(CATCH_CONFIG_NO_POSIX_SIGNALS) && !defined(CATCH_CONFIG_POSIX_SIGNALS) +# define CATCH_CONFIG_POSIX_SIGNALS +#endif + +#if defined(CATCH_INTERNAL_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS) && !defined(CATCH_INTERNAL_CONFIG_NO_CPP17_UNCAUGHT_EXCEPTIONS) && !defined(CATCH_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS) +# define CATCH_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS +#endif + +#if !defined(CATCH_INTERNAL_SUPPRESS_PARENTHESES_WARNINGS) +# define CATCH_INTERNAL_SUPPRESS_PARENTHESES_WARNINGS +# define CATCH_INTERNAL_UNSUPPRESS_PARENTHESES_WARNINGS +#endif +#if !defined(CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS) +# define CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS +# define CATCH_INTERNAL_UNSUPPRESS_GLOBALS_WARNINGS +#endif + +// end catch_compiler_capabilities.h +#define INTERNAL_CATCH_UNIQUE_NAME_LINE2( name, line ) name##line +#define INTERNAL_CATCH_UNIQUE_NAME_LINE( name, line ) INTERNAL_CATCH_UNIQUE_NAME_LINE2( name, line ) +#ifdef CATCH_CONFIG_COUNTER +# define INTERNAL_CATCH_UNIQUE_NAME( name ) INTERNAL_CATCH_UNIQUE_NAME_LINE( name, __COUNTER__ ) +#else +# define INTERNAL_CATCH_UNIQUE_NAME( name ) INTERNAL_CATCH_UNIQUE_NAME_LINE( name, __LINE__ ) +#endif + +#include <iosfwd> +#include <string> +#include <cstdint> + +namespace Catch { + + struct CaseSensitive { enum Choice { + Yes, + No + }; }; + + class NonCopyable { + NonCopyable( NonCopyable const& ) = delete; + NonCopyable( NonCopyable && ) = delete; + NonCopyable& operator = ( NonCopyable const& ) = delete; + NonCopyable& operator = ( NonCopyable && ) = delete; + + protected: + NonCopyable(); + virtual ~NonCopyable(); + }; + + struct SourceLineInfo { + + SourceLineInfo() = delete; + SourceLineInfo( char const* _file, std::size_t _line ) noexcept + : file( _file ), + line( _line ) + {} + + SourceLineInfo( SourceLineInfo const& other ) = default; + SourceLineInfo( SourceLineInfo && ) = default; + SourceLineInfo& operator = ( SourceLineInfo const& ) = default; + SourceLineInfo& operator = ( SourceLineInfo && ) = default; + + bool empty() const noexcept; + bool operator == ( SourceLineInfo const& other ) const noexcept; + bool operator < ( SourceLineInfo const& other ) const noexcept; + + char const* file; + std::size_t line; + }; + + std::ostream& operator << ( std::ostream& os, SourceLineInfo const& info ); + + // Use this in variadic streaming macros to allow + // >> +StreamEndStop + // as well as + // >> stuff +StreamEndStop + struct StreamEndStop { + std::string operator+() const; + }; + template<typename T> + T const& operator + ( T const& value, StreamEndStop ) { + return value; + } +} + +#define CATCH_INTERNAL_LINEINFO \ + ::Catch::SourceLineInfo( __FILE__, static_cast<std::size_t>( __LINE__ ) ) + +// end catch_common.h +namespace Catch { + + struct RegistrarForTagAliases { + RegistrarForTagAliases( char const* alias, char const* tag, SourceLineInfo const& lineInfo ); + }; + +} // end namespace Catch + +#define CATCH_REGISTER_TAG_ALIAS( alias, spec ) \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ Catch::RegistrarForTagAliases INTERNAL_CATCH_UNIQUE_NAME( AutoRegisterTagAlias )( alias, spec, CATCH_INTERNAL_LINEINFO ); } \ + CATCH_INTERNAL_UNSUPPRESS_GLOBALS_WARNINGS + +// end catch_tag_alias_autoregistrar.h +// start catch_test_registry.h + +// start catch_interfaces_testcase.h + +#include <vector> +#include <memory> + +namespace Catch { + + class TestSpec; + + struct ITestInvoker { + virtual void invoke () const = 0; + virtual ~ITestInvoker(); + }; + + using ITestCasePtr = std::shared_ptr<ITestInvoker>; + + class TestCase; + struct IConfig; + + struct ITestCaseRegistry { + virtual ~ITestCaseRegistry(); + virtual std::vector<TestCase> const& getAllTests() const = 0; + virtual std::vector<TestCase> const& getAllTestsSorted( IConfig const& config ) const = 0; + }; + + bool matchTest( TestCase const& testCase, TestSpec const& testSpec, IConfig const& config ); + std::vector<TestCase> filterTests( std::vector<TestCase> const& testCases, TestSpec const& testSpec, IConfig const& config ); + std::vector<TestCase> const& getAllTestCasesSorted( IConfig const& config ); + +} + +// end catch_interfaces_testcase.h +// start catch_stringref.h + +#include <cstddef> +#include <string> +#include <iosfwd> + +namespace Catch { + + class StringData; + + /// A non-owning string class (similar to the forthcoming std::string_view) + /// Note that, because a StringRef may be a substring of another string, + /// it may not be null terminated. c_str() must return a null terminated + /// string, however, and so the StringRef will internally take ownership + /// (taking a copy), if necessary. In theory this ownership is not externally + /// visible - but it does mean (substring) StringRefs should not be shared between + /// threads. + class StringRef { + public: + using size_type = std::size_t; + + private: + friend struct StringRefTestAccess; + + char const* m_start; + size_type m_size; + + char* m_data = nullptr; + + void takeOwnership(); + + static constexpr char const* const s_empty = ""; + + public: // construction/ assignment + StringRef() noexcept + : StringRef( s_empty, 0 ) + {} + + StringRef( StringRef const& other ) noexcept + : m_start( other.m_start ), + m_size( other.m_size ) + {} + + StringRef( StringRef&& other ) noexcept + : m_start( other.m_start ), + m_size( other.m_size ), + m_data( other.m_data ) + { + other.m_data = nullptr; + } + + StringRef( char const* rawChars ) noexcept; + + StringRef( char const* rawChars, size_type size ) noexcept + : m_start( rawChars ), + m_size( size ) + {} + + StringRef( std::string const& stdString ) noexcept + : m_start( stdString.c_str() ), + m_size( stdString.size() ) + {} + + ~StringRef() noexcept { + delete[] m_data; + } + + auto operator = ( StringRef const &other ) noexcept -> StringRef& { + delete[] m_data; + m_data = nullptr; + m_start = other.m_start; + m_size = other.m_size; + return *this; + } + + operator std::string() const; + + void swap( StringRef& other ) noexcept; + + public: // operators + auto operator == ( StringRef const& other ) const noexcept -> bool; + auto operator != ( StringRef const& other ) const noexcept -> bool; + + auto operator[] ( size_type index ) const noexcept -> char; + + public: // named queries + auto empty() const noexcept -> bool { + return m_size == 0; + } + auto size() const noexcept -> size_type { + return m_size; + } + + auto numberOfCharacters() const noexcept -> size_type; + auto c_str() const -> char const*; + + public: // substrings and searches + auto substr( size_type start, size_type size ) const noexcept -> StringRef; + + private: // ownership queries - may not be consistent between calls + auto isOwned() const noexcept -> bool; + auto isSubstring() const noexcept -> bool; + auto data() const noexcept -> char const*; + }; + + auto operator + ( StringRef const& lhs, StringRef const& rhs ) -> std::string; + auto operator + ( StringRef const& lhs, char const* rhs ) -> std::string; + auto operator + ( char const* lhs, StringRef const& rhs ) -> std::string; + + auto operator << ( std::ostream& os, StringRef const& sr ) -> std::ostream&; + + inline auto operator "" _sr( char const* rawChars, std::size_t size ) noexcept -> StringRef { + return StringRef( rawChars, size ); + } + +} // namespace Catch + +// end catch_stringref.h +namespace Catch { + +template<typename C> +class TestInvokerAsMethod : public ITestInvoker { + void (C::*m_testAsMethod)(); +public: + TestInvokerAsMethod( void (C::*testAsMethod)() ) noexcept : m_testAsMethod( testAsMethod ) {} + + void invoke() const override { + C obj; + (obj.*m_testAsMethod)(); + } +}; + +auto makeTestInvoker( void(*testAsFunction)() ) noexcept -> ITestInvoker*; + +template<typename C> +auto makeTestInvoker( void (C::*testAsMethod)() ) noexcept -> ITestInvoker* { + return new(std::nothrow) TestInvokerAsMethod<C>( testAsMethod ); +} + +struct NameAndTags { + NameAndTags( StringRef name_ = StringRef(), StringRef tags_ = StringRef() ) noexcept; + StringRef name; + StringRef tags; +}; + +struct AutoReg : NonCopyable { + AutoReg( ITestInvoker* invoker, SourceLineInfo const& lineInfo, StringRef classOrMethod, NameAndTags const& nameAndTags ) noexcept; + ~AutoReg(); +}; + +} // end namespace Catch + +#if defined(CATCH_CONFIG_DISABLE) + #define INTERNAL_CATCH_TESTCASE_NO_REGISTRATION( TestName, ... ) \ + static void TestName() + #define INTERNAL_CATCH_TESTCASE_METHOD_NO_REGISTRATION( TestName, ClassName, ... ) \ + namespace{ \ + struct TestName : ClassName { \ + void test(); \ + }; \ + } \ + void TestName::test() + +#endif + + /////////////////////////////////////////////////////////////////////////////// + #define INTERNAL_CATCH_TESTCASE2( TestName, ... ) \ + static void TestName(); \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ Catch::AutoReg INTERNAL_CATCH_UNIQUE_NAME( autoRegistrar )( Catch::makeTestInvoker( &TestName ), CATCH_INTERNAL_LINEINFO, "", Catch::NameAndTags{ __VA_ARGS__ } ); } /* NOLINT */ \ + CATCH_INTERNAL_UNSUPPRESS_GLOBALS_WARNINGS \ + static void TestName() + #define INTERNAL_CATCH_TESTCASE( ... ) \ + INTERNAL_CATCH_TESTCASE2( INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ ), __VA_ARGS__ ) + + /////////////////////////////////////////////////////////////////////////////// + #define INTERNAL_CATCH_METHOD_AS_TEST_CASE( QualifiedMethod, ... ) \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ Catch::AutoReg INTERNAL_CATCH_UNIQUE_NAME( autoRegistrar )( Catch::makeTestInvoker( &QualifiedMethod ), CATCH_INTERNAL_LINEINFO, "&" #QualifiedMethod, Catch::NameAndTags{ __VA_ARGS__ } ); } /* NOLINT */ \ + CATCH_INTERNAL_UNSUPPRESS_GLOBALS_WARNINGS + + /////////////////////////////////////////////////////////////////////////////// + #define INTERNAL_CATCH_TEST_CASE_METHOD2( TestName, ClassName, ... )\ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ \ + struct TestName : ClassName{ \ + void test(); \ + }; \ + Catch::AutoReg INTERNAL_CATCH_UNIQUE_NAME( autoRegistrar ) ( Catch::makeTestInvoker( &TestName::test ), CATCH_INTERNAL_LINEINFO, #ClassName, Catch::NameAndTags{ __VA_ARGS__ } ); /* NOLINT */ \ + } \ + CATCH_INTERNAL_UNSUPPRESS_GLOBALS_WARNINGS \ + void TestName::test() + #define INTERNAL_CATCH_TEST_CASE_METHOD( ClassName, ... ) \ + INTERNAL_CATCH_TEST_CASE_METHOD2( INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ ), ClassName, __VA_ARGS__ ) + + /////////////////////////////////////////////////////////////////////////////// + #define INTERNAL_CATCH_REGISTER_TESTCASE( Function, ... ) \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + Catch::AutoReg INTERNAL_CATCH_UNIQUE_NAME( autoRegistrar )( Catch::makeTestInvoker( Function ), CATCH_INTERNAL_LINEINFO, "", Catch::NameAndTags{ __VA_ARGS__ } ); /* NOLINT */ \ + CATCH_INTERNAL_UNSUPPRESS_GLOBALS_WARNINGS + +// end catch_test_registry.h +// start catch_capture.hpp + +// start catch_assertionhandler.h + +// start catch_assertioninfo.h + +// start catch_result_type.h + +namespace Catch { + + // ResultWas::OfType enum + struct ResultWas { enum OfType { + Unknown = -1, + Ok = 0, + Info = 1, + Warning = 2, + + FailureBit = 0x10, + + ExpressionFailed = FailureBit | 1, + ExplicitFailure = FailureBit | 2, + + Exception = 0x100 | FailureBit, + + ThrewException = Exception | 1, + DidntThrowException = Exception | 2, + + FatalErrorCondition = 0x200 | FailureBit + + }; }; + + bool isOk( ResultWas::OfType resultType ); + bool isJustInfo( int flags ); + + // ResultDisposition::Flags enum + struct ResultDisposition { enum Flags { + Normal = 0x01, + + ContinueOnFailure = 0x02, // Failures fail test, but execution continues + FalseTest = 0x04, // Prefix expression with ! + SuppressFail = 0x08 // Failures are reported but do not fail the test + }; }; + + ResultDisposition::Flags operator | ( ResultDisposition::Flags lhs, ResultDisposition::Flags rhs ); + + bool shouldContinueOnFailure( int flags ); + inline bool isFalseTest( int flags ) { return ( flags & ResultDisposition::FalseTest ) != 0; } + bool shouldSuppressFailure( int flags ); + +} // end namespace Catch + +// end catch_result_type.h +namespace Catch { + + struct AssertionInfo + { + StringRef macroName; + SourceLineInfo lineInfo; + StringRef capturedExpression; + ResultDisposition::Flags resultDisposition; + + // We want to delete this constructor but a compiler bug in 4.8 means + // the struct is then treated as non-aggregate + //AssertionInfo() = delete; + }; + +} // end namespace Catch + +// end catch_assertioninfo.h +// start catch_decomposer.h + +// start catch_tostring.h + +#include <vector> +#include <cstddef> +#include <type_traits> +#include <string> +// start catch_stream.h + +#include <iosfwd> +#include <cstddef> +#include <ostream> + +namespace Catch { + + std::ostream& cout(); + std::ostream& cerr(); + std::ostream& clog(); + + class StringRef; + + struct IStream { + virtual ~IStream(); + virtual std::ostream& stream() const = 0; + }; + + auto makeStream( StringRef const &filename ) -> IStream const*; + + class ReusableStringStream { + std::size_t m_index; + std::ostream* m_oss; + public: + ReusableStringStream(); + ~ReusableStringStream(); + + auto str() const -> std::string; + + template<typename T> + auto operator << ( T const& value ) -> ReusableStringStream& { + *m_oss << value; + return *this; + } + auto get() -> std::ostream& { return *m_oss; } + + static void cleanup(); + }; +} + +// end catch_stream.h + +#ifdef __OBJC__ +// start catch_objc_arc.hpp + +#import <Foundation/Foundation.h> + +#ifdef __has_feature +#define CATCH_ARC_ENABLED __has_feature(objc_arc) +#else +#define CATCH_ARC_ENABLED 0 +#endif + +void arcSafeRelease( NSObject* obj ); +id performOptionalSelector( id obj, SEL sel ); + +#if !CATCH_ARC_ENABLED +inline void arcSafeRelease( NSObject* obj ) { + [obj release]; +} +inline id performOptionalSelector( id obj, SEL sel ) { + if( [obj respondsToSelector: sel] ) + return [obj performSelector: sel]; + return nil; +} +#define CATCH_UNSAFE_UNRETAINED +#define CATCH_ARC_STRONG +#else +inline void arcSafeRelease( NSObject* ){} +inline id performOptionalSelector( id obj, SEL sel ) { +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" +#endif + if( [obj respondsToSelector: sel] ) + return [obj performSelector: sel]; +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + return nil; +} +#define CATCH_UNSAFE_UNRETAINED __unsafe_unretained +#define CATCH_ARC_STRONG __strong +#endif + +// end catch_objc_arc.hpp +#endif + +#ifdef _MSC_VER +#pragma warning(push) +#pragma warning(disable:4180) // We attempt to stream a function (address) by const&, which MSVC complains about but is harmless +#endif + +// We need a dummy global operator<< so we can bring it into Catch namespace later +struct Catch_global_namespace_dummy {}; +std::ostream& operator<<(std::ostream&, Catch_global_namespace_dummy); + +namespace Catch { + // Bring in operator<< from global namespace into Catch namespace + using ::operator<<; + + namespace Detail { + + extern const std::string unprintableString; + + std::string rawMemoryToString( const void *object, std::size_t size ); + + template<typename T> + std::string rawMemoryToString( const T& object ) { + return rawMemoryToString( &object, sizeof(object) ); + } + + template<typename T> + class IsStreamInsertable { + template<typename SS, typename TT> + static auto test(int) + -> decltype(std::declval<SS&>() << std::declval<TT>(), std::true_type()); + + template<typename, typename> + static auto test(...)->std::false_type; + + public: + static const bool value = decltype(test<std::ostream, const T&>(0))::value; + }; + + template<typename E> + std::string convertUnknownEnumToString( E e ); + + template<typename T> + typename std::enable_if<!std::is_enum<T>::value, std::string>::type convertUnstreamable( T const& ) { + return Detail::unprintableString; + } + template<typename T> + typename std::enable_if<std::is_enum<T>::value, std::string>::type convertUnstreamable( T const& value ) { + return convertUnknownEnumToString( value ); + } + + } // namespace Detail + + // If we decide for C++14, change these to enable_if_ts + template <typename T, typename = void> + struct StringMaker { + template <typename Fake = T> + static + typename std::enable_if<::Catch::Detail::IsStreamInsertable<Fake>::value, std::string>::type + convert(const Fake& value) { + ReusableStringStream rss; + rss << value; + return rss.str(); + } + + template <typename Fake = T> + static + typename std::enable_if<!::Catch::Detail::IsStreamInsertable<Fake>::value, std::string>::type + convert( const Fake& value ) { + return Detail::convertUnstreamable( value ); + } + }; + + namespace Detail { + + // This function dispatches all stringification requests inside of Catch. + // Should be preferably called fully qualified, like ::Catch::Detail::stringify + template <typename T> + std::string stringify(const T& e) { + return ::Catch::StringMaker<typename std::remove_cv<typename std::remove_reference<T>::type>::type>::convert(e); + } + + template<typename E> + std::string convertUnknownEnumToString( E e ) { + return ::Catch::Detail::stringify(static_cast<typename std::underlying_type<E>::type>(e)); + } + + } // namespace Detail + + // Some predefined specializations + + template<> + struct StringMaker<std::string> { + static std::string convert(const std::string& str); + }; + template<> + struct StringMaker<std::wstring> { + static std::string convert(const std::wstring& wstr); + }; + + template<> + struct StringMaker<char const *> { + static std::string convert(char const * str); + }; + template<> + struct StringMaker<char *> { + static std::string convert(char * str); + }; + template<> + struct StringMaker<wchar_t const *> { + static std::string convert(wchar_t const * str); + }; + template<> + struct StringMaker<wchar_t *> { + static std::string convert(wchar_t * str); + }; + + template<int SZ> + struct StringMaker<char[SZ]> { + static std::string convert(const char* str) { + return ::Catch::Detail::stringify(std::string{ str }); + } + }; + template<int SZ> + struct StringMaker<signed char[SZ]> { + static std::string convert(const char* str) { + return ::Catch::Detail::stringify(std::string{ str }); + } + }; + template<int SZ> + struct StringMaker<unsigned char[SZ]> { + static std::string convert(const char* str) { + return ::Catch::Detail::stringify(std::string{ str }); + } + }; + + template<> + struct StringMaker<int> { + static std::string convert(int value); + }; + template<> + struct StringMaker<long> { + static std::string convert(long value); + }; + template<> + struct StringMaker<long long> { + static std::string convert(long long value); + }; + template<> + struct StringMaker<unsigned int> { + static std::string convert(unsigned int value); + }; + template<> + struct StringMaker<unsigned long> { + static std::string convert(unsigned long value); + }; + template<> + struct StringMaker<unsigned long long> { + static std::string convert(unsigned long long value); + }; + + template<> + struct StringMaker<bool> { + static std::string convert(bool b); + }; + + template<> + struct StringMaker<char> { + static std::string convert(char c); + }; + template<> + struct StringMaker<signed char> { + static std::string convert(signed char c); + }; + template<> + struct StringMaker<unsigned char> { + static std::string convert(unsigned char c); + }; + + template<> + struct StringMaker<std::nullptr_t> { + static std::string convert(std::nullptr_t); + }; + + template<> + struct StringMaker<float> { + static std::string convert(float value); + }; + template<> + struct StringMaker<double> { + static std::string convert(double value); + }; + + template <typename T> + struct StringMaker<T*> { + template <typename U> + static std::string convert(U* p) { + if (p) { + return ::Catch::Detail::rawMemoryToString(p); + } else { + return "nullptr"; + } + } + }; + + template <typename R, typename C> + struct StringMaker<R C::*> { + static std::string convert(R C::* p) { + if (p) { + return ::Catch::Detail::rawMemoryToString(p); + } else { + return "nullptr"; + } + } + }; + + namespace Detail { + template<typename InputIterator> + std::string rangeToString(InputIterator first, InputIterator last) { + ReusableStringStream rss; + rss << "{ "; + if (first != last) { + rss << ::Catch::Detail::stringify(*first); + for (++first; first != last; ++first) + rss << ", " << ::Catch::Detail::stringify(*first); + } + rss << " }"; + return rss.str(); + } + } + +#ifdef __OBJC__ + template<> + struct StringMaker<NSString*> { + static std::string convert(NSString * nsstring) { + if (!nsstring) + return "nil"; + return std::string("@") + [nsstring UTF8String]; + } + }; + template<> + struct StringMaker<NSObject*> { + static std::string convert(NSObject* nsObject) { + return ::Catch::Detail::stringify([nsObject description]); + } + + }; + namespace Detail { + inline std::string stringify( NSString* nsstring ) { + return StringMaker<NSString*>::convert( nsstring ); + } + + } // namespace Detail +#endif // __OBJC__ + +} // namespace Catch + +////////////////////////////////////////////////////// +// Separate std-lib types stringification, so it can be selectively enabled +// This means that we do not bring in + +#if defined(CATCH_CONFIG_ENABLE_ALL_STRINGMAKERS) +# define CATCH_CONFIG_ENABLE_PAIR_STRINGMAKER +# define CATCH_CONFIG_ENABLE_TUPLE_STRINGMAKER +# define CATCH_CONFIG_ENABLE_CHRONO_STRINGMAKER +#endif + +// Separate std::pair specialization +#if defined(CATCH_CONFIG_ENABLE_PAIR_STRINGMAKER) +#include <utility> +namespace Catch { + template<typename T1, typename T2> + struct StringMaker<std::pair<T1, T2> > { + static std::string convert(const std::pair<T1, T2>& pair) { + ReusableStringStream rss; + rss << "{ " + << ::Catch::Detail::stringify(pair.first) + << ", " + << ::Catch::Detail::stringify(pair.second) + << " }"; + return rss.str(); + } + }; +} +#endif // CATCH_CONFIG_ENABLE_PAIR_STRINGMAKER + +// Separate std::tuple specialization +#if defined(CATCH_CONFIG_ENABLE_TUPLE_STRINGMAKER) +#include <tuple> +namespace Catch { + namespace Detail { + template< + typename Tuple, + std::size_t N = 0, + bool = (N < std::tuple_size<Tuple>::value) + > + struct TupleElementPrinter { + static void print(const Tuple& tuple, std::ostream& os) { + os << (N ? ", " : " ") + << ::Catch::Detail::stringify(std::get<N>(tuple)); + TupleElementPrinter<Tuple, N + 1>::print(tuple, os); + } + }; + + template< + typename Tuple, + std::size_t N + > + struct TupleElementPrinter<Tuple, N, false> { + static void print(const Tuple&, std::ostream&) {} + }; + + } + + template<typename ...Types> + struct StringMaker<std::tuple<Types...>> { + static std::string convert(const std::tuple<Types...>& tuple) { + ReusableStringStream rss; + rss << '{'; + Detail::TupleElementPrinter<std::tuple<Types...>>::print(tuple, rss.get()); + rss << " }"; + return rss.str(); + } + }; +} +#endif // CATCH_CONFIG_ENABLE_TUPLE_STRINGMAKER + +namespace Catch { + struct not_this_one {}; // Tag type for detecting which begin/ end are being selected + + // Import begin/ end from std here so they are considered alongside the fallback (...) overloads in this namespace + using std::begin; + using std::end; + + not_this_one begin( ... ); + not_this_one end( ... ); + + template <typename T> + struct is_range { + static const bool value = + !std::is_same<decltype(begin(std::declval<T>())), not_this_one>::value && + !std::is_same<decltype(end(std::declval<T>())), not_this_one>::value; + }; + + template<typename Range> + std::string rangeToString( Range const& range ) { + return ::Catch::Detail::rangeToString( begin( range ), end( range ) ); + } + + // Handle vector<bool> specially + template<typename Allocator> + std::string rangeToString( std::vector<bool, Allocator> const& v ) { + ReusableStringStream rss; + rss << "{ "; + bool first = true; + for( bool b : v ) { + if( first ) + first = false; + else + rss << ", "; + rss << ::Catch::Detail::stringify( b ); + } + rss << " }"; + return rss.str(); + } + + template<typename R> + struct StringMaker<R, typename std::enable_if<is_range<R>::value && !::Catch::Detail::IsStreamInsertable<R>::value>::type> { + static std::string convert( R const& range ) { + return rangeToString( range ); + } + }; + + template <typename T, int SZ> + struct StringMaker<T[SZ]> { + static std::string convert(T const(&arr)[SZ]) { + return rangeToString(arr); + } + }; + +} // namespace Catch + +// Separate std::chrono::duration specialization +#if defined(CATCH_CONFIG_ENABLE_CHRONO_STRINGMAKER) +#include <ctime> +#include <ratio> +#include <chrono> + +namespace Catch { + +template <class Ratio> +struct ratio_string { + static std::string symbol(); +}; + +template <class Ratio> +std::string ratio_string<Ratio>::symbol() { + Catch::ReusableStringStream rss; + rss << '[' << Ratio::num << '/' + << Ratio::den << ']'; + return rss.str(); +} +template <> +struct ratio_string<std::atto> { + static std::string symbol(); +}; +template <> +struct ratio_string<std::femto> { + static std::string symbol(); +}; +template <> +struct ratio_string<std::pico> { + static std::string symbol(); +}; +template <> +struct ratio_string<std::nano> { + static std::string symbol(); +}; +template <> +struct ratio_string<std::micro> { + static std::string symbol(); +}; +template <> +struct ratio_string<std::milli> { + static std::string symbol(); +}; + + //////////// + // std::chrono::duration specializations + template<typename Value, typename Ratio> + struct StringMaker<std::chrono::duration<Value, Ratio>> { + static std::string convert(std::chrono::duration<Value, Ratio> const& duration) { + ReusableStringStream rss; + rss << duration.count() << ' ' << ratio_string<Ratio>::symbol() << 's'; + return rss.str(); + } + }; + template<typename Value> + struct StringMaker<std::chrono::duration<Value, std::ratio<1>>> { + static std::string convert(std::chrono::duration<Value, std::ratio<1>> const& duration) { + ReusableStringStream rss; + rss << duration.count() << " s"; + return rss.str(); + } + }; + template<typename Value> + struct StringMaker<std::chrono::duration<Value, std::ratio<60>>> { + static std::string convert(std::chrono::duration<Value, std::ratio<60>> const& duration) { + ReusableStringStream rss; + rss << duration.count() << " m"; + return rss.str(); + } + }; + template<typename Value> + struct StringMaker<std::chrono::duration<Value, std::ratio<3600>>> { + static std::string convert(std::chrono::duration<Value, std::ratio<3600>> const& duration) { + ReusableStringStream rss; + rss << duration.count() << " h"; + return rss.str(); + } + }; + + //////////// + // std::chrono::time_point specialization + // Generic time_point cannot be specialized, only std::chrono::time_point<system_clock> + template<typename Clock, typename Duration> + struct StringMaker<std::chrono::time_point<Clock, Duration>> { + static std::string convert(std::chrono::time_point<Clock, Duration> const& time_point) { + return ::Catch::Detail::stringify(time_point.time_since_epoch()) + " since epoch"; + } + }; + // std::chrono::time_point<system_clock> specialization + template<typename Duration> + struct StringMaker<std::chrono::time_point<std::chrono::system_clock, Duration>> { + static std::string convert(std::chrono::time_point<std::chrono::system_clock, Duration> const& time_point) { + auto converted = std::chrono::system_clock::to_time_t(time_point); + +#ifdef _MSC_VER + std::tm timeInfo = {}; + gmtime_s(&timeInfo, &converted); +#else + std::tm* timeInfo = std::gmtime(&converted); +#endif + + auto const timeStampSize = sizeof("2017-01-16T17:06:45Z"); + char timeStamp[timeStampSize]; + const char * const fmt = "%Y-%m-%dT%H:%M:%SZ"; + +#ifdef _MSC_VER + std::strftime(timeStamp, timeStampSize, fmt, &timeInfo); +#else + std::strftime(timeStamp, timeStampSize, fmt, timeInfo); +#endif + return std::string(timeStamp); + } + }; +} +#endif // CATCH_CONFIG_ENABLE_CHRONO_STRINGMAKER + +#ifdef _MSC_VER +#pragma warning(pop) +#endif + +// end catch_tostring.h +#include <iosfwd> + +#ifdef _MSC_VER +#pragma warning(push) +#pragma warning(disable:4389) // '==' : signed/unsigned mismatch +#pragma warning(disable:4018) // more "signed/unsigned mismatch" +#pragma warning(disable:4312) // Converting int to T* using reinterpret_cast (issue on x64 platform) +#pragma warning(disable:4180) // qualifier applied to function type has no meaning +#endif + +namespace Catch { + + struct ITransientExpression { + auto isBinaryExpression() const -> bool { return m_isBinaryExpression; } + auto getResult() const -> bool { return m_result; } + virtual void streamReconstructedExpression( std::ostream &os ) const = 0; + + ITransientExpression( bool isBinaryExpression, bool result ) + : m_isBinaryExpression( isBinaryExpression ), + m_result( result ) + {} + + // We don't actually need a virtual destructor, but many static analysers + // complain if it's not here :-( + virtual ~ITransientExpression(); + + bool m_isBinaryExpression; + bool m_result; + + }; + + void formatReconstructedExpression( std::ostream &os, std::string const& lhs, StringRef op, std::string const& rhs ); + + template<typename LhsT, typename RhsT> + class BinaryExpr : public ITransientExpression { + LhsT m_lhs; + StringRef m_op; + RhsT m_rhs; + + void streamReconstructedExpression( std::ostream &os ) const override { + formatReconstructedExpression + ( os, Catch::Detail::stringify( m_lhs ), m_op, Catch::Detail::stringify( m_rhs ) ); + } + + public: + BinaryExpr( bool comparisonResult, LhsT lhs, StringRef op, RhsT rhs ) + : ITransientExpression{ true, comparisonResult }, + m_lhs( lhs ), + m_op( op ), + m_rhs( rhs ) + {} + }; + + template<typename LhsT> + class UnaryExpr : public ITransientExpression { + LhsT m_lhs; + + void streamReconstructedExpression( std::ostream &os ) const override { + os << Catch::Detail::stringify( m_lhs ); + } + + public: + explicit UnaryExpr( LhsT lhs ) + : ITransientExpression{ false, lhs ? true : false }, + m_lhs( lhs ) + {} + }; + + // Specialised comparison functions to handle equality comparisons between ints and pointers (NULL deduces as an int) + template<typename LhsT, typename RhsT> + auto compareEqual( LhsT const& lhs, RhsT const& rhs ) -> bool { return static_cast<bool>(lhs == rhs); } + template<typename T> + auto compareEqual( T* const& lhs, int rhs ) -> bool { return lhs == reinterpret_cast<void const*>( rhs ); } + template<typename T> + auto compareEqual( T* const& lhs, long rhs ) -> bool { return lhs == reinterpret_cast<void const*>( rhs ); } + template<typename T> + auto compareEqual( int lhs, T* const& rhs ) -> bool { return reinterpret_cast<void const*>( lhs ) == rhs; } + template<typename T> + auto compareEqual( long lhs, T* const& rhs ) -> bool { return reinterpret_cast<void const*>( lhs ) == rhs; } + + template<typename LhsT, typename RhsT> + auto compareNotEqual( LhsT const& lhs, RhsT&& rhs ) -> bool { return static_cast<bool>(lhs != rhs); } + template<typename T> + auto compareNotEqual( T* const& lhs, int rhs ) -> bool { return lhs != reinterpret_cast<void const*>( rhs ); } + template<typename T> + auto compareNotEqual( T* const& lhs, long rhs ) -> bool { return lhs != reinterpret_cast<void const*>( rhs ); } + template<typename T> + auto compareNotEqual( int lhs, T* const& rhs ) -> bool { return reinterpret_cast<void const*>( lhs ) != rhs; } + template<typename T> + auto compareNotEqual( long lhs, T* const& rhs ) -> bool { return reinterpret_cast<void const*>( lhs ) != rhs; } + + template<typename LhsT> + class ExprLhs { + LhsT m_lhs; + public: + explicit ExprLhs( LhsT lhs ) : m_lhs( lhs ) {} + + template<typename RhsT> + auto operator == ( RhsT const& rhs ) -> BinaryExpr<LhsT, RhsT const&> const { + return { compareEqual( m_lhs, rhs ), m_lhs, "==", rhs }; + } + auto operator == ( bool rhs ) -> BinaryExpr<LhsT, bool> const { + return { m_lhs == rhs, m_lhs, "==", rhs }; + } + + template<typename RhsT> + auto operator != ( RhsT const& rhs ) -> BinaryExpr<LhsT, RhsT const&> const { + return { compareNotEqual( m_lhs, rhs ), m_lhs, "!=", rhs }; + } + auto operator != ( bool rhs ) -> BinaryExpr<LhsT, bool> const { + return { m_lhs != rhs, m_lhs, "!=", rhs }; + } + + template<typename RhsT> + auto operator > ( RhsT const& rhs ) -> BinaryExpr<LhsT, RhsT const&> const { + return { static_cast<bool>(m_lhs > rhs), m_lhs, ">", rhs }; + } + template<typename RhsT> + auto operator < ( RhsT const& rhs ) -> BinaryExpr<LhsT, RhsT const&> const { + return { static_cast<bool>(m_lhs < rhs), m_lhs, "<", rhs }; + } + template<typename RhsT> + auto operator >= ( RhsT const& rhs ) -> BinaryExpr<LhsT, RhsT const&> const { + return { static_cast<bool>(m_lhs >= rhs), m_lhs, ">=", rhs }; + } + template<typename RhsT> + auto operator <= ( RhsT const& rhs ) -> BinaryExpr<LhsT, RhsT const&> const { + return { static_cast<bool>(m_lhs <= rhs), m_lhs, "<=", rhs }; + } + + auto makeUnaryExpr() const -> UnaryExpr<LhsT> { + return UnaryExpr<LhsT>{ m_lhs }; + } + }; + + void handleExpression( ITransientExpression const& expr ); + + template<typename T> + void handleExpression( ExprLhs<T> const& expr ) { + handleExpression( expr.makeUnaryExpr() ); + } + + struct Decomposer { + template<typename T> + auto operator <= ( T const& lhs ) -> ExprLhs<T const&> { + return ExprLhs<T const&>{ lhs }; + } + + auto operator <=( bool value ) -> ExprLhs<bool> { + return ExprLhs<bool>{ value }; + } + }; + +} // end namespace Catch + +#ifdef _MSC_VER +#pragma warning(pop) +#endif + +// end catch_decomposer.h +// start catch_interfaces_capture.h + +#include <string> + +namespace Catch { + + class AssertionResult; + struct AssertionInfo; + struct SectionInfo; + struct SectionEndInfo; + struct MessageInfo; + struct Counts; + struct BenchmarkInfo; + struct BenchmarkStats; + struct AssertionReaction; + + struct ITransientExpression; + + struct IResultCapture { + + virtual ~IResultCapture(); + + virtual bool sectionStarted( SectionInfo const& sectionInfo, + Counts& assertions ) = 0; + virtual void sectionEnded( SectionEndInfo const& endInfo ) = 0; + virtual void sectionEndedEarly( SectionEndInfo const& endInfo ) = 0; + + virtual void benchmarkStarting( BenchmarkInfo const& info ) = 0; + virtual void benchmarkEnded( BenchmarkStats const& stats ) = 0; + + virtual void pushScopedMessage( MessageInfo const& message ) = 0; + virtual void popScopedMessage( MessageInfo const& message ) = 0; + + virtual void handleFatalErrorCondition( StringRef message ) = 0; + + virtual void handleExpr + ( AssertionInfo const& info, + ITransientExpression const& expr, + AssertionReaction& reaction ) = 0; + virtual void handleMessage + ( AssertionInfo const& info, + ResultWas::OfType resultType, + StringRef const& message, + AssertionReaction& reaction ) = 0; + virtual void handleUnexpectedExceptionNotThrown + ( AssertionInfo const& info, + AssertionReaction& reaction ) = 0; + virtual void handleUnexpectedInflightException + ( AssertionInfo const& info, + std::string const& message, + AssertionReaction& reaction ) = 0; + virtual void handleIncomplete + ( AssertionInfo const& info ) = 0; + virtual void handleNonExpr + ( AssertionInfo const &info, + ResultWas::OfType resultType, + AssertionReaction &reaction ) = 0; + + virtual bool lastAssertionPassed() = 0; + virtual void assertionPassed() = 0; + + // Deprecated, do not use: + virtual std::string getCurrentTestName() const = 0; + virtual const AssertionResult* getLastResult() const = 0; + virtual void exceptionEarlyReported() = 0; + }; + + IResultCapture& getResultCapture(); +} + +// end catch_interfaces_capture.h +namespace Catch { + + struct TestFailureException{}; + struct AssertionResultData; + struct IResultCapture; + class RunContext; + + class LazyExpression { + friend class AssertionHandler; + friend struct AssertionStats; + friend class RunContext; + + ITransientExpression const* m_transientExpression = nullptr; + bool m_isNegated; + public: + LazyExpression( bool isNegated ); + LazyExpression( LazyExpression const& other ); + LazyExpression& operator = ( LazyExpression const& ) = delete; + + explicit operator bool() const; + + friend auto operator << ( std::ostream& os, LazyExpression const& lazyExpr ) -> std::ostream&; + }; + + struct AssertionReaction { + bool shouldDebugBreak = false; + bool shouldThrow = false; + }; + + class AssertionHandler { + AssertionInfo m_assertionInfo; + AssertionReaction m_reaction; + bool m_completed = false; + IResultCapture& m_resultCapture; + + public: + AssertionHandler + ( StringRef macroName, + SourceLineInfo const& lineInfo, + StringRef capturedExpression, + ResultDisposition::Flags resultDisposition ); + ~AssertionHandler() { + if ( !m_completed ) { + m_resultCapture.handleIncomplete( m_assertionInfo ); + } + } + + template<typename T> + void handleExpr( ExprLhs<T> const& expr ) { + handleExpr( expr.makeUnaryExpr() ); + } + void handleExpr( ITransientExpression const& expr ); + + void handleMessage(ResultWas::OfType resultType, StringRef const& message); + + void handleExceptionThrownAsExpected(); + void handleUnexpectedExceptionNotThrown(); + void handleExceptionNotThrownAsExpected(); + void handleThrowingCallSkipped(); + void handleUnexpectedInflightException(); + + void complete(); + void setCompleted(); + + // query + auto allowThrows() const -> bool; + }; + + void handleExceptionMatchExpr( AssertionHandler& handler, std::string const& str, StringRef matcherString ); + +} // namespace Catch + +// end catch_assertionhandler.h +// start catch_message.h + +#include <string> + +namespace Catch { + + struct MessageInfo { + MessageInfo( std::string const& _macroName, + SourceLineInfo const& _lineInfo, + ResultWas::OfType _type ); + + std::string macroName; + std::string message; + SourceLineInfo lineInfo; + ResultWas::OfType type; + unsigned int sequence; + + bool operator == ( MessageInfo const& other ) const; + bool operator < ( MessageInfo const& other ) const; + private: + static unsigned int globalCount; + }; + + struct MessageStream { + + template<typename T> + MessageStream& operator << ( T const& value ) { + m_stream << value; + return *this; + } + + ReusableStringStream m_stream; + }; + + struct MessageBuilder : MessageStream { + MessageBuilder( std::string const& macroName, + SourceLineInfo const& lineInfo, + ResultWas::OfType type ); + + template<typename T> + MessageBuilder& operator << ( T const& value ) { + m_stream << value; + return *this; + } + + MessageInfo m_info; + }; + + class ScopedMessage { + public: + explicit ScopedMessage( MessageBuilder const& builder ); + ~ScopedMessage(); + + MessageInfo m_info; + }; + +} // end namespace Catch + +// end catch_message.h +#if !defined(CATCH_CONFIG_DISABLE) + +#if !defined(CATCH_CONFIG_DISABLE_STRINGIFICATION) + #define CATCH_INTERNAL_STRINGIFY(...) #__VA_ARGS__ +#else + #define CATCH_INTERNAL_STRINGIFY(...) "Disabled by CATCH_CONFIG_DISABLE_STRINGIFICATION" +#endif + +#if defined(CATCH_CONFIG_FAST_COMPILE) + +/////////////////////////////////////////////////////////////////////////////// +// Another way to speed-up compilation is to omit local try-catch for REQUIRE* +// macros. +#define INTERNAL_CATCH_TRY +#define INTERNAL_CATCH_CATCH( capturer ) + +#else // CATCH_CONFIG_FAST_COMPILE + +#define INTERNAL_CATCH_TRY try +#define INTERNAL_CATCH_CATCH( handler ) catch(...) { handler.handleUnexpectedInflightException(); } + +#endif + +#define INTERNAL_CATCH_REACT( handler ) handler.complete(); + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_TEST( macroName, resultDisposition, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(__VA_ARGS__), resultDisposition ); \ + INTERNAL_CATCH_TRY { \ + CATCH_INTERNAL_SUPPRESS_PARENTHESES_WARNINGS \ + catchAssertionHandler.handleExpr( Catch::Decomposer() <= __VA_ARGS__ ); \ + CATCH_INTERNAL_UNSUPPRESS_PARENTHESES_WARNINGS \ + } INTERNAL_CATCH_CATCH( catchAssertionHandler ) \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( (void)0, false && static_cast<bool>( !!(__VA_ARGS__) ) ) // the expression here is never evaluated at runtime but it forces the compiler to give it a look + // The double negation silences MSVC's C4800 warning, the static_cast forces short-circuit evaluation if the type has overloaded &&. + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_IF( macroName, resultDisposition, ... ) \ + INTERNAL_CATCH_TEST( macroName, resultDisposition, __VA_ARGS__ ); \ + if( Catch::getResultCapture().lastAssertionPassed() ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_ELSE( macroName, resultDisposition, ... ) \ + INTERNAL_CATCH_TEST( macroName, resultDisposition, __VA_ARGS__ ); \ + if( !Catch::getResultCapture().lastAssertionPassed() ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_NO_THROW( macroName, resultDisposition, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(__VA_ARGS__), resultDisposition ); \ + try { \ + static_cast<void>(__VA_ARGS__); \ + catchAssertionHandler.handleExceptionNotThrownAsExpected(); \ + } \ + catch( ... ) { \ + catchAssertionHandler.handleUnexpectedInflightException(); \ + } \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_THROWS( macroName, resultDisposition, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(__VA_ARGS__), resultDisposition); \ + if( catchAssertionHandler.allowThrows() ) \ + try { \ + static_cast<void>(__VA_ARGS__); \ + catchAssertionHandler.handleUnexpectedExceptionNotThrown(); \ + } \ + catch( ... ) { \ + catchAssertionHandler.handleExceptionThrownAsExpected(); \ + } \ + else \ + catchAssertionHandler.handleThrowingCallSkipped(); \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_THROWS_AS( macroName, exceptionType, resultDisposition, expr ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(expr) ", " CATCH_INTERNAL_STRINGIFY(exceptionType), resultDisposition ); \ + if( catchAssertionHandler.allowThrows() ) \ + try { \ + static_cast<void>(expr); \ + catchAssertionHandler.handleUnexpectedExceptionNotThrown(); \ + } \ + catch( exceptionType const& ) { \ + catchAssertionHandler.handleExceptionThrownAsExpected(); \ + } \ + catch( ... ) { \ + catchAssertionHandler.handleUnexpectedInflightException(); \ + } \ + else \ + catchAssertionHandler.handleThrowingCallSkipped(); \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_MSG( macroName, messageType, resultDisposition, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName, CATCH_INTERNAL_LINEINFO, "", resultDisposition ); \ + catchAssertionHandler.handleMessage( messageType, ( Catch::MessageStream() << __VA_ARGS__ + ::Catch::StreamEndStop() ).m_stream.str() ); \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_INFO( macroName, log ) \ + Catch::ScopedMessage INTERNAL_CATCH_UNIQUE_NAME( scopedMessage )( Catch::MessageBuilder( macroName, CATCH_INTERNAL_LINEINFO, Catch::ResultWas::Info ) << log ); + +/////////////////////////////////////////////////////////////////////////////// +// Although this is matcher-based, it can be used with just a string +#define INTERNAL_CATCH_THROWS_STR_MATCHES( macroName, resultDisposition, matcher, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(__VA_ARGS__) ", " CATCH_INTERNAL_STRINGIFY(matcher), resultDisposition ); \ + if( catchAssertionHandler.allowThrows() ) \ + try { \ + static_cast<void>(__VA_ARGS__); \ + catchAssertionHandler.handleUnexpectedExceptionNotThrown(); \ + } \ + catch( ... ) { \ + Catch::handleExceptionMatchExpr( catchAssertionHandler, matcher, #matcher ); \ + } \ + else \ + catchAssertionHandler.handleThrowingCallSkipped(); \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +#endif // CATCH_CONFIG_DISABLE + +// end catch_capture.hpp +// start catch_section.h + +// start catch_section_info.h + +// start catch_totals.h + +#include <cstddef> + +namespace Catch { + + struct Counts { + Counts operator - ( Counts const& other ) const; + Counts& operator += ( Counts const& other ); + + std::size_t total() const; + bool allPassed() const; + bool allOk() const; + + std::size_t passed = 0; + std::size_t failed = 0; + std::size_t failedButOk = 0; + }; + + struct Totals { + + Totals operator - ( Totals const& other ) const; + Totals& operator += ( Totals const& other ); + + Totals delta( Totals const& prevTotals ) const; + + Counts assertions; + Counts testCases; + }; +} + +// end catch_totals.h +#include <string> + +namespace Catch { + + struct SectionInfo { + SectionInfo + ( SourceLineInfo const& _lineInfo, + std::string const& _name, + std::string const& _description = std::string() ); + + std::string name; + std::string description; + SourceLineInfo lineInfo; + }; + + struct SectionEndInfo { + SectionEndInfo( SectionInfo const& _sectionInfo, Counts const& _prevAssertions, double _durationInSeconds ); + + SectionInfo sectionInfo; + Counts prevAssertions; + double durationInSeconds; + }; + +} // end namespace Catch + +// end catch_section_info.h +// start catch_timer.h + +#include <cstdint> + +namespace Catch { + + auto getCurrentNanosecondsSinceEpoch() -> uint64_t; + auto getEstimatedClockResolution() -> uint64_t; + + class Timer { + uint64_t m_nanoseconds = 0; + public: + void start(); + auto getElapsedNanoseconds() const -> uint64_t; + auto getElapsedMicroseconds() const -> uint64_t; + auto getElapsedMilliseconds() const -> unsigned int; + auto getElapsedSeconds() const -> double; + }; + +} // namespace Catch + +// end catch_timer.h +#include <string> + +namespace Catch { + + class Section : NonCopyable { + public: + Section( SectionInfo const& info ); + ~Section(); + + // This indicates whether the section should be executed or not + explicit operator bool() const; + + private: + SectionInfo m_info; + + std::string m_name; + Counts m_assertions; + bool m_sectionIncluded; + Timer m_timer; + }; + +} // end namespace Catch + + #define INTERNAL_CATCH_SECTION( ... ) \ + if( Catch::Section const& INTERNAL_CATCH_UNIQUE_NAME( catch_internal_Section ) = Catch::SectionInfo( CATCH_INTERNAL_LINEINFO, __VA_ARGS__ ) ) + +// end catch_section.h +// start catch_benchmark.h + +#include <cstdint> +#include <string> + +namespace Catch { + + class BenchmarkLooper { + + std::string m_name; + std::size_t m_count = 0; + std::size_t m_iterationsToRun = 1; + uint64_t m_resolution; + Timer m_timer; + + static auto getResolution() -> uint64_t; + public: + // Keep most of this inline as it's on the code path that is being timed + BenchmarkLooper( StringRef name ) + : m_name( name ), + m_resolution( getResolution() ) + { + reportStart(); + m_timer.start(); + } + + explicit operator bool() { + if( m_count < m_iterationsToRun ) + return true; + return needsMoreIterations(); + } + + void increment() { + ++m_count; + } + + void reportStart(); + auto needsMoreIterations() -> bool; + }; + +} // end namespace Catch + +#define BENCHMARK( name ) \ + for( Catch::BenchmarkLooper looper( name ); looper; looper.increment() ) + +// end catch_benchmark.h +// start catch_interfaces_exception.h + +// start catch_interfaces_registry_hub.h + +#include <string> +#include <memory> + +namespace Catch { + + class TestCase; + struct ITestCaseRegistry; + struct IExceptionTranslatorRegistry; + struct IExceptionTranslator; + struct IReporterRegistry; + struct IReporterFactory; + struct ITagAliasRegistry; + class StartupExceptionRegistry; + + using IReporterFactoryPtr = std::shared_ptr<IReporterFactory>; + + struct IRegistryHub { + virtual ~IRegistryHub(); + + virtual IReporterRegistry const& getReporterRegistry() const = 0; + virtual ITestCaseRegistry const& getTestCaseRegistry() const = 0; + virtual ITagAliasRegistry const& getTagAliasRegistry() const = 0; + + virtual IExceptionTranslatorRegistry& getExceptionTranslatorRegistry() = 0; + + virtual StartupExceptionRegistry const& getStartupExceptionRegistry() const = 0; + }; + + struct IMutableRegistryHub { + virtual ~IMutableRegistryHub(); + virtual void registerReporter( std::string const& name, IReporterFactoryPtr const& factory ) = 0; + virtual void registerListener( IReporterFactoryPtr const& factory ) = 0; + virtual void registerTest( TestCase const& testInfo ) = 0; + virtual void registerTranslator( const IExceptionTranslator* translator ) = 0; + virtual void registerTagAlias( std::string const& alias, std::string const& tag, SourceLineInfo const& lineInfo ) = 0; + virtual void registerStartupException() noexcept = 0; + }; + + IRegistryHub& getRegistryHub(); + IMutableRegistryHub& getMutableRegistryHub(); + void cleanUp(); + std::string translateActiveException(); + +} + +// end catch_interfaces_registry_hub.h +#if defined(CATCH_CONFIG_DISABLE) + #define INTERNAL_CATCH_TRANSLATE_EXCEPTION_NO_REG( translatorName, signature) \ + static std::string translatorName( signature ) +#endif + +#include <exception> +#include <string> +#include <vector> + +namespace Catch { + using exceptionTranslateFunction = std::string(*)(); + + struct IExceptionTranslator; + using ExceptionTranslators = std::vector<std::unique_ptr<IExceptionTranslator const>>; + + struct IExceptionTranslator { + virtual ~IExceptionTranslator(); + virtual std::string translate( ExceptionTranslators::const_iterator it, ExceptionTranslators::const_iterator itEnd ) const = 0; + }; + + struct IExceptionTranslatorRegistry { + virtual ~IExceptionTranslatorRegistry(); + + virtual std::string translateActiveException() const = 0; + }; + + class ExceptionTranslatorRegistrar { + template<typename T> + class ExceptionTranslator : public IExceptionTranslator { + public: + + ExceptionTranslator( std::string(*translateFunction)( T& ) ) + : m_translateFunction( translateFunction ) + {} + + std::string translate( ExceptionTranslators::const_iterator it, ExceptionTranslators::const_iterator itEnd ) const override { + try { + if( it == itEnd ) + std::rethrow_exception(std::current_exception()); + else + return (*it)->translate( it+1, itEnd ); + } + catch( T& ex ) { + return m_translateFunction( ex ); + } + } + + protected: + std::string(*m_translateFunction)( T& ); + }; + + public: + template<typename T> + ExceptionTranslatorRegistrar( std::string(*translateFunction)( T& ) ) { + getMutableRegistryHub().registerTranslator + ( new ExceptionTranslator<T>( translateFunction ) ); + } + }; +} + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_TRANSLATE_EXCEPTION2( translatorName, signature ) \ + static std::string translatorName( signature ); \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ Catch::ExceptionTranslatorRegistrar INTERNAL_CATCH_UNIQUE_NAME( catch_internal_ExceptionRegistrar )( &translatorName ); } \ + CATCH_INTERNAL_UNSUPPRESS_GLOBALS_WARNINGS \ + static std::string translatorName( signature ) + +#define INTERNAL_CATCH_TRANSLATE_EXCEPTION( signature ) INTERNAL_CATCH_TRANSLATE_EXCEPTION2( INTERNAL_CATCH_UNIQUE_NAME( catch_internal_ExceptionTranslator ), signature ) + +// end catch_interfaces_exception.h +// start catch_approx.h + +#include <type_traits> +#include <stdexcept> + +namespace Catch { +namespace Detail { + + class Approx { + private: + bool equalityComparisonImpl(double other) const; + + public: + explicit Approx ( double value ); + + static Approx custom(); + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + Approx operator()( T const& value ) { + Approx approx( static_cast<double>(value) ); + approx.epsilon( m_epsilon ); + approx.margin( m_margin ); + approx.scale( m_scale ); + return approx; + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + explicit Approx( T const& value ): Approx(static_cast<double>(value)) + {} + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + friend bool operator == ( const T& lhs, Approx const& rhs ) { + auto lhs_v = static_cast<double>(lhs); + return rhs.equalityComparisonImpl(lhs_v); + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + friend bool operator == ( Approx const& lhs, const T& rhs ) { + return operator==( rhs, lhs ); + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + friend bool operator != ( T const& lhs, Approx const& rhs ) { + return !operator==( lhs, rhs ); + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + friend bool operator != ( Approx const& lhs, T const& rhs ) { + return !operator==( rhs, lhs ); + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + friend bool operator <= ( T const& lhs, Approx const& rhs ) { + return static_cast<double>(lhs) < rhs.m_value || lhs == rhs; + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + friend bool operator <= ( Approx const& lhs, T const& rhs ) { + return lhs.m_value < static_cast<double>(rhs) || lhs == rhs; + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + friend bool operator >= ( T const& lhs, Approx const& rhs ) { + return static_cast<double>(lhs) > rhs.m_value || lhs == rhs; + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + friend bool operator >= ( Approx const& lhs, T const& rhs ) { + return lhs.m_value > static_cast<double>(rhs) || lhs == rhs; + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + Approx& epsilon( T const& newEpsilon ) { + double epsilonAsDouble = static_cast<double>(newEpsilon); + if( epsilonAsDouble < 0 || epsilonAsDouble > 1.0 ) { + throw std::domain_error + ( "Invalid Approx::epsilon: " + + Catch::Detail::stringify( epsilonAsDouble ) + + ", Approx::epsilon has to be between 0 and 1" ); + } + m_epsilon = epsilonAsDouble; + return *this; + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + Approx& margin( T const& newMargin ) { + double marginAsDouble = static_cast<double>(newMargin); + if( marginAsDouble < 0 ) { + throw std::domain_error + ( "Invalid Approx::margin: " + + Catch::Detail::stringify( marginAsDouble ) + + ", Approx::Margin has to be non-negative." ); + + } + m_margin = marginAsDouble; + return *this; + } + + template <typename T, typename = typename std::enable_if<std::is_constructible<double, T>::value>::type> + Approx& scale( T const& newScale ) { + m_scale = static_cast<double>(newScale); + return *this; + } + + std::string toString() const; + + private: + double m_epsilon; + double m_margin; + double m_scale; + double m_value; + }; +} + +template<> +struct StringMaker<Catch::Detail::Approx> { + static std::string convert(Catch::Detail::Approx const& value); +}; + +} // end namespace Catch + +// end catch_approx.h +// start catch_string_manip.h + +#include <string> +#include <iosfwd> + +namespace Catch { + + bool startsWith( std::string const& s, std::string const& prefix ); + bool startsWith( std::string const& s, char prefix ); + bool endsWith( std::string const& s, std::string const& suffix ); + bool endsWith( std::string const& s, char suffix ); + bool contains( std::string const& s, std::string const& infix ); + void toLowerInPlace( std::string& s ); + std::string toLower( std::string const& s ); + std::string trim( std::string const& str ); + bool replaceInPlace( std::string& str, std::string const& replaceThis, std::string const& withThis ); + + struct pluralise { + pluralise( std::size_t count, std::string const& label ); + + friend std::ostream& operator << ( std::ostream& os, pluralise const& pluraliser ); + + std::size_t m_count; + std::string m_label; + }; +} + +// end catch_string_manip.h +#ifndef CATCH_CONFIG_DISABLE_MATCHERS +// start catch_capture_matchers.h + +// start catch_matchers.h + +#include <string> +#include <vector> + +namespace Catch { +namespace Matchers { + namespace Impl { + + template<typename ArgT> struct MatchAllOf; + template<typename ArgT> struct MatchAnyOf; + template<typename ArgT> struct MatchNotOf; + + class MatcherUntypedBase { + public: + MatcherUntypedBase() = default; + MatcherUntypedBase ( MatcherUntypedBase const& ) = default; + MatcherUntypedBase& operator = ( MatcherUntypedBase const& ) = delete; + std::string toString() const; + + protected: + virtual ~MatcherUntypedBase(); + virtual std::string describe() const = 0; + mutable std::string m_cachedToString; + }; + + template<typename ObjectT> + struct MatcherMethod { + virtual bool match( ObjectT const& arg ) const = 0; + }; + template<typename PtrT> + struct MatcherMethod<PtrT*> { + virtual bool match( PtrT* arg ) const = 0; + }; + + template<typename T> + struct MatcherBase : MatcherUntypedBase, MatcherMethod<T> { + + MatchAllOf<T> operator && ( MatcherBase const& other ) const; + MatchAnyOf<T> operator || ( MatcherBase const& other ) const; + MatchNotOf<T> operator ! () const; + }; + + template<typename ArgT> + struct MatchAllOf : MatcherBase<ArgT> { + bool match( ArgT const& arg ) const override { + for( auto matcher : m_matchers ) { + if (!matcher->match(arg)) + return false; + } + return true; + } + std::string describe() const override { + std::string description; + description.reserve( 4 + m_matchers.size()*32 ); + description += "( "; + bool first = true; + for( auto matcher : m_matchers ) { + if( first ) + first = false; + else + description += " and "; + description += matcher->toString(); + } + description += " )"; + return description; + } + + MatchAllOf<ArgT>& operator && ( MatcherBase<ArgT> const& other ) { + m_matchers.push_back( &other ); + return *this; + } + + std::vector<MatcherBase<ArgT> const*> m_matchers; + }; + template<typename ArgT> + struct MatchAnyOf : MatcherBase<ArgT> { + + bool match( ArgT const& arg ) const override { + for( auto matcher : m_matchers ) { + if (matcher->match(arg)) + return true; + } + return false; + } + std::string describe() const override { + std::string description; + description.reserve( 4 + m_matchers.size()*32 ); + description += "( "; + bool first = true; + for( auto matcher : m_matchers ) { + if( first ) + first = false; + else + description += " or "; + description += matcher->toString(); + } + description += " )"; + return description; + } + + MatchAnyOf<ArgT>& operator || ( MatcherBase<ArgT> const& other ) { + m_matchers.push_back( &other ); + return *this; + } + + std::vector<MatcherBase<ArgT> const*> m_matchers; + }; + + template<typename ArgT> + struct MatchNotOf : MatcherBase<ArgT> { + + MatchNotOf( MatcherBase<ArgT> const& underlyingMatcher ) : m_underlyingMatcher( underlyingMatcher ) {} + + bool match( ArgT const& arg ) const override { + return !m_underlyingMatcher.match( arg ); + } + + std::string describe() const override { + return "not " + m_underlyingMatcher.toString(); + } + MatcherBase<ArgT> const& m_underlyingMatcher; + }; + + template<typename T> + MatchAllOf<T> MatcherBase<T>::operator && ( MatcherBase const& other ) const { + return MatchAllOf<T>() && *this && other; + } + template<typename T> + MatchAnyOf<T> MatcherBase<T>::operator || ( MatcherBase const& other ) const { + return MatchAnyOf<T>() || *this || other; + } + template<typename T> + MatchNotOf<T> MatcherBase<T>::operator ! () const { + return MatchNotOf<T>( *this ); + } + + } // namespace Impl + +} // namespace Matchers + +using namespace Matchers; +using Matchers::Impl::MatcherBase; + +} // namespace Catch + +// end catch_matchers.h +// start catch_matchers_floating.h + +#include <type_traits> +#include <cmath> + +namespace Catch { +namespace Matchers { + + namespace Floating { + + enum class FloatingPointKind : uint8_t; + + struct WithinAbsMatcher : MatcherBase<double> { + WithinAbsMatcher(double target, double margin); + bool match(double const& matchee) const override; + std::string describe() const override; + private: + double m_target; + double m_margin; + }; + + struct WithinUlpsMatcher : MatcherBase<double> { + WithinUlpsMatcher(double target, int ulps, FloatingPointKind baseType); + bool match(double const& matchee) const override; + std::string describe() const override; + private: + double m_target; + int m_ulps; + FloatingPointKind m_type; + }; + + } // namespace Floating + + // The following functions create the actual matcher objects. + // This allows the types to be inferred + Floating::WithinUlpsMatcher WithinULP(double target, int maxUlpDiff); + Floating::WithinUlpsMatcher WithinULP(float target, int maxUlpDiff); + Floating::WithinAbsMatcher WithinAbs(double target, double margin); + +} // namespace Matchers +} // namespace Catch + +// end catch_matchers_floating.h +// start catch_matchers_string.h + +#include <string> + +namespace Catch { +namespace Matchers { + + namespace StdString { + + struct CasedString + { + CasedString( std::string const& str, CaseSensitive::Choice caseSensitivity ); + std::string adjustString( std::string const& str ) const; + std::string caseSensitivitySuffix() const; + + CaseSensitive::Choice m_caseSensitivity; + std::string m_str; + }; + + struct StringMatcherBase : MatcherBase<std::string> { + StringMatcherBase( std::string const& operation, CasedString const& comparator ); + std::string describe() const override; + + CasedString m_comparator; + std::string m_operation; + }; + + struct EqualsMatcher : StringMatcherBase { + EqualsMatcher( CasedString const& comparator ); + bool match( std::string const& source ) const override; + }; + struct ContainsMatcher : StringMatcherBase { + ContainsMatcher( CasedString const& comparator ); + bool match( std::string const& source ) const override; + }; + struct StartsWithMatcher : StringMatcherBase { + StartsWithMatcher( CasedString const& comparator ); + bool match( std::string const& source ) const override; + }; + struct EndsWithMatcher : StringMatcherBase { + EndsWithMatcher( CasedString const& comparator ); + bool match( std::string const& source ) const override; + }; + + struct RegexMatcher : MatcherBase<std::string> { + RegexMatcher( std::string regex, CaseSensitive::Choice caseSensitivity ); + bool match( std::string const& matchee ) const override; + std::string describe() const override; + + private: + std::string m_regex; + CaseSensitive::Choice m_caseSensitivity; + }; + + } // namespace StdString + + // The following functions create the actual matcher objects. + // This allows the types to be inferred + + StdString::EqualsMatcher Equals( std::string const& str, CaseSensitive::Choice caseSensitivity = CaseSensitive::Yes ); + StdString::ContainsMatcher Contains( std::string const& str, CaseSensitive::Choice caseSensitivity = CaseSensitive::Yes ); + StdString::EndsWithMatcher EndsWith( std::string const& str, CaseSensitive::Choice caseSensitivity = CaseSensitive::Yes ); + StdString::StartsWithMatcher StartsWith( std::string const& str, CaseSensitive::Choice caseSensitivity = CaseSensitive::Yes ); + StdString::RegexMatcher Matches( std::string const& regex, CaseSensitive::Choice caseSensitivity = CaseSensitive::Yes ); + +} // namespace Matchers +} // namespace Catch + +// end catch_matchers_string.h +// start catch_matchers_vector.h + +#include <algorithm> + +namespace Catch { +namespace Matchers { + + namespace Vector { + namespace Detail { + template <typename InputIterator, typename T> + size_t count(InputIterator first, InputIterator last, T const& item) { + size_t cnt = 0; + for (; first != last; ++first) { + if (*first == item) { + ++cnt; + } + } + return cnt; + } + template <typename InputIterator, typename T> + bool contains(InputIterator first, InputIterator last, T const& item) { + for (; first != last; ++first) { + if (*first == item) { + return true; + } + } + return false; + } + } + + template<typename T> + struct ContainsElementMatcher : MatcherBase<std::vector<T>> { + + ContainsElementMatcher(T const &comparator) : m_comparator( comparator) {} + + bool match(std::vector<T> const &v) const override { + for (auto const& el : v) { + if (el == m_comparator) { + return true; + } + } + return false; + } + + std::string describe() const override { + return "Contains: " + ::Catch::Detail::stringify( m_comparator ); + } + + T const& m_comparator; + }; + + template<typename T> + struct ContainsMatcher : MatcherBase<std::vector<T>> { + + ContainsMatcher(std::vector<T> const &comparator) : m_comparator( comparator ) {} + + bool match(std::vector<T> const &v) const override { + // !TBD: see note in EqualsMatcher + if (m_comparator.size() > v.size()) + return false; + for (auto const& comparator : m_comparator) { + auto present = false; + for (const auto& el : v) { + if (el == comparator) { + present = true; + break; + } + } + if (!present) { + return false; + } + } + return true; + } + std::string describe() const override { + return "Contains: " + ::Catch::Detail::stringify( m_comparator ); + } + + std::vector<T> const& m_comparator; + }; + + template<typename T> + struct EqualsMatcher : MatcherBase<std::vector<T>> { + + EqualsMatcher(std::vector<T> const &comparator) : m_comparator( comparator ) {} + + bool match(std::vector<T> const &v) const override { + // !TBD: This currently works if all elements can be compared using != + // - a more general approach would be via a compare template that defaults + // to using !=. but could be specialised for, e.g. std::vector<T> etc + // - then just call that directly + if (m_comparator.size() != v.size()) + return false; + for (std::size_t i = 0; i < v.size(); ++i) + if (m_comparator[i] != v[i]) + return false; + return true; + } + std::string describe() const override { + return "Equals: " + ::Catch::Detail::stringify( m_comparator ); + } + std::vector<T> const& m_comparator; + }; + + template<typename T> + struct UnorderedEqualsMatcher : MatcherBase<std::vector<T>> { + UnorderedEqualsMatcher(std::vector<T> const& target) : m_target(target) {} + bool match(std::vector<T> const& vec) const override { + // Note: This is a reimplementation of std::is_permutation, + // because I don't want to include <algorithm> inside the common path + if (m_target.size() != vec.size()) { + return false; + } + auto lfirst = m_target.begin(), llast = m_target.end(); + auto rfirst = vec.begin(), rlast = vec.end(); + // Cut common prefix to optimize checking of permuted parts + while (lfirst != llast && *lfirst != *rfirst) { + ++lfirst; ++rfirst; + } + if (lfirst == llast) { + return true; + } + + for (auto mid = lfirst; mid != llast; ++mid) { + // Skip already counted items + if (Detail::contains(lfirst, mid, *mid)) { + continue; + } + size_t num_vec = Detail::count(rfirst, rlast, *mid); + if (num_vec == 0 || Detail::count(lfirst, llast, *mid) != num_vec) { + return false; + } + } + + return true; + } + + std::string describe() const override { + return "UnorderedEquals: " + ::Catch::Detail::stringify(m_target); + } + private: + std::vector<T> const& m_target; + }; + + } // namespace Vector + + // The following functions create the actual matcher objects. + // This allows the types to be inferred + + template<typename T> + Vector::ContainsMatcher<T> Contains( std::vector<T> const& comparator ) { + return Vector::ContainsMatcher<T>( comparator ); + } + + template<typename T> + Vector::ContainsElementMatcher<T> VectorContains( T const& comparator ) { + return Vector::ContainsElementMatcher<T>( comparator ); + } + + template<typename T> + Vector::EqualsMatcher<T> Equals( std::vector<T> const& comparator ) { + return Vector::EqualsMatcher<T>( comparator ); + } + + template<typename T> + Vector::UnorderedEqualsMatcher<T> UnorderedEquals(std::vector<T> const& target) { + return Vector::UnorderedEqualsMatcher<T>(target); + } + +} // namespace Matchers +} // namespace Catch + +// end catch_matchers_vector.h +namespace Catch { + + template<typename ArgT, typename MatcherT> + class MatchExpr : public ITransientExpression { + ArgT const& m_arg; + MatcherT m_matcher; + StringRef m_matcherString; + public: + MatchExpr( ArgT const& arg, MatcherT const& matcher, StringRef matcherString ) + : ITransientExpression{ true, matcher.match( arg ) }, + m_arg( arg ), + m_matcher( matcher ), + m_matcherString( matcherString ) + {} + + void streamReconstructedExpression( std::ostream &os ) const override { + auto matcherAsString = m_matcher.toString(); + os << Catch::Detail::stringify( m_arg ) << ' '; + if( matcherAsString == Detail::unprintableString ) + os << m_matcherString; + else + os << matcherAsString; + } + }; + + using StringMatcher = Matchers::Impl::MatcherBase<std::string>; + + void handleExceptionMatchExpr( AssertionHandler& handler, StringMatcher const& matcher, StringRef matcherString ); + + template<typename ArgT, typename MatcherT> + auto makeMatchExpr( ArgT const& arg, MatcherT const& matcher, StringRef matcherString ) -> MatchExpr<ArgT, MatcherT> { + return MatchExpr<ArgT, MatcherT>( arg, matcher, matcherString ); + } + +} // namespace Catch + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CHECK_THAT( macroName, matcher, resultDisposition, arg ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(arg) ", " CATCH_INTERNAL_STRINGIFY(matcher), resultDisposition ); \ + INTERNAL_CATCH_TRY { \ + catchAssertionHandler.handleExpr( Catch::makeMatchExpr( arg, matcher, #matcher ) ); \ + } INTERNAL_CATCH_CATCH( catchAssertionHandler ) \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_THROWS_MATCHES( macroName, exceptionType, resultDisposition, matcher, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(__VA_ARGS__) ", " CATCH_INTERNAL_STRINGIFY(exceptionType) ", " CATCH_INTERNAL_STRINGIFY(matcher), resultDisposition ); \ + if( catchAssertionHandler.allowThrows() ) \ + try { \ + static_cast<void>(__VA_ARGS__ ); \ + catchAssertionHandler.handleUnexpectedExceptionNotThrown(); \ + } \ + catch( exceptionType const& ex ) { \ + catchAssertionHandler.handleExpr( Catch::makeMatchExpr( ex, matcher, #matcher ) ); \ + } \ + catch( ... ) { \ + catchAssertionHandler.handleUnexpectedInflightException(); \ + } \ + else \ + catchAssertionHandler.handleThrowingCallSkipped(); \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +// end catch_capture_matchers.h +#endif + +// These files are included here so the single_include script doesn't put them +// in the conditionally compiled sections +// start catch_test_case_info.h + +#include <string> +#include <vector> +#include <memory> + +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wpadded" +#endif + +namespace Catch { + + struct ITestInvoker; + + struct TestCaseInfo { + enum SpecialProperties{ + None = 0, + IsHidden = 1 << 1, + ShouldFail = 1 << 2, + MayFail = 1 << 3, + Throws = 1 << 4, + NonPortable = 1 << 5, + Benchmark = 1 << 6 + }; + + TestCaseInfo( std::string const& _name, + std::string const& _className, + std::string const& _description, + std::vector<std::string> const& _tags, + SourceLineInfo const& _lineInfo ); + + friend void setTags( TestCaseInfo& testCaseInfo, std::vector<std::string> tags ); + + bool isHidden() const; + bool throws() const; + bool okToFail() const; + bool expectedToFail() const; + + std::string tagsAsString() const; + + std::string name; + std::string className; + std::string description; + std::vector<std::string> tags; + std::vector<std::string> lcaseTags; + SourceLineInfo lineInfo; + SpecialProperties properties; + }; + + class TestCase : public TestCaseInfo { + public: + + TestCase( ITestInvoker* testCase, TestCaseInfo const& info ); + + TestCase withName( std::string const& _newName ) const; + + void invoke() const; + + TestCaseInfo const& getTestCaseInfo() const; + + bool operator == ( TestCase const& other ) const; + bool operator < ( TestCase const& other ) const; + + private: + std::shared_ptr<ITestInvoker> test; + }; + + TestCase makeTestCase( ITestInvoker* testCase, + std::string const& className, + std::string const& name, + std::string const& description, + SourceLineInfo const& lineInfo ); +} + +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + +// end catch_test_case_info.h +// start catch_interfaces_runner.h + +namespace Catch { + + struct IRunner { + virtual ~IRunner(); + virtual bool aborting() const = 0; + }; +} + +// end catch_interfaces_runner.h + +#ifdef __OBJC__ +// start catch_objc.hpp + +#import <objc/runtime.h> + +#include <string> + +// NB. Any general catch headers included here must be included +// in catch.hpp first to make sure they are included by the single +// header for non obj-usage + +/////////////////////////////////////////////////////////////////////////////// +// This protocol is really only here for (self) documenting purposes, since +// all its methods are optional. +@protocol OcFixture + +@optional + +-(void) setUp; +-(void) tearDown; + +@end + +namespace Catch { + + class OcMethod : public ITestInvoker { + + public: + OcMethod( Class cls, SEL sel ) : m_cls( cls ), m_sel( sel ) {} + + virtual void invoke() const { + id obj = [[m_cls alloc] init]; + + performOptionalSelector( obj, @selector(setUp) ); + performOptionalSelector( obj, m_sel ); + performOptionalSelector( obj, @selector(tearDown) ); + + arcSafeRelease( obj ); + } + private: + virtual ~OcMethod() {} + + Class m_cls; + SEL m_sel; + }; + + namespace Detail{ + + inline std::string getAnnotation( Class cls, + std::string const& annotationName, + std::string const& testCaseName ) { + NSString* selStr = [[NSString alloc] initWithFormat:@"Catch_%s_%s", annotationName.c_str(), testCaseName.c_str()]; + SEL sel = NSSelectorFromString( selStr ); + arcSafeRelease( selStr ); + id value = performOptionalSelector( cls, sel ); + if( value ) + return [(NSString*)value UTF8String]; + return ""; + } + } + + inline std::size_t registerTestMethods() { + std::size_t noTestMethods = 0; + int noClasses = objc_getClassList( nullptr, 0 ); + + Class* classes = (CATCH_UNSAFE_UNRETAINED Class *)malloc( sizeof(Class) * noClasses); + objc_getClassList( classes, noClasses ); + + for( int c = 0; c < noClasses; c++ ) { + Class cls = classes[c]; + { + u_int count; + Method* methods = class_copyMethodList( cls, &count ); + for( u_int m = 0; m < count ; m++ ) { + SEL selector = method_getName(methods[m]); + std::string methodName = sel_getName(selector); + if( startsWith( methodName, "Catch_TestCase_" ) ) { + std::string testCaseName = methodName.substr( 15 ); + std::string name = Detail::getAnnotation( cls, "Name", testCaseName ); + std::string desc = Detail::getAnnotation( cls, "Description", testCaseName ); + const char* className = class_getName( cls ); + + getMutableRegistryHub().registerTest( makeTestCase( new OcMethod( cls, selector ), className, name.c_str(), desc.c_str(), SourceLineInfo("",0) ) ); + noTestMethods++; + } + } + free(methods); + } + } + return noTestMethods; + } + +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) + + namespace Matchers { + namespace Impl { + namespace NSStringMatchers { + + struct StringHolder : MatcherBase<NSString*>{ + StringHolder( NSString* substr ) : m_substr( [substr copy] ){} + StringHolder( StringHolder const& other ) : m_substr( [other.m_substr copy] ){} + StringHolder() { + arcSafeRelease( m_substr ); + } + + bool match( NSString* arg ) const override { + return false; + } + + NSString* CATCH_ARC_STRONG m_substr; + }; + + struct Equals : StringHolder { + Equals( NSString* substr ) : StringHolder( substr ){} + + bool match( NSString* str ) const override { + return (str != nil || m_substr == nil ) && + [str isEqualToString:m_substr]; + } + + std::string describe() const override { + return "equals string: " + Catch::Detail::stringify( m_substr ); + } + }; + + struct Contains : StringHolder { + Contains( NSString* substr ) : StringHolder( substr ){} + + bool match( NSString* str ) const { + return (str != nil || m_substr == nil ) && + [str rangeOfString:m_substr].location != NSNotFound; + } + + std::string describe() const override { + return "contains string: " + Catch::Detail::stringify( m_substr ); + } + }; + + struct StartsWith : StringHolder { + StartsWith( NSString* substr ) : StringHolder( substr ){} + + bool match( NSString* str ) const override { + return (str != nil || m_substr == nil ) && + [str rangeOfString:m_substr].location == 0; + } + + std::string describe() const override { + return "starts with: " + Catch::Detail::stringify( m_substr ); + } + }; + struct EndsWith : StringHolder { + EndsWith( NSString* substr ) : StringHolder( substr ){} + + bool match( NSString* str ) const override { + return (str != nil || m_substr == nil ) && + [str rangeOfString:m_substr].location == [str length] - [m_substr length]; + } + + std::string describe() const override { + return "ends with: " + Catch::Detail::stringify( m_substr ); + } + }; + + } // namespace NSStringMatchers + } // namespace Impl + + inline Impl::NSStringMatchers::Equals + Equals( NSString* substr ){ return Impl::NSStringMatchers::Equals( substr ); } + + inline Impl::NSStringMatchers::Contains + Contains( NSString* substr ){ return Impl::NSStringMatchers::Contains( substr ); } + + inline Impl::NSStringMatchers::StartsWith + StartsWith( NSString* substr ){ return Impl::NSStringMatchers::StartsWith( substr ); } + + inline Impl::NSStringMatchers::EndsWith + EndsWith( NSString* substr ){ return Impl::NSStringMatchers::EndsWith( substr ); } + + } // namespace Matchers + + using namespace Matchers; + +#endif // CATCH_CONFIG_DISABLE_MATCHERS + +} // namespace Catch + +/////////////////////////////////////////////////////////////////////////////// +#define OC_MAKE_UNIQUE_NAME( root, uniqueSuffix ) root##uniqueSuffix +#define OC_TEST_CASE2( name, desc, uniqueSuffix ) \ ++(NSString*) OC_MAKE_UNIQUE_NAME( Catch_Name_test_, uniqueSuffix ) \ +{ \ +return @ name; \ +} \ ++(NSString*) OC_MAKE_UNIQUE_NAME( Catch_Description_test_, uniqueSuffix ) \ +{ \ +return @ desc; \ +} \ +-(void) OC_MAKE_UNIQUE_NAME( Catch_TestCase_test_, uniqueSuffix ) + +#define OC_TEST_CASE( name, desc ) OC_TEST_CASE2( name, desc, __LINE__ ) + +// end catch_objc.hpp +#endif + +#ifdef CATCH_CONFIG_EXTERNAL_INTERFACES +// start catch_external_interfaces.h + +// start catch_reporter_bases.hpp + +// start catch_interfaces_reporter.h + +// start catch_config.hpp + +// start catch_test_spec_parser.h + +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wpadded" +#endif + +// start catch_test_spec.h + +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wpadded" +#endif + +// start catch_wildcard_pattern.h + +namespace Catch +{ + class WildcardPattern { + enum WildcardPosition { + NoWildcard = 0, + WildcardAtStart = 1, + WildcardAtEnd = 2, + WildcardAtBothEnds = WildcardAtStart | WildcardAtEnd + }; + + public: + + WildcardPattern( std::string const& pattern, CaseSensitive::Choice caseSensitivity ); + virtual ~WildcardPattern() = default; + virtual bool matches( std::string const& str ) const; + + private: + std::string adjustCase( std::string const& str ) const; + CaseSensitive::Choice m_caseSensitivity; + WildcardPosition m_wildcard = NoWildcard; + std::string m_pattern; + }; +} + +// end catch_wildcard_pattern.h +#include <string> +#include <vector> +#include <memory> + +namespace Catch { + + class TestSpec { + struct Pattern { + virtual ~Pattern(); + virtual bool matches( TestCaseInfo const& testCase ) const = 0; + }; + using PatternPtr = std::shared_ptr<Pattern>; + + class NamePattern : public Pattern { + public: + NamePattern( std::string const& name ); + virtual ~NamePattern(); + virtual bool matches( TestCaseInfo const& testCase ) const override; + private: + WildcardPattern m_wildcardPattern; + }; + + class TagPattern : public Pattern { + public: + TagPattern( std::string const& tag ); + virtual ~TagPattern(); + virtual bool matches( TestCaseInfo const& testCase ) const override; + private: + std::string m_tag; + }; + + class ExcludedPattern : public Pattern { + public: + ExcludedPattern( PatternPtr const& underlyingPattern ); + virtual ~ExcludedPattern(); + virtual bool matches( TestCaseInfo const& testCase ) const override; + private: + PatternPtr m_underlyingPattern; + }; + + struct Filter { + std::vector<PatternPtr> m_patterns; + + bool matches( TestCaseInfo const& testCase ) const; + }; + + public: + bool hasFilters() const; + bool matches( TestCaseInfo const& testCase ) const; + + private: + std::vector<Filter> m_filters; + + friend class TestSpecParser; + }; +} + +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + +// end catch_test_spec.h +// start catch_interfaces_tag_alias_registry.h + +#include <string> + +namespace Catch { + + struct TagAlias; + + struct ITagAliasRegistry { + virtual ~ITagAliasRegistry(); + // Nullptr if not present + virtual TagAlias const* find( std::string const& alias ) const = 0; + virtual std::string expandAliases( std::string const& unexpandedTestSpec ) const = 0; + + static ITagAliasRegistry const& get(); + }; + +} // end namespace Catch + +// end catch_interfaces_tag_alias_registry.h +namespace Catch { + + class TestSpecParser { + enum Mode{ None, Name, QuotedName, Tag, EscapedName }; + Mode m_mode = None; + bool m_exclusion = false; + std::size_t m_start = std::string::npos, m_pos = 0; + std::string m_arg; + std::vector<std::size_t> m_escapeChars; + TestSpec::Filter m_currentFilter; + TestSpec m_testSpec; + ITagAliasRegistry const* m_tagAliases = nullptr; + + public: + TestSpecParser( ITagAliasRegistry const& tagAliases ); + + TestSpecParser& parse( std::string const& arg ); + TestSpec testSpec(); + + private: + void visitChar( char c ); + void startNewMode( Mode mode, std::size_t start ); + void escape(); + std::string subString() const; + + template<typename T> + void addPattern() { + std::string token = subString(); + for( std::size_t i = 0; i < m_escapeChars.size(); ++i ) + token = token.substr( 0, m_escapeChars[i]-m_start-i ) + token.substr( m_escapeChars[i]-m_start-i+1 ); + m_escapeChars.clear(); + if( startsWith( token, "exclude:" ) ) { + m_exclusion = true; + token = token.substr( 8 ); + } + if( !token.empty() ) { + TestSpec::PatternPtr pattern = std::make_shared<T>( token ); + if( m_exclusion ) + pattern = std::make_shared<TestSpec::ExcludedPattern>( pattern ); + m_currentFilter.m_patterns.push_back( pattern ); + } + m_exclusion = false; + m_mode = None; + } + + void addFilter(); + }; + TestSpec parseTestSpec( std::string const& arg ); + +} // namespace Catch + +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + +// end catch_test_spec_parser.h +// start catch_interfaces_config.h + +#include <iosfwd> +#include <string> +#include <vector> +#include <memory> + +namespace Catch { + + enum class Verbosity { + Quiet = 0, + Normal, + High + }; + + struct WarnAbout { enum What { + Nothing = 0x00, + NoAssertions = 0x01 + }; }; + + struct ShowDurations { enum OrNot { + DefaultForReporter, + Always, + Never + }; }; + struct RunTests { enum InWhatOrder { + InDeclarationOrder, + InLexicographicalOrder, + InRandomOrder + }; }; + struct UseColour { enum YesOrNo { + Auto, + Yes, + No + }; }; + struct WaitForKeypress { enum When { + Never, + BeforeStart = 1, + BeforeExit = 2, + BeforeStartAndExit = BeforeStart | BeforeExit + }; }; + + class TestSpec; + + struct IConfig : NonCopyable { + + virtual ~IConfig(); + + virtual bool allowThrows() const = 0; + virtual std::ostream& stream() const = 0; + virtual std::string name() const = 0; + virtual bool includeSuccessfulResults() const = 0; + virtual bool shouldDebugBreak() const = 0; + virtual bool warnAboutMissingAssertions() const = 0; + virtual int abortAfter() const = 0; + virtual bool showInvisibles() const = 0; + virtual ShowDurations::OrNot showDurations() const = 0; + virtual TestSpec const& testSpec() const = 0; + virtual RunTests::InWhatOrder runOrder() const = 0; + virtual unsigned int rngSeed() const = 0; + virtual int benchmarkResolutionMultiple() const = 0; + virtual UseColour::YesOrNo useColour() const = 0; + virtual std::vector<std::string> const& getSectionsToRun() const = 0; + virtual Verbosity verbosity() const = 0; + }; + + using IConfigPtr = std::shared_ptr<IConfig const>; +} + +// end catch_interfaces_config.h +// Libstdc++ doesn't like incomplete classes for unique_ptr + +#include <memory> +#include <vector> +#include <string> + +#ifndef CATCH_CONFIG_CONSOLE_WIDTH +#define CATCH_CONFIG_CONSOLE_WIDTH 80 +#endif + +namespace Catch { + + struct IStream; + + struct ConfigData { + bool listTests = false; + bool listTags = false; + bool listReporters = false; + bool listTestNamesOnly = false; + + bool showSuccessfulTests = false; + bool shouldDebugBreak = false; + bool noThrow = false; + bool showHelp = false; + bool showInvisibles = false; + bool filenamesAsTags = false; + bool libIdentify = false; + + int abortAfter = -1; + unsigned int rngSeed = 0; + int benchmarkResolutionMultiple = 100; + + Verbosity verbosity = Verbosity::Normal; + WarnAbout::What warnings = WarnAbout::Nothing; + ShowDurations::OrNot showDurations = ShowDurations::DefaultForReporter; + RunTests::InWhatOrder runOrder = RunTests::InDeclarationOrder; + UseColour::YesOrNo useColour = UseColour::Auto; + WaitForKeypress::When waitForKeypress = WaitForKeypress::Never; + + std::string outputFilename; + std::string name; + std::string processName; + + std::vector<std::string> reporterNames; + std::vector<std::string> testsOrTags; + std::vector<std::string> sectionsToRun; + }; + + class Config : public IConfig { + public: + + Config() = default; + Config( ConfigData const& data ); + virtual ~Config() = default; + + std::string const& getFilename() const; + + bool listTests() const; + bool listTestNamesOnly() const; + bool listTags() const; + bool listReporters() const; + + std::string getProcessName() const; + + std::vector<std::string> const& getReporterNames() const; + std::vector<std::string> const& getSectionsToRun() const override; + + virtual TestSpec const& testSpec() const override; + + bool showHelp() const; + + // IConfig interface + bool allowThrows() const override; + std::ostream& stream() const override; + std::string name() const override; + bool includeSuccessfulResults() const override; + bool warnAboutMissingAssertions() const override; + ShowDurations::OrNot showDurations() const override; + RunTests::InWhatOrder runOrder() const override; + unsigned int rngSeed() const override; + int benchmarkResolutionMultiple() const override; + UseColour::YesOrNo useColour() const override; + bool shouldDebugBreak() const override; + int abortAfter() const override; + bool showInvisibles() const override; + Verbosity verbosity() const override; + + private: + + IStream const* openStream(); + ConfigData m_data; + + std::unique_ptr<IStream const> m_stream; + TestSpec m_testSpec; + }; + +} // end namespace Catch + +// end catch_config.hpp +// start catch_assertionresult.h + +#include <string> + +namespace Catch { + + struct AssertionResultData + { + AssertionResultData() = delete; + + AssertionResultData( ResultWas::OfType _resultType, LazyExpression const& _lazyExpression ); + + std::string message; + mutable std::string reconstructedExpression; + LazyExpression lazyExpression; + ResultWas::OfType resultType; + + std::string reconstructExpression() const; + }; + + class AssertionResult { + public: + AssertionResult() = delete; + AssertionResult( AssertionInfo const& info, AssertionResultData const& data ); + + bool isOk() const; + bool succeeded() const; + ResultWas::OfType getResultType() const; + bool hasExpression() const; + bool hasMessage() const; + std::string getExpression() const; + std::string getExpressionInMacro() const; + bool hasExpandedExpression() const; + std::string getExpandedExpression() const; + std::string getMessage() const; + SourceLineInfo getSourceInfo() const; + StringRef getTestMacroName() const; + + //protected: + AssertionInfo m_info; + AssertionResultData m_resultData; + }; + +} // end namespace Catch + +// end catch_assertionresult.h +// start catch_option.hpp + +namespace Catch { + + // An optional type + template<typename T> + class Option { + public: + Option() : nullableValue( nullptr ) {} + Option( T const& _value ) + : nullableValue( new( storage ) T( _value ) ) + {} + Option( Option const& _other ) + : nullableValue( _other ? new( storage ) T( *_other ) : nullptr ) + {} + + ~Option() { + reset(); + } + + Option& operator= ( Option const& _other ) { + if( &_other != this ) { + reset(); + if( _other ) + nullableValue = new( storage ) T( *_other ); + } + return *this; + } + Option& operator = ( T const& _value ) { + reset(); + nullableValue = new( storage ) T( _value ); + return *this; + } + + void reset() { + if( nullableValue ) + nullableValue->~T(); + nullableValue = nullptr; + } + + T& operator*() { return *nullableValue; } + T const& operator*() const { return *nullableValue; } + T* operator->() { return nullableValue; } + const T* operator->() const { return nullableValue; } + + T valueOr( T const& defaultValue ) const { + return nullableValue ? *nullableValue : defaultValue; + } + + bool some() const { return nullableValue != nullptr; } + bool none() const { return nullableValue == nullptr; } + + bool operator !() const { return nullableValue == nullptr; } + explicit operator bool() const { + return some(); + } + + private: + T *nullableValue; + alignas(alignof(T)) char storage[sizeof(T)]; + }; + +} // end namespace Catch + +// end catch_option.hpp +#include <string> +#include <iosfwd> +#include <map> +#include <set> +#include <memory> + +namespace Catch { + + struct ReporterConfig { + explicit ReporterConfig( IConfigPtr const& _fullConfig ); + + ReporterConfig( IConfigPtr const& _fullConfig, std::ostream& _stream ); + + std::ostream& stream() const; + IConfigPtr fullConfig() const; + + private: + std::ostream* m_stream; + IConfigPtr m_fullConfig; + }; + + struct ReporterPreferences { + bool shouldRedirectStdOut = false; + }; + + template<typename T> + struct LazyStat : Option<T> { + LazyStat& operator=( T const& _value ) { + Option<T>::operator=( _value ); + used = false; + return *this; + } + void reset() { + Option<T>::reset(); + used = false; + } + bool used = false; + }; + + struct TestRunInfo { + TestRunInfo( std::string const& _name ); + std::string name; + }; + struct GroupInfo { + GroupInfo( std::string const& _name, + std::size_t _groupIndex, + std::size_t _groupsCount ); + + std::string name; + std::size_t groupIndex; + std::size_t groupsCounts; + }; + + struct AssertionStats { + AssertionStats( AssertionResult const& _assertionResult, + std::vector<MessageInfo> const& _infoMessages, + Totals const& _totals ); + + AssertionStats( AssertionStats const& ) = default; + AssertionStats( AssertionStats && ) = default; + AssertionStats& operator = ( AssertionStats const& ) = default; + AssertionStats& operator = ( AssertionStats && ) = default; + virtual ~AssertionStats(); + + AssertionResult assertionResult; + std::vector<MessageInfo> infoMessages; + Totals totals; + }; + + struct SectionStats { + SectionStats( SectionInfo const& _sectionInfo, + Counts const& _assertions, + double _durationInSeconds, + bool _missingAssertions ); + SectionStats( SectionStats const& ) = default; + SectionStats( SectionStats && ) = default; + SectionStats& operator = ( SectionStats const& ) = default; + SectionStats& operator = ( SectionStats && ) = default; + virtual ~SectionStats(); + + SectionInfo sectionInfo; + Counts assertions; + double durationInSeconds; + bool missingAssertions; + }; + + struct TestCaseStats { + TestCaseStats( TestCaseInfo const& _testInfo, + Totals const& _totals, + std::string const& _stdOut, + std::string const& _stdErr, + bool _aborting ); + + TestCaseStats( TestCaseStats const& ) = default; + TestCaseStats( TestCaseStats && ) = default; + TestCaseStats& operator = ( TestCaseStats const& ) = default; + TestCaseStats& operator = ( TestCaseStats && ) = default; + virtual ~TestCaseStats(); + + TestCaseInfo testInfo; + Totals totals; + std::string stdOut; + std::string stdErr; + bool aborting; + }; + + struct TestGroupStats { + TestGroupStats( GroupInfo const& _groupInfo, + Totals const& _totals, + bool _aborting ); + TestGroupStats( GroupInfo const& _groupInfo ); + + TestGroupStats( TestGroupStats const& ) = default; + TestGroupStats( TestGroupStats && ) = default; + TestGroupStats& operator = ( TestGroupStats const& ) = default; + TestGroupStats& operator = ( TestGroupStats && ) = default; + virtual ~TestGroupStats(); + + GroupInfo groupInfo; + Totals totals; + bool aborting; + }; + + struct TestRunStats { + TestRunStats( TestRunInfo const& _runInfo, + Totals const& _totals, + bool _aborting ); + + TestRunStats( TestRunStats const& ) = default; + TestRunStats( TestRunStats && ) = default; + TestRunStats& operator = ( TestRunStats const& ) = default; + TestRunStats& operator = ( TestRunStats && ) = default; + virtual ~TestRunStats(); + + TestRunInfo runInfo; + Totals totals; + bool aborting; + }; + + struct BenchmarkInfo { + std::string name; + }; + struct BenchmarkStats { + BenchmarkInfo info; + std::size_t iterations; + uint64_t elapsedTimeInNanoseconds; + }; + + struct IStreamingReporter { + virtual ~IStreamingReporter() = default; + + // Implementing class must also provide the following static methods: + // static std::string getDescription(); + // static std::set<Verbosity> getSupportedVerbosities() + + virtual ReporterPreferences getPreferences() const = 0; + + virtual void noMatchingTestCases( std::string const& spec ) = 0; + + virtual void testRunStarting( TestRunInfo const& testRunInfo ) = 0; + virtual void testGroupStarting( GroupInfo const& groupInfo ) = 0; + + virtual void testCaseStarting( TestCaseInfo const& testInfo ) = 0; + virtual void sectionStarting( SectionInfo const& sectionInfo ) = 0; + + // *** experimental *** + virtual void benchmarkStarting( BenchmarkInfo const& ) {} + + virtual void assertionStarting( AssertionInfo const& assertionInfo ) = 0; + + // The return value indicates if the messages buffer should be cleared: + virtual bool assertionEnded( AssertionStats const& assertionStats ) = 0; + + // *** experimental *** + virtual void benchmarkEnded( BenchmarkStats const& ) {} + + virtual void sectionEnded( SectionStats const& sectionStats ) = 0; + virtual void testCaseEnded( TestCaseStats const& testCaseStats ) = 0; + virtual void testGroupEnded( TestGroupStats const& testGroupStats ) = 0; + virtual void testRunEnded( TestRunStats const& testRunStats ) = 0; + + virtual void skipTest( TestCaseInfo const& testInfo ) = 0; + + // Default empty implementation provided + virtual void fatalErrorEncountered( StringRef name ); + + virtual bool isMulti() const; + }; + using IStreamingReporterPtr = std::unique_ptr<IStreamingReporter>; + + struct IReporterFactory { + virtual ~IReporterFactory(); + virtual IStreamingReporterPtr create( ReporterConfig const& config ) const = 0; + virtual std::string getDescription() const = 0; + }; + using IReporterFactoryPtr = std::shared_ptr<IReporterFactory>; + + struct IReporterRegistry { + using FactoryMap = std::map<std::string, IReporterFactoryPtr>; + using Listeners = std::vector<IReporterFactoryPtr>; + + virtual ~IReporterRegistry(); + virtual IStreamingReporterPtr create( std::string const& name, IConfigPtr const& config ) const = 0; + virtual FactoryMap const& getFactories() const = 0; + virtual Listeners const& getListeners() const = 0; + }; + + void addReporter( IStreamingReporterPtr& existingReporter, IStreamingReporterPtr&& additionalReporter ); + +} // end namespace Catch + +// end catch_interfaces_reporter.h +#include <algorithm> +#include <cstring> +#include <cfloat> +#include <cstdio> +#include <assert.h> +#include <memory> +#include <ostream> + +namespace Catch { + void prepareExpandedExpression(AssertionResult& result); + + // Returns double formatted as %.3f (format expected on output) + std::string getFormattedDuration( double duration ); + + template<typename DerivedT> + struct StreamingReporterBase : IStreamingReporter { + + StreamingReporterBase( ReporterConfig const& _config ) + : m_config( _config.fullConfig() ), + stream( _config.stream() ) + { + m_reporterPrefs.shouldRedirectStdOut = false; + if( !DerivedT::getSupportedVerbosities().count( m_config->verbosity() ) ) + throw std::domain_error( "Verbosity level not supported by this reporter" ); + } + + ReporterPreferences getPreferences() const override { + return m_reporterPrefs; + } + + static std::set<Verbosity> getSupportedVerbosities() { + return { Verbosity::Normal }; + } + + ~StreamingReporterBase() override = default; + + void noMatchingTestCases(std::string const&) override {} + + void testRunStarting(TestRunInfo const& _testRunInfo) override { + currentTestRunInfo = _testRunInfo; + } + void testGroupStarting(GroupInfo const& _groupInfo) override { + currentGroupInfo = _groupInfo; + } + + void testCaseStarting(TestCaseInfo const& _testInfo) override { + currentTestCaseInfo = _testInfo; + } + void sectionStarting(SectionInfo const& _sectionInfo) override { + m_sectionStack.push_back(_sectionInfo); + } + + void sectionEnded(SectionStats const& /* _sectionStats */) override { + m_sectionStack.pop_back(); + } + void testCaseEnded(TestCaseStats const& /* _testCaseStats */) override { + currentTestCaseInfo.reset(); + } + void testGroupEnded(TestGroupStats const& /* _testGroupStats */) override { + currentGroupInfo.reset(); + } + void testRunEnded(TestRunStats const& /* _testRunStats */) override { + currentTestCaseInfo.reset(); + currentGroupInfo.reset(); + currentTestRunInfo.reset(); + } + + void skipTest(TestCaseInfo const&) override { + // Don't do anything with this by default. + // It can optionally be overridden in the derived class. + } + + IConfigPtr m_config; + std::ostream& stream; + + LazyStat<TestRunInfo> currentTestRunInfo; + LazyStat<GroupInfo> currentGroupInfo; + LazyStat<TestCaseInfo> currentTestCaseInfo; + + std::vector<SectionInfo> m_sectionStack; + ReporterPreferences m_reporterPrefs; + }; + + template<typename DerivedT> + struct CumulativeReporterBase : IStreamingReporter { + template<typename T, typename ChildNodeT> + struct Node { + explicit Node( T const& _value ) : value( _value ) {} + virtual ~Node() {} + + using ChildNodes = std::vector<std::shared_ptr<ChildNodeT>>; + T value; + ChildNodes children; + }; + struct SectionNode { + explicit SectionNode(SectionStats const& _stats) : stats(_stats) {} + virtual ~SectionNode() = default; + + bool operator == (SectionNode const& other) const { + return stats.sectionInfo.lineInfo == other.stats.sectionInfo.lineInfo; + } + bool operator == (std::shared_ptr<SectionNode> const& other) const { + return operator==(*other); + } + + SectionStats stats; + using ChildSections = std::vector<std::shared_ptr<SectionNode>>; + using Assertions = std::vector<AssertionStats>; + ChildSections childSections; + Assertions assertions; + std::string stdOut; + std::string stdErr; + }; + + struct BySectionInfo { + BySectionInfo( SectionInfo const& other ) : m_other( other ) {} + BySectionInfo( BySectionInfo const& other ) : m_other( other.m_other ) {} + bool operator() (std::shared_ptr<SectionNode> const& node) const { + return ((node->stats.sectionInfo.name == m_other.name) && + (node->stats.sectionInfo.lineInfo == m_other.lineInfo)); + } + void operator=(BySectionInfo const&) = delete; + + private: + SectionInfo const& m_other; + }; + + using TestCaseNode = Node<TestCaseStats, SectionNode>; + using TestGroupNode = Node<TestGroupStats, TestCaseNode>; + using TestRunNode = Node<TestRunStats, TestGroupNode>; + + CumulativeReporterBase( ReporterConfig const& _config ) + : m_config( _config.fullConfig() ), + stream( _config.stream() ) + { + m_reporterPrefs.shouldRedirectStdOut = false; + if( !DerivedT::getSupportedVerbosities().count( m_config->verbosity() ) ) + throw std::domain_error( "Verbosity level not supported by this reporter" ); + } + ~CumulativeReporterBase() override = default; + + ReporterPreferences getPreferences() const override { + return m_reporterPrefs; + } + + static std::set<Verbosity> getSupportedVerbosities() { + return { Verbosity::Normal }; + } + + void testRunStarting( TestRunInfo const& ) override {} + void testGroupStarting( GroupInfo const& ) override {} + + void testCaseStarting( TestCaseInfo const& ) override {} + + void sectionStarting( SectionInfo const& sectionInfo ) override { + SectionStats incompleteStats( sectionInfo, Counts(), 0, false ); + std::shared_ptr<SectionNode> node; + if( m_sectionStack.empty() ) { + if( !m_rootSection ) + m_rootSection = std::make_shared<SectionNode>( incompleteStats ); + node = m_rootSection; + } + else { + SectionNode& parentNode = *m_sectionStack.back(); + auto it = + std::find_if( parentNode.childSections.begin(), + parentNode.childSections.end(), + BySectionInfo( sectionInfo ) ); + if( it == parentNode.childSections.end() ) { + node = std::make_shared<SectionNode>( incompleteStats ); + parentNode.childSections.push_back( node ); + } + else + node = *it; + } + m_sectionStack.push_back( node ); + m_deepestSection = std::move(node); + } + + void assertionStarting(AssertionInfo const&) override {} + + bool assertionEnded(AssertionStats const& assertionStats) override { + assert(!m_sectionStack.empty()); + // AssertionResult holds a pointer to a temporary DecomposedExpression, + // which getExpandedExpression() calls to build the expression string. + // Our section stack copy of the assertionResult will likely outlive the + // temporary, so it must be expanded or discarded now to avoid calling + // a destroyed object later. + prepareExpandedExpression(const_cast<AssertionResult&>( assertionStats.assertionResult ) ); + SectionNode& sectionNode = *m_sectionStack.back(); + sectionNode.assertions.push_back(assertionStats); + return true; + } + void sectionEnded(SectionStats const& sectionStats) override { + assert(!m_sectionStack.empty()); + SectionNode& node = *m_sectionStack.back(); + node.stats = sectionStats; + m_sectionStack.pop_back(); + } + void testCaseEnded(TestCaseStats const& testCaseStats) override { + auto node = std::make_shared<TestCaseNode>(testCaseStats); + assert(m_sectionStack.size() == 0); + node->children.push_back(m_rootSection); + m_testCases.push_back(node); + m_rootSection.reset(); + + assert(m_deepestSection); + m_deepestSection->stdOut = testCaseStats.stdOut; + m_deepestSection->stdErr = testCaseStats.stdErr; + } + void testGroupEnded(TestGroupStats const& testGroupStats) override { + auto node = std::make_shared<TestGroupNode>(testGroupStats); + node->children.swap(m_testCases); + m_testGroups.push_back(node); + } + void testRunEnded(TestRunStats const& testRunStats) override { + auto node = std::make_shared<TestRunNode>(testRunStats); + node->children.swap(m_testGroups); + m_testRuns.push_back(node); + testRunEndedCumulative(); + } + virtual void testRunEndedCumulative() = 0; + + void skipTest(TestCaseInfo const&) override {} + + IConfigPtr m_config; + std::ostream& stream; + std::vector<AssertionStats> m_assertions; + std::vector<std::vector<std::shared_ptr<SectionNode>>> m_sections; + std::vector<std::shared_ptr<TestCaseNode>> m_testCases; + std::vector<std::shared_ptr<TestGroupNode>> m_testGroups; + + std::vector<std::shared_ptr<TestRunNode>> m_testRuns; + + std::shared_ptr<SectionNode> m_rootSection; + std::shared_ptr<SectionNode> m_deepestSection; + std::vector<std::shared_ptr<SectionNode>> m_sectionStack; + ReporterPreferences m_reporterPrefs; + }; + + template<char C> + char const* getLineOfChars() { + static char line[CATCH_CONFIG_CONSOLE_WIDTH] = {0}; + if( !*line ) { + std::memset( line, C, CATCH_CONFIG_CONSOLE_WIDTH-1 ); + line[CATCH_CONFIG_CONSOLE_WIDTH-1] = 0; + } + return line; + } + + struct TestEventListenerBase : StreamingReporterBase<TestEventListenerBase> { + TestEventListenerBase( ReporterConfig const& _config ); + + void assertionStarting(AssertionInfo const&) override; + bool assertionEnded(AssertionStats const&) override; + }; + +} // end namespace Catch + +// end catch_reporter_bases.hpp +// start catch_console_colour.h + +namespace Catch { + + struct Colour { + enum Code { + None = 0, + + White, + Red, + Green, + Blue, + Cyan, + Yellow, + Grey, + + Bright = 0x10, + + BrightRed = Bright | Red, + BrightGreen = Bright | Green, + LightGrey = Bright | Grey, + BrightWhite = Bright | White, + BrightYellow = Bright | Yellow, + + // By intention + FileName = LightGrey, + Warning = BrightYellow, + ResultError = BrightRed, + ResultSuccess = BrightGreen, + ResultExpectedFailure = Warning, + + Error = BrightRed, + Success = Green, + + OriginalExpression = Cyan, + ReconstructedExpression = BrightYellow, + + SecondaryText = LightGrey, + Headers = White + }; + + // Use constructed object for RAII guard + Colour( Code _colourCode ); + Colour( Colour&& other ) noexcept; + Colour& operator=( Colour&& other ) noexcept; + ~Colour(); + + // Use static method for one-shot changes + static void use( Code _colourCode ); + + private: + bool m_moved = false; + }; + + std::ostream& operator << ( std::ostream& os, Colour const& ); + +} // end namespace Catch + +// end catch_console_colour.h +// start catch_reporter_registrars.hpp + + +namespace Catch { + + template<typename T> + class ReporterRegistrar { + + class ReporterFactory : public IReporterFactory { + + virtual IStreamingReporterPtr create( ReporterConfig const& config ) const override { + return std::unique_ptr<T>( new T( config ) ); + } + + virtual std::string getDescription() const override { + return T::getDescription(); + } + }; + + public: + + explicit ReporterRegistrar( std::string const& name ) { + getMutableRegistryHub().registerReporter( name, std::make_shared<ReporterFactory>() ); + } + }; + + template<typename T> + class ListenerRegistrar { + + class ListenerFactory : public IReporterFactory { + + virtual IStreamingReporterPtr create( ReporterConfig const& config ) const override { + return std::unique_ptr<T>( new T( config ) ); + } + virtual std::string getDescription() const override { + return std::string(); + } + }; + + public: + + ListenerRegistrar() { + getMutableRegistryHub().registerListener( std::make_shared<ListenerFactory>() ); + } + }; +} + +#if !defined(CATCH_CONFIG_DISABLE) + +#define CATCH_REGISTER_REPORTER( name, reporterType ) \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ Catch::ReporterRegistrar<reporterType> catch_internal_RegistrarFor##reporterType( name ); } \ + CATCH_INTERNAL_UNSUPPRESS_GLOBALS_WARNINGS + +#define CATCH_REGISTER_LISTENER( listenerType ) \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ Catch::ListenerRegistrar<listenerType> catch_internal_RegistrarFor##listenerType; } \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS +#else // CATCH_CONFIG_DISABLE + +#define CATCH_REGISTER_REPORTER(name, reporterType) +#define CATCH_REGISTER_LISTENER(listenerType) + +#endif // CATCH_CONFIG_DISABLE + +// end catch_reporter_registrars.hpp +// Allow users to base their work off existing reporters +// start catch_reporter_compact.h + +namespace Catch { + + struct CompactReporter : StreamingReporterBase<CompactReporter> { + + using StreamingReporterBase::StreamingReporterBase; + + ~CompactReporter() override; + + static std::string getDescription(); + + ReporterPreferences getPreferences() const override; + + void noMatchingTestCases(std::string const& spec) override; + + void assertionStarting(AssertionInfo const&) override; + + bool assertionEnded(AssertionStats const& _assertionStats) override; + + void sectionEnded(SectionStats const& _sectionStats) override; + + void testRunEnded(TestRunStats const& _testRunStats) override; + + }; + +} // end namespace Catch + +// end catch_reporter_compact.h +// start catch_reporter_console.h + +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable:4061) // Not all labels are EXPLICITLY handled in switch + // Note that 4062 (not all labels are handled + // and default is missing) is enabled +#endif + +namespace Catch { + // Fwd decls + struct SummaryColumn; + class TablePrinter; + + struct ConsoleReporter : StreamingReporterBase<ConsoleReporter> { + std::unique_ptr<TablePrinter> m_tablePrinter; + + ConsoleReporter(ReporterConfig const& config); + ~ConsoleReporter() override; + static std::string getDescription(); + + void noMatchingTestCases(std::string const& spec) override; + + void assertionStarting(AssertionInfo const&) override; + + bool assertionEnded(AssertionStats const& _assertionStats) override; + + void sectionStarting(SectionInfo const& _sectionInfo) override; + void sectionEnded(SectionStats const& _sectionStats) override; + + void benchmarkStarting(BenchmarkInfo const& info) override; + void benchmarkEnded(BenchmarkStats const& stats) override; + + void testCaseEnded(TestCaseStats const& _testCaseStats) override; + void testGroupEnded(TestGroupStats const& _testGroupStats) override; + void testRunEnded(TestRunStats const& _testRunStats) override; + + private: + + void lazyPrint(); + + void lazyPrintWithoutClosingBenchmarkTable(); + void lazyPrintRunInfo(); + void lazyPrintGroupInfo(); + void printTestCaseAndSectionHeader(); + + void printClosedHeader(std::string const& _name); + void printOpenHeader(std::string const& _name); + + // if string has a : in first line will set indent to follow it on + // subsequent lines + void printHeaderString(std::string const& _string, std::size_t indent = 0); + + void printTotals(Totals const& totals); + void printSummaryRow(std::string const& label, std::vector<SummaryColumn> const& cols, std::size_t row); + + void printTotalsDivider(Totals const& totals); + void printSummaryDivider(); + + private: + bool m_headerPrinted = false; + }; + +} // end namespace Catch + +#if defined(_MSC_VER) +#pragma warning(pop) +#endif + +// end catch_reporter_console.h +// start catch_reporter_junit.h + +// start catch_xmlwriter.h + +#include <vector> + +namespace Catch { + + class XmlEncode { + public: + enum ForWhat { ForTextNodes, ForAttributes }; + + XmlEncode( std::string const& str, ForWhat forWhat = ForTextNodes ); + + void encodeTo( std::ostream& os ) const; + + friend std::ostream& operator << ( std::ostream& os, XmlEncode const& xmlEncode ); + + private: + std::string m_str; + ForWhat m_forWhat; + }; + + class XmlWriter { + public: + + class ScopedElement { + public: + ScopedElement( XmlWriter* writer ); + + ScopedElement( ScopedElement&& other ) noexcept; + ScopedElement& operator=( ScopedElement&& other ) noexcept; + + ~ScopedElement(); + + ScopedElement& writeText( std::string const& text, bool indent = true ); + + template<typename T> + ScopedElement& writeAttribute( std::string const& name, T const& attribute ) { + m_writer->writeAttribute( name, attribute ); + return *this; + } + + private: + mutable XmlWriter* m_writer = nullptr; + }; + + XmlWriter( std::ostream& os = Catch::cout() ); + ~XmlWriter(); + + XmlWriter( XmlWriter const& ) = delete; + XmlWriter& operator=( XmlWriter const& ) = delete; + + XmlWriter& startElement( std::string const& name ); + + ScopedElement scopedElement( std::string const& name ); + + XmlWriter& endElement(); + + XmlWriter& writeAttribute( std::string const& name, std::string const& attribute ); + + XmlWriter& writeAttribute( std::string const& name, bool attribute ); + + template<typename T> + XmlWriter& writeAttribute( std::string const& name, T const& attribute ) { + ReusableStringStream rss; + rss << attribute; + return writeAttribute( name, rss.str() ); + } + + XmlWriter& writeText( std::string const& text, bool indent = true ); + + XmlWriter& writeComment( std::string const& text ); + + void writeStylesheetRef( std::string const& url ); + + XmlWriter& writeBlankLine(); + + void ensureTagClosed(); + + private: + + void writeDeclaration(); + + void newlineIfNecessary(); + + bool m_tagIsOpen = false; + bool m_needsNewline = false; + std::vector<std::string> m_tags; + std::string m_indent; + std::ostream& m_os; + }; + +} + +// end catch_xmlwriter.h +namespace Catch { + + class JunitReporter : public CumulativeReporterBase<JunitReporter> { + public: + JunitReporter(ReporterConfig const& _config); + + ~JunitReporter() override; + + static std::string getDescription(); + + void noMatchingTestCases(std::string const& /*spec*/) override; + + void testRunStarting(TestRunInfo const& runInfo) override; + + void testGroupStarting(GroupInfo const& groupInfo) override; + + void testCaseStarting(TestCaseInfo const& testCaseInfo) override; + bool assertionEnded(AssertionStats const& assertionStats) override; + + void testCaseEnded(TestCaseStats const& testCaseStats) override; + + void testGroupEnded(TestGroupStats const& testGroupStats) override; + + void testRunEndedCumulative() override; + + void writeGroup(TestGroupNode const& groupNode, double suiteTime); + + void writeTestCase(TestCaseNode const& testCaseNode); + + void writeSection(std::string const& className, + std::string const& rootName, + SectionNode const& sectionNode); + + void writeAssertions(SectionNode const& sectionNode); + void writeAssertion(AssertionStats const& stats); + + XmlWriter xml; + Timer suiteTimer; + std::string stdOutForSuite; + std::string stdErrForSuite; + unsigned int unexpectedExceptions = 0; + bool m_okToFail = false; + }; + +} // end namespace Catch + +// end catch_reporter_junit.h +// start catch_reporter_xml.h + +namespace Catch { + class XmlReporter : public StreamingReporterBase<XmlReporter> { + public: + XmlReporter(ReporterConfig const& _config); + + ~XmlReporter() override; + + static std::string getDescription(); + + virtual std::string getStylesheetRef() const; + + void writeSourceInfo(SourceLineInfo const& sourceInfo); + + public: // StreamingReporterBase + + void noMatchingTestCases(std::string const& s) override; + + void testRunStarting(TestRunInfo const& testInfo) override; + + void testGroupStarting(GroupInfo const& groupInfo) override; + + void testCaseStarting(TestCaseInfo const& testInfo) override; + + void sectionStarting(SectionInfo const& sectionInfo) override; + + void assertionStarting(AssertionInfo const&) override; + + bool assertionEnded(AssertionStats const& assertionStats) override; + + void sectionEnded(SectionStats const& sectionStats) override; + + void testCaseEnded(TestCaseStats const& testCaseStats) override; + + void testGroupEnded(TestGroupStats const& testGroupStats) override; + + void testRunEnded(TestRunStats const& testRunStats) override; + + private: + Timer m_testCaseTimer; + XmlWriter m_xml; + int m_sectionDepth = 0; + }; + +} // end namespace Catch + +// end catch_reporter_xml.h + +// end catch_external_interfaces.h +#endif + +#endif // ! CATCH_CONFIG_IMPL_ONLY + +#ifdef CATCH_IMPL +// start catch_impl.hpp + +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wweak-vtables" +#endif + +// Keep these here for external reporters +// start catch_test_case_tracker.h + +#include <string> +#include <vector> +#include <memory> + +namespace Catch { +namespace TestCaseTracking { + + struct NameAndLocation { + std::string name; + SourceLineInfo location; + + NameAndLocation( std::string const& _name, SourceLineInfo const& _location ); + }; + + struct ITracker; + + using ITrackerPtr = std::shared_ptr<ITracker>; + + struct ITracker { + virtual ~ITracker(); + + // static queries + virtual NameAndLocation const& nameAndLocation() const = 0; + + // dynamic queries + virtual bool isComplete() const = 0; // Successfully completed or failed + virtual bool isSuccessfullyCompleted() const = 0; + virtual bool isOpen() const = 0; // Started but not complete + virtual bool hasChildren() const = 0; + + virtual ITracker& parent() = 0; + + // actions + virtual void close() = 0; // Successfully complete + virtual void fail() = 0; + virtual void markAsNeedingAnotherRun() = 0; + + virtual void addChild( ITrackerPtr const& child ) = 0; + virtual ITrackerPtr findChild( NameAndLocation const& nameAndLocation ) = 0; + virtual void openChild() = 0; + + // Debug/ checking + virtual bool isSectionTracker() const = 0; + virtual bool isIndexTracker() const = 0; + }; + + class TrackerContext { + + enum RunState { + NotStarted, + Executing, + CompletedCycle + }; + + ITrackerPtr m_rootTracker; + ITracker* m_currentTracker = nullptr; + RunState m_runState = NotStarted; + + public: + + static TrackerContext& instance(); + + ITracker& startRun(); + void endRun(); + + void startCycle(); + void completeCycle(); + + bool completedCycle() const; + ITracker& currentTracker(); + void setCurrentTracker( ITracker* tracker ); + }; + + class TrackerBase : public ITracker { + protected: + enum CycleState { + NotStarted, + Executing, + ExecutingChildren, + NeedsAnotherRun, + CompletedSuccessfully, + Failed + }; + + class TrackerHasName { + NameAndLocation m_nameAndLocation; + public: + TrackerHasName( NameAndLocation const& nameAndLocation ); + bool operator ()( ITrackerPtr const& tracker ) const; + }; + + using Children = std::vector<ITrackerPtr>; + NameAndLocation m_nameAndLocation; + TrackerContext& m_ctx; + ITracker* m_parent; + Children m_children; + CycleState m_runState = NotStarted; + + public: + TrackerBase( NameAndLocation const& nameAndLocation, TrackerContext& ctx, ITracker* parent ); + + NameAndLocation const& nameAndLocation() const override; + bool isComplete() const override; + bool isSuccessfullyCompleted() const override; + bool isOpen() const override; + bool hasChildren() const override; + + void addChild( ITrackerPtr const& child ) override; + + ITrackerPtr findChild( NameAndLocation const& nameAndLocation ) override; + ITracker& parent() override; + + void openChild() override; + + bool isSectionTracker() const override; + bool isIndexTracker() const override; + + void open(); + + void close() override; + void fail() override; + void markAsNeedingAnotherRun() override; + + private: + void moveToParent(); + void moveToThis(); + }; + + class SectionTracker : public TrackerBase { + std::vector<std::string> m_filters; + public: + SectionTracker( NameAndLocation const& nameAndLocation, TrackerContext& ctx, ITracker* parent ); + + bool isSectionTracker() const override; + + static SectionTracker& acquire( TrackerContext& ctx, NameAndLocation const& nameAndLocation ); + + void tryOpen(); + + void addInitialFilters( std::vector<std::string> const& filters ); + void addNextFilters( std::vector<std::string> const& filters ); + }; + + class IndexTracker : public TrackerBase { + int m_size; + int m_index = -1; + public: + IndexTracker( NameAndLocation const& nameAndLocation, TrackerContext& ctx, ITracker* parent, int size ); + + bool isIndexTracker() const override; + void close() override; + + static IndexTracker& acquire( TrackerContext& ctx, NameAndLocation const& nameAndLocation, int size ); + + int index() const; + + void moveNext(); + }; + +} // namespace TestCaseTracking + +using TestCaseTracking::ITracker; +using TestCaseTracking::TrackerContext; +using TestCaseTracking::SectionTracker; +using TestCaseTracking::IndexTracker; + +} // namespace Catch + +// end catch_test_case_tracker.h + +// start catch_leak_detector.h + +namespace Catch { + + struct LeakDetector { + LeakDetector(); + }; + +} +// end catch_leak_detector.h +// Cpp files will be included in the single-header file here +// start catch_approx.cpp + +#include <cmath> +#include <limits> + +namespace { + +// Performs equivalent check of std::fabs(lhs - rhs) <= margin +// But without the subtraction to allow for INFINITY in comparison +bool marginComparison(double lhs, double rhs, double margin) { + return (lhs + margin >= rhs) && (rhs + margin >= lhs); +} + +} + +namespace Catch { +namespace Detail { + + Approx::Approx ( double value ) + : m_epsilon( std::numeric_limits<float>::epsilon()*100 ), + m_margin( 0.0 ), + m_scale( 0.0 ), + m_value( value ) + {} + + Approx Approx::custom() { + return Approx( 0 ); + } + + std::string Approx::toString() const { + ReusableStringStream rss; + rss << "Approx( " << ::Catch::Detail::stringify( m_value ) << " )"; + return rss.str(); + } + + bool Approx::equalityComparisonImpl(const double other) const { + // First try with fixed margin, then compute margin based on epsilon, scale and Approx's value + // Thanks to Richard Harris for his help refining the scaled margin value + return marginComparison(m_value, other, m_margin) || marginComparison(m_value, other, m_epsilon * (m_scale + std::fabs(m_value))); + } + +} // end namespace Detail + +std::string StringMaker<Catch::Detail::Approx>::convert(Catch::Detail::Approx const& value) { + return value.toString(); +} + +} // end namespace Catch +// end catch_approx.cpp +// start catch_assertionhandler.cpp + +// start catch_context.h + +#include <memory> + +namespace Catch { + + struct IResultCapture; + struct IRunner; + struct IConfig; + struct IMutableContext; + + using IConfigPtr = std::shared_ptr<IConfig const>; + + struct IContext + { + virtual ~IContext(); + + virtual IResultCapture* getResultCapture() = 0; + virtual IRunner* getRunner() = 0; + virtual IConfigPtr const& getConfig() const = 0; + }; + + struct IMutableContext : IContext + { + virtual ~IMutableContext(); + virtual void setResultCapture( IResultCapture* resultCapture ) = 0; + virtual void setRunner( IRunner* runner ) = 0; + virtual void setConfig( IConfigPtr const& config ) = 0; + + private: + static IMutableContext *currentContext; + friend IMutableContext& getCurrentMutableContext(); + friend void cleanUpContext(); + static void createContext(); + }; + + inline IMutableContext& getCurrentMutableContext() + { + if( !IMutableContext::currentContext ) + IMutableContext::createContext(); + return *IMutableContext::currentContext; + } + + inline IContext& getCurrentContext() + { + return getCurrentMutableContext(); + } + + void cleanUpContext(); +} + +// end catch_context.h +// start catch_debugger.h + +namespace Catch { + bool isDebuggerActive(); +} + +#ifdef CATCH_PLATFORM_MAC + + #define CATCH_TRAP() __asm__("int $3\n" : : ) /* NOLINT */ + +#elif defined(CATCH_PLATFORM_LINUX) + // If we can use inline assembler, do it because this allows us to break + // directly at the location of the failing check instead of breaking inside + // raise() called from it, i.e. one stack frame below. + #if defined(__GNUC__) && (defined(__i386) || defined(__x86_64)) + #define CATCH_TRAP() asm volatile ("int $3") /* NOLINT */ + #else // Fall back to the generic way. + #include <signal.h> + + #define CATCH_TRAP() raise(SIGTRAP) + #endif +#elif defined(_MSC_VER) + #define CATCH_TRAP() __debugbreak() +#elif defined(__MINGW32__) + extern "C" __declspec(dllimport) void __stdcall DebugBreak(); + #define CATCH_TRAP() DebugBreak() +#endif + +#ifdef CATCH_TRAP + #define CATCH_BREAK_INTO_DEBUGGER() if( Catch::isDebuggerActive() ) { CATCH_TRAP(); } +#else + namespace Catch { + inline void doNothing() {} + } + #define CATCH_BREAK_INTO_DEBUGGER() Catch::doNothing() +#endif + +// end catch_debugger.h +// start catch_run_context.h + +// start catch_fatal_condition.h + +#include <string> + +#if defined ( CATCH_PLATFORM_WINDOWS ) ///////////////////////////////////////// +// start catch_windows_h_proxy.h + + +#if defined(CATCH_PLATFORM_WINDOWS) + +#if !defined(NOMINMAX) && !defined(CATCH_CONFIG_NO_NOMINMAX) +# define CATCH_DEFINED_NOMINMAX +# define NOMINMAX +#endif +#if !defined(WIN32_LEAN_AND_MEAN) && !defined(CATCH_CONFIG_NO_WIN32_LEAN_AND_MEAN) +# define CATCH_DEFINED_WIN32_LEAN_AND_MEAN +# define WIN32_LEAN_AND_MEAN +#endif + +#ifdef __AFXDLL +#include <AfxWin.h> +#else +#include <windows.h> +#endif + +#ifdef CATCH_DEFINED_NOMINMAX +# undef NOMINMAX +#endif +#ifdef CATCH_DEFINED_WIN32_LEAN_AND_MEAN +# undef WIN32_LEAN_AND_MEAN +#endif + +#endif // defined(CATCH_PLATFORM_WINDOWS) + +// end catch_windows_h_proxy.h + +# if !defined ( CATCH_CONFIG_WINDOWS_SEH ) + +namespace Catch { + struct FatalConditionHandler { + void reset(); + }; +} + +# else // CATCH_CONFIG_WINDOWS_SEH is defined + +namespace Catch { + + struct FatalConditionHandler { + + static LONG CALLBACK handleVectoredException(PEXCEPTION_POINTERS ExceptionInfo); + FatalConditionHandler(); + static void reset(); + ~FatalConditionHandler(); + + private: + static bool isSet; + static ULONG guaranteeSize; + static PVOID exceptionHandlerHandle; + }; + +} // namespace Catch + +# endif // CATCH_CONFIG_WINDOWS_SEH + +#else // Not Windows - assumed to be POSIX compatible ////////////////////////// + +# if !defined(CATCH_CONFIG_POSIX_SIGNALS) + +namespace Catch { + struct FatalConditionHandler { + void reset(); + }; +} + +# else // CATCH_CONFIG_POSIX_SIGNALS is defined + +#include <signal.h> + +namespace Catch { + + struct FatalConditionHandler { + + static bool isSet; + static struct sigaction oldSigActions[];// [sizeof(signalDefs) / sizeof(SignalDefs)]; + static stack_t oldSigStack; + static char altStackMem[]; + + static void handleSignal( int sig ); + + FatalConditionHandler(); + ~FatalConditionHandler(); + static void reset(); + }; + +} // namespace Catch + +# endif // CATCH_CONFIG_POSIX_SIGNALS + +#endif // not Windows + +// end catch_fatal_condition.h +#include <string> + +namespace Catch { + + struct IMutableContext; + + /////////////////////////////////////////////////////////////////////////// + + class RunContext : public IResultCapture, public IRunner { + + public: + RunContext( RunContext const& ) = delete; + RunContext& operator =( RunContext const& ) = delete; + + explicit RunContext( IConfigPtr const& _config, IStreamingReporterPtr&& reporter ); + + ~RunContext() override; + + void testGroupStarting( std::string const& testSpec, std::size_t groupIndex, std::size_t groupsCount ); + void testGroupEnded( std::string const& testSpec, Totals const& totals, std::size_t groupIndex, std::size_t groupsCount ); + + Totals runTest(TestCase const& testCase); + + IConfigPtr config() const; + IStreamingReporter& reporter() const; + + public: // IResultCapture + + // Assertion handlers + void handleExpr + ( AssertionInfo const& info, + ITransientExpression const& expr, + AssertionReaction& reaction ) override; + void handleMessage + ( AssertionInfo const& info, + ResultWas::OfType resultType, + StringRef const& message, + AssertionReaction& reaction ) override; + void handleUnexpectedExceptionNotThrown + ( AssertionInfo const& info, + AssertionReaction& reaction ) override; + void handleUnexpectedInflightException + ( AssertionInfo const& info, + std::string const& message, + AssertionReaction& reaction ) override; + void handleIncomplete + ( AssertionInfo const& info ) override; + void handleNonExpr + ( AssertionInfo const &info, + ResultWas::OfType resultType, + AssertionReaction &reaction ) override; + + bool sectionStarted( SectionInfo const& sectionInfo, Counts& assertions ) override; + + void sectionEnded( SectionEndInfo const& endInfo ) override; + void sectionEndedEarly( SectionEndInfo const& endInfo ) override; + + void benchmarkStarting( BenchmarkInfo const& info ) override; + void benchmarkEnded( BenchmarkStats const& stats ) override; + + void pushScopedMessage( MessageInfo const& message ) override; + void popScopedMessage( MessageInfo const& message ) override; + + std::string getCurrentTestName() const override; + + const AssertionResult* getLastResult() const override; + + void exceptionEarlyReported() override; + + void handleFatalErrorCondition( StringRef message ) override; + + bool lastAssertionPassed() override; + + void assertionPassed() override; + + public: + // !TBD We need to do this another way! + bool aborting() const override; + + private: + + void runCurrentTest( std::string& redirectedCout, std::string& redirectedCerr ); + void invokeActiveTestCase(); + + void resetAssertionInfo(); + bool testForMissingAssertions( Counts& assertions ); + + void assertionEnded( AssertionResult const& result ); + void reportExpr + ( AssertionInfo const &info, + ResultWas::OfType resultType, + ITransientExpression const *expr, + bool negated ); + + void populateReaction( AssertionReaction& reaction ); + + private: + + void handleUnfinishedSections(); + + TestRunInfo m_runInfo; + IMutableContext& m_context; + TestCase const* m_activeTestCase = nullptr; + ITracker* m_testCaseTracker; + Option<AssertionResult> m_lastResult; + + IConfigPtr m_config; + Totals m_totals; + IStreamingReporterPtr m_reporter; + std::vector<MessageInfo> m_messages; + AssertionInfo m_lastAssertionInfo; + std::vector<SectionEndInfo> m_unfinishedSections; + std::vector<ITracker*> m_activeSections; + TrackerContext m_trackerContext; + bool m_lastAssertionPassed = false; + bool m_shouldReportUnexpected = true; + bool m_includeSuccessfulResults; + }; + +} // end namespace Catch + +// end catch_run_context.h +namespace Catch { + + auto operator <<( std::ostream& os, ITransientExpression const& expr ) -> std::ostream& { + expr.streamReconstructedExpression( os ); + return os; + } + + LazyExpression::LazyExpression( bool isNegated ) + : m_isNegated( isNegated ) + {} + + LazyExpression::LazyExpression( LazyExpression const& other ) : m_isNegated( other.m_isNegated ) {} + + LazyExpression::operator bool() const { + return m_transientExpression != nullptr; + } + + auto operator << ( std::ostream& os, LazyExpression const& lazyExpr ) -> std::ostream& { + if( lazyExpr.m_isNegated ) + os << "!"; + + if( lazyExpr ) { + if( lazyExpr.m_isNegated && lazyExpr.m_transientExpression->isBinaryExpression() ) + os << "(" << *lazyExpr.m_transientExpression << ")"; + else + os << *lazyExpr.m_transientExpression; + } + else { + os << "{** error - unchecked empty expression requested **}"; + } + return os; + } + + AssertionHandler::AssertionHandler + ( StringRef macroName, + SourceLineInfo const& lineInfo, + StringRef capturedExpression, + ResultDisposition::Flags resultDisposition ) + : m_assertionInfo{ macroName, lineInfo, capturedExpression, resultDisposition }, + m_resultCapture( getResultCapture() ) + {} + + void AssertionHandler::handleExpr( ITransientExpression const& expr ) { + m_resultCapture.handleExpr( m_assertionInfo, expr, m_reaction ); + } + void AssertionHandler::handleMessage(ResultWas::OfType resultType, StringRef const& message) { + m_resultCapture.handleMessage( m_assertionInfo, resultType, message, m_reaction ); + } + + auto AssertionHandler::allowThrows() const -> bool { + return getCurrentContext().getConfig()->allowThrows(); + } + + void AssertionHandler::complete() { + setCompleted(); + if( m_reaction.shouldDebugBreak ) { + + // If you find your debugger stopping you here then go one level up on the + // call-stack for the code that caused it (typically a failed assertion) + + // (To go back to the test and change execution, jump over the throw, next) + CATCH_BREAK_INTO_DEBUGGER(); + } + if( m_reaction.shouldThrow ) + throw Catch::TestFailureException(); + } + void AssertionHandler::setCompleted() { + m_completed = true; + } + + void AssertionHandler::handleUnexpectedInflightException() { + m_resultCapture.handleUnexpectedInflightException( m_assertionInfo, Catch::translateActiveException(), m_reaction ); + } + + void AssertionHandler::handleExceptionThrownAsExpected() { + m_resultCapture.handleNonExpr(m_assertionInfo, ResultWas::Ok, m_reaction); + } + void AssertionHandler::handleExceptionNotThrownAsExpected() { + m_resultCapture.handleNonExpr(m_assertionInfo, ResultWas::Ok, m_reaction); + } + + void AssertionHandler::handleUnexpectedExceptionNotThrown() { + m_resultCapture.handleUnexpectedExceptionNotThrown( m_assertionInfo, m_reaction ); + } + + void AssertionHandler::handleThrowingCallSkipped() { + m_resultCapture.handleNonExpr(m_assertionInfo, ResultWas::Ok, m_reaction); + } + + // This is the overload that takes a string and infers the Equals matcher from it + // The more general overload, that takes any string matcher, is in catch_capture_matchers.cpp + void handleExceptionMatchExpr( AssertionHandler& handler, std::string const& str, StringRef matcherString ) { + handleExceptionMatchExpr( handler, Matchers::Equals( str ), matcherString ); + } + +} // namespace Catch +// end catch_assertionhandler.cpp +// start catch_assertionresult.cpp + +namespace Catch { + AssertionResultData::AssertionResultData(ResultWas::OfType _resultType, LazyExpression const & _lazyExpression): + lazyExpression(_lazyExpression), + resultType(_resultType) {} + + std::string AssertionResultData::reconstructExpression() const { + + if( reconstructedExpression.empty() ) { + if( lazyExpression ) { + ReusableStringStream rss; + rss << lazyExpression; + reconstructedExpression = rss.str(); + } + } + return reconstructedExpression; + } + + AssertionResult::AssertionResult( AssertionInfo const& info, AssertionResultData const& data ) + : m_info( info ), + m_resultData( data ) + {} + + // Result was a success + bool AssertionResult::succeeded() const { + return Catch::isOk( m_resultData.resultType ); + } + + // Result was a success, or failure is suppressed + bool AssertionResult::isOk() const { + return Catch::isOk( m_resultData.resultType ) || shouldSuppressFailure( m_info.resultDisposition ); + } + + ResultWas::OfType AssertionResult::getResultType() const { + return m_resultData.resultType; + } + + bool AssertionResult::hasExpression() const { + return m_info.capturedExpression[0] != 0; + } + + bool AssertionResult::hasMessage() const { + return !m_resultData.message.empty(); + } + + std::string AssertionResult::getExpression() const { + if( isFalseTest( m_info.resultDisposition ) ) + return "!(" + m_info.capturedExpression + ")"; + else + return m_info.capturedExpression; + } + + std::string AssertionResult::getExpressionInMacro() const { + std::string expr; + if( m_info.macroName[0] == 0 ) + expr = m_info.capturedExpression; + else { + expr.reserve( m_info.macroName.size() + m_info.capturedExpression.size() + 4 ); + expr += m_info.macroName.c_str(); + expr += "( "; + expr += m_info.capturedExpression.c_str(); + expr += " )"; + } + return expr; + } + + bool AssertionResult::hasExpandedExpression() const { + return hasExpression() && getExpandedExpression() != getExpression(); + } + + std::string AssertionResult::getExpandedExpression() const { + std::string expr = m_resultData.reconstructExpression(); + return expr.empty() + ? getExpression() + : expr; + } + + std::string AssertionResult::getMessage() const { + return m_resultData.message; + } + SourceLineInfo AssertionResult::getSourceInfo() const { + return m_info.lineInfo; + } + + StringRef AssertionResult::getTestMacroName() const { + return m_info.macroName; + } + +} // end namespace Catch +// end catch_assertionresult.cpp +// start catch_benchmark.cpp + +namespace Catch { + + auto BenchmarkLooper::getResolution() -> uint64_t { + return getEstimatedClockResolution() * getCurrentContext().getConfig()->benchmarkResolutionMultiple(); + } + + void BenchmarkLooper::reportStart() { + getResultCapture().benchmarkStarting( { m_name } ); + } + auto BenchmarkLooper::needsMoreIterations() -> bool { + auto elapsed = m_timer.getElapsedNanoseconds(); + + // Exponentially increasing iterations until we're confident in our timer resolution + if( elapsed < m_resolution ) { + m_iterationsToRun *= 10; + return true; + } + + getResultCapture().benchmarkEnded( { { m_name }, m_count, elapsed } ); + return false; + } + +} // end namespace Catch +// end catch_benchmark.cpp +// start catch_capture_matchers.cpp + +namespace Catch { + + using StringMatcher = Matchers::Impl::MatcherBase<std::string>; + + // This is the general overload that takes a any string matcher + // There is another overload, in catch_assertinhandler.h/.cpp, that only takes a string and infers + // the Equals matcher (so the header does not mention matchers) + void handleExceptionMatchExpr( AssertionHandler& handler, StringMatcher const& matcher, StringRef matcherString ) { + std::string exceptionMessage = Catch::translateActiveException(); + MatchExpr<std::string, StringMatcher const&> expr( exceptionMessage, matcher, matcherString ); + handler.handleExpr( expr ); + } + +} // namespace Catch +// end catch_capture_matchers.cpp +// start catch_commandline.cpp + +// start catch_commandline.h + +// start catch_clara.h + +// Use Catch's value for console width (store Clara's off to the side, if present) +#ifdef CLARA_CONFIG_CONSOLE_WIDTH +#define CATCH_TEMP_CLARA_CONFIG_CONSOLE_WIDTH CATCH_CLARA_TEXTFLOW_CONFIG_CONSOLE_WIDTH +#undef CATCH_CLARA_TEXTFLOW_CONFIG_CONSOLE_WIDTH +#endif +#define CATCH_CLARA_TEXTFLOW_CONFIG_CONSOLE_WIDTH CATCH_CONFIG_CONSOLE_WIDTH-1 + +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wweak-vtables" +#pragma clang diagnostic ignored "-Wexit-time-destructors" +#pragma clang diagnostic ignored "-Wshadow" +#endif + +// start clara.hpp +// Copyright 2017 Two Blue Cubes Ltd. All rights reserved. +// +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// +// See https://github.com/philsquared/Clara for more details + +// Clara v1.1.2 + + +#ifndef CATCH_CLARA_CONFIG_CONSOLE_WIDTH +#define CATCH_CLARA_CONFIG_CONSOLE_WIDTH 80 +#endif + +#ifndef CATCH_CLARA_TEXTFLOW_CONFIG_CONSOLE_WIDTH +#define CATCH_CLARA_TEXTFLOW_CONFIG_CONSOLE_WIDTH CATCH_CLARA_CONFIG_CONSOLE_WIDTH +#endif + +// ----------- #included from clara_textflow.hpp ----------- + +// TextFlowCpp +// +// A single-header library for wrapping and laying out basic text, by Phil Nash +// +// This work is licensed under the BSD 2-Clause license. +// See the accompanying LICENSE file, or the one at https://opensource.org/licenses/BSD-2-Clause +// +// This project is hosted at https://github.com/philsquared/textflowcpp + + +#include <cassert> +#include <ostream> +#include <sstream> +#include <vector> + +#ifndef CATCH_CLARA_TEXTFLOW_CONFIG_CONSOLE_WIDTH +#define CATCH_CLARA_TEXTFLOW_CONFIG_CONSOLE_WIDTH 80 +#endif + +namespace Catch { namespace clara { namespace TextFlow { + + inline auto isWhitespace( char c ) -> bool { + static std::string chars = " \t\n\r"; + return chars.find( c ) != std::string::npos; + } + inline auto isBreakableBefore( char c ) -> bool { + static std::string chars = "[({<|"; + return chars.find( c ) != std::string::npos; + } + inline auto isBreakableAfter( char c ) -> bool { + static std::string chars = "])}>.,:;*+-=&/\\"; + return chars.find( c ) != std::string::npos; + } + + class Columns; + + class Column { + std::vector<std::string> m_strings; + size_t m_width = CATCH_CLARA_TEXTFLOW_CONFIG_CONSOLE_WIDTH; + size_t m_indent = 0; + size_t m_initialIndent = std::string::npos; + + public: + class iterator { + friend Column; + + Column const& m_column; + size_t m_stringIndex = 0; + size_t m_pos = 0; + + size_t m_len = 0; + size_t m_end = 0; + bool m_suffix = false; + + iterator( Column const& column, size_t stringIndex ) + : m_column( column ), + m_stringIndex( stringIndex ) + {} + + auto line() const -> std::string const& { return m_column.m_strings[m_stringIndex]; } + + auto isBoundary( size_t at ) const -> bool { + assert( at > 0 ); + assert( at <= line().size() ); + + return at == line().size() || + ( isWhitespace( line()[at] ) && !isWhitespace( line()[at-1] ) ) || + isBreakableBefore( line()[at] ) || + isBreakableAfter( line()[at-1] ); + } + + void calcLength() { + assert( m_stringIndex < m_column.m_strings.size() ); + + m_suffix = false; + auto width = m_column.m_width-indent(); + m_end = m_pos; + while( m_end < line().size() && line()[m_end] != '\n' ) + ++m_end; + + if( m_end < m_pos + width ) { + m_len = m_end - m_pos; + } + else { + size_t len = width; + while (len > 0 && !isBoundary(m_pos + len)) + --len; + while (len > 0 && isWhitespace( line()[m_pos + len - 1] )) + --len; + + if (len > 0) { + m_len = len; + } else { + m_suffix = true; + m_len = width - 1; + } + } + } + + auto indent() const -> size_t { + auto initial = m_pos == 0 && m_stringIndex == 0 ? m_column.m_initialIndent : std::string::npos; + return initial == std::string::npos ? m_column.m_indent : initial; + } + + auto addIndentAndSuffix(std::string const &plain) const -> std::string { + return std::string( indent(), ' ' ) + (m_suffix ? plain + "-" : plain); + } + + public: + explicit iterator( Column const& column ) : m_column( column ) { + assert( m_column.m_width > m_column.m_indent ); + assert( m_column.m_initialIndent == std::string::npos || m_column.m_width > m_column.m_initialIndent ); + calcLength(); + if( m_len == 0 ) + m_stringIndex++; // Empty string + } + + auto operator *() const -> std::string { + assert( m_stringIndex < m_column.m_strings.size() ); + assert( m_pos <= m_end ); + if( m_pos + m_column.m_width < m_end ) + return addIndentAndSuffix(line().substr(m_pos, m_len)); + else + return addIndentAndSuffix(line().substr(m_pos, m_end - m_pos)); + } + + auto operator ++() -> iterator& { + m_pos += m_len; + if( m_pos < line().size() && line()[m_pos] == '\n' ) + m_pos += 1; + else + while( m_pos < line().size() && isWhitespace( line()[m_pos] ) ) + ++m_pos; + + if( m_pos == line().size() ) { + m_pos = 0; + ++m_stringIndex; + } + if( m_stringIndex < m_column.m_strings.size() ) + calcLength(); + return *this; + } + auto operator ++(int) -> iterator { + iterator prev( *this ); + operator++(); + return prev; + } + + auto operator ==( iterator const& other ) const -> bool { + return + m_pos == other.m_pos && + m_stringIndex == other.m_stringIndex && + &m_column == &other.m_column; + } + auto operator !=( iterator const& other ) const -> bool { + return !operator==( other ); + } + }; + using const_iterator = iterator; + + explicit Column( std::string const& text ) { m_strings.push_back( text ); } + + auto width( size_t newWidth ) -> Column& { + assert( newWidth > 0 ); + m_width = newWidth; + return *this; + } + auto indent( size_t newIndent ) -> Column& { + m_indent = newIndent; + return *this; + } + auto initialIndent( size_t newIndent ) -> Column& { + m_initialIndent = newIndent; + return *this; + } + + auto width() const -> size_t { return m_width; } + auto begin() const -> iterator { return iterator( *this ); } + auto end() const -> iterator { return { *this, m_strings.size() }; } + + inline friend std::ostream& operator << ( std::ostream& os, Column const& col ) { + bool first = true; + for( auto line : col ) { + if( first ) + first = false; + else + os << "\n"; + os << line; + } + return os; + } + + auto operator + ( Column const& other ) -> Columns; + + auto toString() const -> std::string { + std::ostringstream oss; + oss << *this; + return oss.str(); + } + }; + + class Spacer : public Column { + + public: + explicit Spacer( size_t spaceWidth ) : Column( "" ) { + width( spaceWidth ); + } + }; + + class Columns { + std::vector<Column> m_columns; + + public: + + class iterator { + friend Columns; + struct EndTag {}; + + std::vector<Column> const& m_columns; + std::vector<Column::iterator> m_iterators; + size_t m_activeIterators; + + iterator( Columns const& columns, EndTag ) + : m_columns( columns.m_columns ), + m_activeIterators( 0 ) + { + m_iterators.reserve( m_columns.size() ); + + for( auto const& col : m_columns ) + m_iterators.push_back( col.end() ); + } + + public: + explicit iterator( Columns const& columns ) + : m_columns( columns.m_columns ), + m_activeIterators( m_columns.size() ) + { + m_iterators.reserve( m_columns.size() ); + + for( auto const& col : m_columns ) + m_iterators.push_back( col.begin() ); + } + + auto operator ==( iterator const& other ) const -> bool { + return m_iterators == other.m_iterators; + } + auto operator !=( iterator const& other ) const -> bool { + return m_iterators != other.m_iterators; + } + auto operator *() const -> std::string { + std::string row, padding; + + for( size_t i = 0; i < m_columns.size(); ++i ) { + auto width = m_columns[i].width(); + if( m_iterators[i] != m_columns[i].end() ) { + std::string col = *m_iterators[i]; + row += padding + col; + if( col.size() < width ) + padding = std::string( width - col.size(), ' ' ); + else + padding = ""; + } + else { + padding += std::string( width, ' ' ); + } + } + return row; + } + auto operator ++() -> iterator& { + for( size_t i = 0; i < m_columns.size(); ++i ) { + if (m_iterators[i] != m_columns[i].end()) + ++m_iterators[i]; + } + return *this; + } + auto operator ++(int) -> iterator { + iterator prev( *this ); + operator++(); + return prev; + } + }; + using const_iterator = iterator; + + auto begin() const -> iterator { return iterator( *this ); } + auto end() const -> iterator { return { *this, iterator::EndTag() }; } + + auto operator += ( Column const& col ) -> Columns& { + m_columns.push_back( col ); + return *this; + } + auto operator + ( Column const& col ) -> Columns { + Columns combined = *this; + combined += col; + return combined; + } + + inline friend std::ostream& operator << ( std::ostream& os, Columns const& cols ) { + + bool first = true; + for( auto line : cols ) { + if( first ) + first = false; + else + os << "\n"; + os << line; + } + return os; + } + + auto toString() const -> std::string { + std::ostringstream oss; + oss << *this; + return oss.str(); + } + }; + + inline auto Column::operator + ( Column const& other ) -> Columns { + Columns cols; + cols += *this; + cols += other; + return cols; + } +}}} // namespace Catch::clara::TextFlow + +// ----------- end of #include from clara_textflow.hpp ----------- +// ........... back in clara.hpp + +#include <memory> +#include <set> +#include <algorithm> + +#if !defined(CATCH_PLATFORM_WINDOWS) && ( defined(WIN32) || defined(__WIN32__) || defined(_WIN32) || defined(_MSC_VER) ) +#define CATCH_PLATFORM_WINDOWS +#endif + +namespace Catch { namespace clara { +namespace detail { + + // Traits for extracting arg and return type of lambdas (for single argument lambdas) + template<typename L> + struct UnaryLambdaTraits : UnaryLambdaTraits<decltype( &L::operator() )> {}; + + template<typename ClassT, typename ReturnT, typename... Args> + struct UnaryLambdaTraits<ReturnT( ClassT::* )( Args... ) const> { + static const bool isValid = false; + }; + + template<typename ClassT, typename ReturnT, typename ArgT> + struct UnaryLambdaTraits<ReturnT( ClassT::* )( ArgT ) const> { + static const bool isValid = true; + using ArgType = typename std::remove_const<typename std::remove_reference<ArgT>::type>::type; + using ReturnType = ReturnT; + }; + + class TokenStream; + + // Transport for raw args (copied from main args, or supplied via init list for testing) + class Args { + friend TokenStream; + std::string m_exeName; + std::vector<std::string> m_args; + + public: + Args( int argc, char *argv[] ) { + m_exeName = argv[0]; + for( int i = 1; i < argc; ++i ) + m_args.push_back( argv[i] ); + } + + Args( std::initializer_list<std::string> args ) + : m_exeName( *args.begin() ), + m_args( args.begin()+1, args.end() ) + {} + + auto exeName() const -> std::string { + return m_exeName; + } + }; + + // Wraps a token coming from a token stream. These may not directly correspond to strings as a single string + // may encode an option + its argument if the : or = form is used + enum class TokenType { + Option, Argument + }; + struct Token { + TokenType type; + std::string token; + }; + + inline auto isOptPrefix( char c ) -> bool { + return c == '-' +#ifdef CATCH_PLATFORM_WINDOWS + || c == '/' +#endif + ; + } + + // Abstracts iterators into args as a stream of tokens, with option arguments uniformly handled + class TokenStream { + using Iterator = std::vector<std::string>::const_iterator; + Iterator it; + Iterator itEnd; + std::vector<Token> m_tokenBuffer; + + void loadBuffer() { + m_tokenBuffer.resize( 0 ); + + // Skip any empty strings + while( it != itEnd && it->empty() ) + ++it; + + if( it != itEnd ) { + auto const &next = *it; + if( isOptPrefix( next[0] ) ) { + auto delimiterPos = next.find_first_of( " :=" ); + if( delimiterPos != std::string::npos ) { + m_tokenBuffer.push_back( { TokenType::Option, next.substr( 0, delimiterPos ) } ); + m_tokenBuffer.push_back( { TokenType::Argument, next.substr( delimiterPos + 1 ) } ); + } else { + if( next[1] != '-' && next.size() > 2 ) { + std::string opt = "- "; + for( size_t i = 1; i < next.size(); ++i ) { + opt[1] = next[i]; + m_tokenBuffer.push_back( { TokenType::Option, opt } ); + } + } else { + m_tokenBuffer.push_back( { TokenType::Option, next } ); + } + } + } else { + m_tokenBuffer.push_back( { TokenType::Argument, next } ); + } + } + } + + public: + explicit TokenStream( Args const &args ) : TokenStream( args.m_args.begin(), args.m_args.end() ) {} + + TokenStream( Iterator it, Iterator itEnd ) : it( it ), itEnd( itEnd ) { + loadBuffer(); + } + + explicit operator bool() const { + return !m_tokenBuffer.empty() || it != itEnd; + } + + auto count() const -> size_t { return m_tokenBuffer.size() + (itEnd - it); } + + auto operator*() const -> Token { + assert( !m_tokenBuffer.empty() ); + return m_tokenBuffer.front(); + } + + auto operator->() const -> Token const * { + assert( !m_tokenBuffer.empty() ); + return &m_tokenBuffer.front(); + } + + auto operator++() -> TokenStream & { + if( m_tokenBuffer.size() >= 2 ) { + m_tokenBuffer.erase( m_tokenBuffer.begin() ); + } else { + if( it != itEnd ) + ++it; + loadBuffer(); + } + return *this; + } + }; + + class ResultBase { + public: + enum Type { + Ok, LogicError, RuntimeError + }; + + protected: + ResultBase( Type type ) : m_type( type ) {} + virtual ~ResultBase() = default; + + virtual void enforceOk() const = 0; + + Type m_type; + }; + + template<typename T> + class ResultValueBase : public ResultBase { + public: + auto value() const -> T const & { + enforceOk(); + return m_value; + } + + protected: + ResultValueBase( Type type ) : ResultBase( type ) {} + + ResultValueBase( ResultValueBase const &other ) : ResultBase( other ) { + if( m_type == ResultBase::Ok ) + new( &m_value ) T( other.m_value ); + } + + ResultValueBase( Type, T const &value ) : ResultBase( Ok ) { + new( &m_value ) T( value ); + } + + auto operator=( ResultValueBase const &other ) -> ResultValueBase & { + if( m_type == ResultBase::Ok ) + m_value.~T(); + ResultBase::operator=(other); + if( m_type == ResultBase::Ok ) + new( &m_value ) T( other.m_value ); + return *this; + } + + ~ResultValueBase() override { + if( m_type == Ok ) + m_value.~T(); + } + + union { + T m_value; + }; + }; + + template<> + class ResultValueBase<void> : public ResultBase { + protected: + using ResultBase::ResultBase; + }; + + template<typename T = void> + class BasicResult : public ResultValueBase<T> { + public: + template<typename U> + explicit BasicResult( BasicResult<U> const &other ) + : ResultValueBase<T>( other.type() ), + m_errorMessage( other.errorMessage() ) + { + assert( type() != ResultBase::Ok ); + } + + template<typename U> + static auto ok( U const &value ) -> BasicResult { return { ResultBase::Ok, value }; } + static auto ok() -> BasicResult { return { ResultBase::Ok }; } + static auto logicError( std::string const &message ) -> BasicResult { return { ResultBase::LogicError, message }; } + static auto runtimeError( std::string const &message ) -> BasicResult { return { ResultBase::RuntimeError, message }; } + + explicit operator bool() const { return m_type == ResultBase::Ok; } + auto type() const -> ResultBase::Type { return m_type; } + auto errorMessage() const -> std::string { return m_errorMessage; } + + protected: + void enforceOk() const override { + // !TBD: If no exceptions, std::terminate here or something + switch( m_type ) { + case ResultBase::LogicError: + throw std::logic_error( m_errorMessage ); + case ResultBase::RuntimeError: + throw std::runtime_error( m_errorMessage ); + case ResultBase::Ok: + break; + } + } + + std::string m_errorMessage; // Only populated if resultType is an error + + BasicResult( ResultBase::Type type, std::string const &message ) + : ResultValueBase<T>(type), + m_errorMessage(message) + { + assert( m_type != ResultBase::Ok ); + } + + using ResultValueBase<T>::ResultValueBase; + using ResultBase::m_type; + }; + + enum class ParseResultType { + Matched, NoMatch, ShortCircuitAll, ShortCircuitSame + }; + + class ParseState { + public: + + ParseState( ParseResultType type, TokenStream const &remainingTokens ) + : m_type(type), + m_remainingTokens( remainingTokens ) + {} + + auto type() const -> ParseResultType { return m_type; } + auto remainingTokens() const -> TokenStream { return m_remainingTokens; } + + private: + ParseResultType m_type; + TokenStream m_remainingTokens; + }; + + using Result = BasicResult<void>; + using ParserResult = BasicResult<ParseResultType>; + using InternalParseResult = BasicResult<ParseState>; + + struct HelpColumns { + std::string left; + std::string right; + }; + + template<typename T> + inline auto convertInto( std::string const &source, T& target ) -> ParserResult { + std::stringstream ss; + ss << source; + ss >> target; + if( ss.fail() ) + return ParserResult::runtimeError( "Unable to convert '" + source + "' to destination type" ); + else + return ParserResult::ok( ParseResultType::Matched ); + } + inline auto convertInto( std::string const &source, std::string& target ) -> ParserResult { + target = source; + return ParserResult::ok( ParseResultType::Matched ); + } + inline auto convertInto( std::string const &source, bool &target ) -> ParserResult { + std::string srcLC = source; + std::transform( srcLC.begin(), srcLC.end(), srcLC.begin(), []( char c ) { return static_cast<char>( ::tolower(c) ); } ); + if (srcLC == "y" || srcLC == "1" || srcLC == "true" || srcLC == "yes" || srcLC == "on") + target = true; + else if (srcLC == "n" || srcLC == "0" || srcLC == "false" || srcLC == "no" || srcLC == "off") + target = false; + else + return ParserResult::runtimeError( "Expected a boolean value but did not recognise: '" + source + "'" ); + return ParserResult::ok( ParseResultType::Matched ); + } + + struct NonCopyable { + NonCopyable() = default; + NonCopyable( NonCopyable const & ) = delete; + NonCopyable( NonCopyable && ) = delete; + NonCopyable &operator=( NonCopyable const & ) = delete; + NonCopyable &operator=( NonCopyable && ) = delete; + }; + + struct BoundRef : NonCopyable { + virtual ~BoundRef() = default; + virtual auto isContainer() const -> bool { return false; } + virtual auto isFlag() const -> bool { return false; } + }; + struct BoundValueRefBase : BoundRef { + virtual auto setValue( std::string const &arg ) -> ParserResult = 0; + }; + struct BoundFlagRefBase : BoundRef { + virtual auto setFlag( bool flag ) -> ParserResult = 0; + virtual auto isFlag() const -> bool { return true; } + }; + + template<typename T> + struct BoundValueRef : BoundValueRefBase { + T &m_ref; + + explicit BoundValueRef( T &ref ) : m_ref( ref ) {} + + auto setValue( std::string const &arg ) -> ParserResult override { + return convertInto( arg, m_ref ); + } + }; + + template<typename T> + struct BoundValueRef<std::vector<T>> : BoundValueRefBase { + std::vector<T> &m_ref; + + explicit BoundValueRef( std::vector<T> &ref ) : m_ref( ref ) {} + + auto isContainer() const -> bool override { return true; } + + auto setValue( std::string const &arg ) -> ParserResult override { + T temp; + auto result = convertInto( arg, temp ); + if( result ) + m_ref.push_back( temp ); + return result; + } + }; + + struct BoundFlagRef : BoundFlagRefBase { + bool &m_ref; + + explicit BoundFlagRef( bool &ref ) : m_ref( ref ) {} + + auto setFlag( bool flag ) -> ParserResult override { + m_ref = flag; + return ParserResult::ok( ParseResultType::Matched ); + } + }; + + template<typename ReturnType> + struct LambdaInvoker { + static_assert( std::is_same<ReturnType, ParserResult>::value, "Lambda must return void or clara::ParserResult" ); + + template<typename L, typename ArgType> + static auto invoke( L const &lambda, ArgType const &arg ) -> ParserResult { + return lambda( arg ); + } + }; + + template<> + struct LambdaInvoker<void> { + template<typename L, typename ArgType> + static auto invoke( L const &lambda, ArgType const &arg ) -> ParserResult { + lambda( arg ); + return ParserResult::ok( ParseResultType::Matched ); + } + }; + + template<typename ArgType, typename L> + inline auto invokeLambda( L const &lambda, std::string const &arg ) -> ParserResult { + ArgType temp{}; + auto result = convertInto( arg, temp ); + return !result + ? result + : LambdaInvoker<typename UnaryLambdaTraits<L>::ReturnType>::invoke( lambda, temp ); + } + + template<typename L> + struct BoundLambda : BoundValueRefBase { + L m_lambda; + + static_assert( UnaryLambdaTraits<L>::isValid, "Supplied lambda must take exactly one argument" ); + explicit BoundLambda( L const &lambda ) : m_lambda( lambda ) {} + + auto setValue( std::string const &arg ) -> ParserResult override { + return invokeLambda<typename UnaryLambdaTraits<L>::ArgType>( m_lambda, arg ); + } + }; + + template<typename L> + struct BoundFlagLambda : BoundFlagRefBase { + L m_lambda; + + static_assert( UnaryLambdaTraits<L>::isValid, "Supplied lambda must take exactly one argument" ); + static_assert( std::is_same<typename UnaryLambdaTraits<L>::ArgType, bool>::value, "flags must be boolean" ); + + explicit BoundFlagLambda( L const &lambda ) : m_lambda( lambda ) {} + + auto setFlag( bool flag ) -> ParserResult override { + return LambdaInvoker<typename UnaryLambdaTraits<L>::ReturnType>::invoke( m_lambda, flag ); + } + }; + + enum class Optionality { Optional, Required }; + + struct Parser; + + class ParserBase { + public: + virtual ~ParserBase() = default; + virtual auto validate() const -> Result { return Result::ok(); } + virtual auto parse( std::string const& exeName, TokenStream const &tokens) const -> InternalParseResult = 0; + virtual auto cardinality() const -> size_t { return 1; } + + auto parse( Args const &args ) const -> InternalParseResult { + return parse( args.exeName(), TokenStream( args ) ); + } + }; + + template<typename DerivedT> + class ComposableParserImpl : public ParserBase { + public: + template<typename T> + auto operator|( T const &other ) const -> Parser; + + template<typename T> + auto operator+( T const &other ) const -> Parser; + }; + + // Common code and state for Args and Opts + template<typename DerivedT> + class ParserRefImpl : public ComposableParserImpl<DerivedT> { + protected: + Optionality m_optionality = Optionality::Optional; + std::shared_ptr<BoundRef> m_ref; + std::string m_hint; + std::string m_description; + + explicit ParserRefImpl( std::shared_ptr<BoundRef> const &ref ) : m_ref( ref ) {} + + public: + template<typename T> + ParserRefImpl( T &ref, std::string const &hint ) + : m_ref( std::make_shared<BoundValueRef<T>>( ref ) ), + m_hint( hint ) + {} + + template<typename LambdaT> + ParserRefImpl( LambdaT const &ref, std::string const &hint ) + : m_ref( std::make_shared<BoundLambda<LambdaT>>( ref ) ), + m_hint(hint) + {} + + auto operator()( std::string const &description ) -> DerivedT & { + m_description = description; + return static_cast<DerivedT &>( *this ); + } + + auto optional() -> DerivedT & { + m_optionality = Optionality::Optional; + return static_cast<DerivedT &>( *this ); + }; + + auto required() -> DerivedT & { + m_optionality = Optionality::Required; + return static_cast<DerivedT &>( *this ); + }; + + auto isOptional() const -> bool { + return m_optionality == Optionality::Optional; + } + + auto cardinality() const -> size_t override { + if( m_ref->isContainer() ) + return 0; + else + return 1; + } + + auto hint() const -> std::string { return m_hint; } + }; + + class ExeName : public ComposableParserImpl<ExeName> { + std::shared_ptr<std::string> m_name; + std::shared_ptr<BoundValueRefBase> m_ref; + + template<typename LambdaT> + static auto makeRef(LambdaT const &lambda) -> std::shared_ptr<BoundValueRefBase> { + return std::make_shared<BoundLambda<LambdaT>>( lambda) ; + } + + public: + ExeName() : m_name( std::make_shared<std::string>( "<executable>" ) ) {} + + explicit ExeName( std::string &ref ) : ExeName() { + m_ref = std::make_shared<BoundValueRef<std::string>>( ref ); + } + + template<typename LambdaT> + explicit ExeName( LambdaT const& lambda ) : ExeName() { + m_ref = std::make_shared<BoundLambda<LambdaT>>( lambda ); + } + + // The exe name is not parsed out of the normal tokens, but is handled specially + auto parse( std::string const&, TokenStream const &tokens ) const -> InternalParseResult override { + return InternalParseResult::ok( ParseState( ParseResultType::NoMatch, tokens ) ); + } + + auto name() const -> std::string { return *m_name; } + auto set( std::string const& newName ) -> ParserResult { + + auto lastSlash = newName.find_last_of( "\\/" ); + auto filename = ( lastSlash == std::string::npos ) + ? newName + : newName.substr( lastSlash+1 ); + + *m_name = filename; + if( m_ref ) + return m_ref->setValue( filename ); + else + return ParserResult::ok( ParseResultType::Matched ); + } + }; + + class Arg : public ParserRefImpl<Arg> { + public: + using ParserRefImpl::ParserRefImpl; + + auto parse( std::string const &, TokenStream const &tokens ) const -> InternalParseResult override { + auto validationResult = validate(); + if( !validationResult ) + return InternalParseResult( validationResult ); + + auto remainingTokens = tokens; + auto const &token = *remainingTokens; + if( token.type != TokenType::Argument ) + return InternalParseResult::ok( ParseState( ParseResultType::NoMatch, remainingTokens ) ); + + assert( !m_ref->isFlag() ); + auto valueRef = static_cast<detail::BoundValueRefBase*>( m_ref.get() ); + + auto result = valueRef->setValue( remainingTokens->token ); + if( !result ) + return InternalParseResult( result ); + else + return InternalParseResult::ok( ParseState( ParseResultType::Matched, ++remainingTokens ) ); + } + }; + + inline auto normaliseOpt( std::string const &optName ) -> std::string { +#ifdef CATCH_PLATFORM_WINDOWS + if( optName[0] == '/' ) + return "-" + optName.substr( 1 ); + else +#endif + return optName; + } + + class Opt : public ParserRefImpl<Opt> { + protected: + std::vector<std::string> m_optNames; + + public: + template<typename LambdaT> + explicit Opt( LambdaT const &ref ) : ParserRefImpl( std::make_shared<BoundFlagLambda<LambdaT>>( ref ) ) {} + + explicit Opt( bool &ref ) : ParserRefImpl( std::make_shared<BoundFlagRef>( ref ) ) {} + + template<typename LambdaT> + Opt( LambdaT const &ref, std::string const &hint ) : ParserRefImpl( ref, hint ) {} + + template<typename T> + Opt( T &ref, std::string const &hint ) : ParserRefImpl( ref, hint ) {} + + auto operator[]( std::string const &optName ) -> Opt & { + m_optNames.push_back( optName ); + return *this; + } + + auto getHelpColumns() const -> std::vector<HelpColumns> { + std::ostringstream oss; + bool first = true; + for( auto const &opt : m_optNames ) { + if (first) + first = false; + else + oss << ", "; + oss << opt; + } + if( !m_hint.empty() ) + oss << " <" << m_hint << ">"; + return { { oss.str(), m_description } }; + } + + auto isMatch( std::string const &optToken ) const -> bool { + auto normalisedToken = normaliseOpt( optToken ); + for( auto const &name : m_optNames ) { + if( normaliseOpt( name ) == normalisedToken ) + return true; + } + return false; + } + + using ParserBase::parse; + + auto parse( std::string const&, TokenStream const &tokens ) const -> InternalParseResult override { + auto validationResult = validate(); + if( !validationResult ) + return InternalParseResult( validationResult ); + + auto remainingTokens = tokens; + if( remainingTokens && remainingTokens->type == TokenType::Option ) { + auto const &token = *remainingTokens; + if( isMatch(token.token ) ) { + if( m_ref->isFlag() ) { + auto flagRef = static_cast<detail::BoundFlagRefBase*>( m_ref.get() ); + auto result = flagRef->setFlag( true ); + if( !result ) + return InternalParseResult( result ); + if( result.value() == ParseResultType::ShortCircuitAll ) + return InternalParseResult::ok( ParseState( result.value(), remainingTokens ) ); + } else { + auto valueRef = static_cast<detail::BoundValueRefBase*>( m_ref.get() ); + ++remainingTokens; + if( !remainingTokens ) + return InternalParseResult::runtimeError( "Expected argument following " + token.token ); + auto const &argToken = *remainingTokens; + if( argToken.type != TokenType::Argument ) + return InternalParseResult::runtimeError( "Expected argument following " + token.token ); + auto result = valueRef->setValue( argToken.token ); + if( !result ) + return InternalParseResult( result ); + if( result.value() == ParseResultType::ShortCircuitAll ) + return InternalParseResult::ok( ParseState( result.value(), remainingTokens ) ); + } + return InternalParseResult::ok( ParseState( ParseResultType::Matched, ++remainingTokens ) ); + } + } + return InternalParseResult::ok( ParseState( ParseResultType::NoMatch, remainingTokens ) ); + } + + auto validate() const -> Result override { + if( m_optNames.empty() ) + return Result::logicError( "No options supplied to Opt" ); + for( auto const &name : m_optNames ) { + if( name.empty() ) + return Result::logicError( "Option name cannot be empty" ); +#ifdef CATCH_PLATFORM_WINDOWS + if( name[0] != '-' && name[0] != '/' ) + return Result::logicError( "Option name must begin with '-' or '/'" ); +#else + if( name[0] != '-' ) + return Result::logicError( "Option name must begin with '-'" ); +#endif + } + return ParserRefImpl::validate(); + } + }; + + struct Help : Opt { + Help( bool &showHelpFlag ) + : Opt([&]( bool flag ) { + showHelpFlag = flag; + return ParserResult::ok( ParseResultType::ShortCircuitAll ); + }) + { + static_cast<Opt &>( *this ) + ("display usage information") + ["-?"]["-h"]["--help"] + .optional(); + } + }; + + struct Parser : ParserBase { + + mutable ExeName m_exeName; + std::vector<Opt> m_options; + std::vector<Arg> m_args; + + auto operator|=( ExeName const &exeName ) -> Parser & { + m_exeName = exeName; + return *this; + } + + auto operator|=( Arg const &arg ) -> Parser & { + m_args.push_back(arg); + return *this; + } + + auto operator|=( Opt const &opt ) -> Parser & { + m_options.push_back(opt); + return *this; + } + + auto operator|=( Parser const &other ) -> Parser & { + m_options.insert(m_options.end(), other.m_options.begin(), other.m_options.end()); + m_args.insert(m_args.end(), other.m_args.begin(), other.m_args.end()); + return *this; + } + + template<typename T> + auto operator|( T const &other ) const -> Parser { + return Parser( *this ) |= other; + } + + // Forward deprecated interface with '+' instead of '|' + template<typename T> + auto operator+=( T const &other ) -> Parser & { return operator|=( other ); } + template<typename T> + auto operator+( T const &other ) const -> Parser { return operator|( other ); } + + auto getHelpColumns() const -> std::vector<HelpColumns> { + std::vector<HelpColumns> cols; + for (auto const &o : m_options) { + auto childCols = o.getHelpColumns(); + cols.insert( cols.end(), childCols.begin(), childCols.end() ); + } + return cols; + } + + void writeToStream( std::ostream &os ) const { + if (!m_exeName.name().empty()) { + os << "usage:\n" << " " << m_exeName.name() << " "; + bool required = true, first = true; + for( auto const &arg : m_args ) { + if (first) + first = false; + else + os << " "; + if( arg.isOptional() && required ) { + os << "["; + required = false; + } + os << "<" << arg.hint() << ">"; + if( arg.cardinality() == 0 ) + os << " ... "; + } + if( !required ) + os << "]"; + if( !m_options.empty() ) + os << " options"; + os << "\n\nwhere options are:" << std::endl; + } + + auto rows = getHelpColumns(); + size_t consoleWidth = CATCH_CLARA_CONFIG_CONSOLE_WIDTH; + size_t optWidth = 0; + for( auto const &cols : rows ) + optWidth = (std::max)(optWidth, cols.left.size() + 2); + + optWidth = (std::min)(optWidth, consoleWidth/2); + + for( auto const &cols : rows ) { + auto row = + TextFlow::Column( cols.left ).width( optWidth ).indent( 2 ) + + TextFlow::Spacer(4) + + TextFlow::Column( cols.right ).width( consoleWidth - 7 - optWidth ); + os << row << std::endl; + } + } + + friend auto operator<<( std::ostream &os, Parser const &parser ) -> std::ostream& { + parser.writeToStream( os ); + return os; + } + + auto validate() const -> Result override { + for( auto const &opt : m_options ) { + auto result = opt.validate(); + if( !result ) + return result; + } + for( auto const &arg : m_args ) { + auto result = arg.validate(); + if( !result ) + return result; + } + return Result::ok(); + } + + using ParserBase::parse; + + auto parse( std::string const& exeName, TokenStream const &tokens ) const -> InternalParseResult override { + + struct ParserInfo { + ParserBase const* parser = nullptr; + size_t count = 0; + }; + const size_t totalParsers = m_options.size() + m_args.size(); + assert( totalParsers < 512 ); + // ParserInfo parseInfos[totalParsers]; // <-- this is what we really want to do + ParserInfo parseInfos[512]; + + { + size_t i = 0; + for (auto const &opt : m_options) parseInfos[i++].parser = &opt; + for (auto const &arg : m_args) parseInfos[i++].parser = &arg; + } + + m_exeName.set( exeName ); + + auto result = InternalParseResult::ok( ParseState( ParseResultType::NoMatch, tokens ) ); + while( result.value().remainingTokens() ) { + bool tokenParsed = false; + + for( size_t i = 0; i < totalParsers; ++i ) { + auto& parseInfo = parseInfos[i]; + if( parseInfo.parser->cardinality() == 0 || parseInfo.count < parseInfo.parser->cardinality() ) { + result = parseInfo.parser->parse(exeName, result.value().remainingTokens()); + if (!result) + return result; + if (result.value().type() != ParseResultType::NoMatch) { + tokenParsed = true; + ++parseInfo.count; + break; + } + } + } + + if( result.value().type() == ParseResultType::ShortCircuitAll ) + return result; + if( !tokenParsed ) + return InternalParseResult::runtimeError( "Unrecognised token: " + result.value().remainingTokens()->token ); + } + // !TBD Check missing required options + return result; + } + }; + + template<typename DerivedT> + template<typename T> + auto ComposableParserImpl<DerivedT>::operator|( T const &other ) const -> Parser { + return Parser() | static_cast<DerivedT const &>( *this ) | other; + } +} // namespace detail + +// A Combined parser +using detail::Parser; + +// A parser for options +using detail::Opt; + +// A parser for arguments +using detail::Arg; + +// Wrapper for argc, argv from main() +using detail::Args; + +// Specifies the name of the executable +using detail::ExeName; + +// Convenience wrapper for option parser that specifies the help option +using detail::Help; + +// enum of result types from a parse +using detail::ParseResultType; + +// Result type for parser operation +using detail::ParserResult; + +}} // namespace Catch::clara + +// end clara.hpp +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + +// Restore Clara's value for console width, if present +#ifdef CATCH_TEMP_CLARA_CONFIG_CONSOLE_WIDTH +#define CATCH_CLARA_TEXTFLOW_CONFIG_CONSOLE_WIDTH CATCH_TEMP_CLARA_CONFIG_CONSOLE_WIDTH +#undef CATCH_TEMP_CLARA_CONFIG_CONSOLE_WIDTH +#endif + +// end catch_clara.h +namespace Catch { + + clara::Parser makeCommandLineParser( ConfigData& config ); + +} // end namespace Catch + +// end catch_commandline.h +#include <fstream> +#include <ctime> + +namespace Catch { + + clara::Parser makeCommandLineParser( ConfigData& config ) { + + using namespace clara; + + auto const setWarning = [&]( std::string const& warning ) { + if( warning != "NoAssertions" ) + return ParserResult::runtimeError( "Unrecognised warning: '" + warning + "'" ); + config.warnings = static_cast<WarnAbout::What>( config.warnings | WarnAbout::NoAssertions ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const loadTestNamesFromFile = [&]( std::string const& filename ) { + std::ifstream f( filename.c_str() ); + if( !f.is_open() ) + return ParserResult::runtimeError( "Unable to load input file: '" + filename + "'" ); + + std::string line; + while( std::getline( f, line ) ) { + line = trim(line); + if( !line.empty() && !startsWith( line, '#' ) ) { + if( !startsWith( line, '"' ) ) + line = '"' + line + '"'; + config.testsOrTags.push_back( line + ',' ); + } + } + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setTestOrder = [&]( std::string const& order ) { + if( startsWith( "declared", order ) ) + config.runOrder = RunTests::InDeclarationOrder; + else if( startsWith( "lexical", order ) ) + config.runOrder = RunTests::InLexicographicalOrder; + else if( startsWith( "random", order ) ) + config.runOrder = RunTests::InRandomOrder; + else + return clara::ParserResult::runtimeError( "Unrecognised ordering: '" + order + "'" ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setRngSeed = [&]( std::string const& seed ) { + if( seed != "time" ) + return clara::detail::convertInto( seed, config.rngSeed ); + config.rngSeed = static_cast<unsigned int>( std::time(nullptr) ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setColourUsage = [&]( std::string const& useColour ) { + auto mode = toLower( useColour ); + + if( mode == "yes" ) + config.useColour = UseColour::Yes; + else if( mode == "no" ) + config.useColour = UseColour::No; + else if( mode == "auto" ) + config.useColour = UseColour::Auto; + else + return ParserResult::runtimeError( "colour mode must be one of: auto, yes or no. '" + useColour + "' not recognised" ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setWaitForKeypress = [&]( std::string const& keypress ) { + auto keypressLc = toLower( keypress ); + if( keypressLc == "start" ) + config.waitForKeypress = WaitForKeypress::BeforeStart; + else if( keypressLc == "exit" ) + config.waitForKeypress = WaitForKeypress::BeforeExit; + else if( keypressLc == "both" ) + config.waitForKeypress = WaitForKeypress::BeforeStartAndExit; + else + return ParserResult::runtimeError( "keypress argument must be one of: start, exit or both. '" + keypress + "' not recognised" ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setVerbosity = [&]( std::string const& verbosity ) { + auto lcVerbosity = toLower( verbosity ); + if( lcVerbosity == "quiet" ) + config.verbosity = Verbosity::Quiet; + else if( lcVerbosity == "normal" ) + config.verbosity = Verbosity::Normal; + else if( lcVerbosity == "high" ) + config.verbosity = Verbosity::High; + else + return ParserResult::runtimeError( "Unrecognised verbosity, '" + verbosity + "'" ); + return ParserResult::ok( ParseResultType::Matched ); + }; + + auto cli + = ExeName( config.processName ) + | Help( config.showHelp ) + | Opt( config.listTests ) + ["-l"]["--list-tests"] + ( "list all/matching test cases" ) + | Opt( config.listTags ) + ["-t"]["--list-tags"] + ( "list all/matching tags" ) + | Opt( config.showSuccessfulTests ) + ["-s"]["--success"] + ( "include successful tests in output" ) + | Opt( config.shouldDebugBreak ) + ["-b"]["--break"] + ( "break into debugger on failure" ) + | Opt( config.noThrow ) + ["-e"]["--nothrow"] + ( "skip exception tests" ) + | Opt( config.showInvisibles ) + ["-i"]["--invisibles"] + ( "show invisibles (tabs, newlines)" ) + | Opt( config.outputFilename, "filename" ) + ["-o"]["--out"] + ( "output filename" ) + | Opt( config.reporterNames, "name" ) + ["-r"]["--reporter"] + ( "reporter to use (defaults to console)" ) + | Opt( config.name, "name" ) + ["-n"]["--name"] + ( "suite name" ) + | Opt( [&]( bool ){ config.abortAfter = 1; } ) + ["-a"]["--abort"] + ( "abort at first failure" ) + | Opt( [&]( int x ){ config.abortAfter = x; }, "no. failures" ) + ["-x"]["--abortx"] + ( "abort after x failures" ) + | Opt( setWarning, "warning name" ) + ["-w"]["--warn"] + ( "enable warnings" ) + | Opt( [&]( bool flag ) { config.showDurations = flag ? ShowDurations::Always : ShowDurations::Never; }, "yes|no" ) + ["-d"]["--durations"] + ( "show test durations" ) + | Opt( loadTestNamesFromFile, "filename" ) + ["-f"]["--input-file"] + ( "load test names to run from a file" ) + | Opt( config.filenamesAsTags ) + ["-#"]["--filenames-as-tags"] + ( "adds a tag for the filename" ) + | Opt( config.sectionsToRun, "section name" ) + ["-c"]["--section"] + ( "specify section to run" ) + | Opt( setVerbosity, "quiet|normal|high" ) + ["-v"]["--verbosity"] + ( "set output verbosity" ) + | Opt( config.listTestNamesOnly ) + ["--list-test-names-only"] + ( "list all/matching test cases names only" ) + | Opt( config.listReporters ) + ["--list-reporters"] + ( "list all reporters" ) + | Opt( setTestOrder, "decl|lex|rand" ) + ["--order"] + ( "test case order (defaults to decl)" ) + | Opt( setRngSeed, "'time'|number" ) + ["--rng-seed"] + ( "set a specific seed for random numbers" ) + | Opt( setColourUsage, "yes|no" ) + ["--use-colour"] + ( "should output be colourised" ) + | Opt( config.libIdentify ) + ["--libidentify"] + ( "report name and version according to libidentify standard" ) + | Opt( setWaitForKeypress, "start|exit|both" ) + ["--wait-for-keypress"] + ( "waits for a keypress before exiting" ) + | Opt( config.benchmarkResolutionMultiple, "multiplier" ) + ["--benchmark-resolution-multiple"] + ( "multiple of clock resolution to run benchmarks" ) + + | Arg( config.testsOrTags, "test name|pattern|tags" ) + ( "which test or tests to use" ); + + return cli; + } + +} // end namespace Catch +// end catch_commandline.cpp +// start catch_common.cpp + +#include <cstring> +#include <ostream> + +namespace Catch { + + bool SourceLineInfo::empty() const noexcept { + return file[0] == '\0'; + } + bool SourceLineInfo::operator == ( SourceLineInfo const& other ) const noexcept { + return line == other.line && (file == other.file || std::strcmp(file, other.file) == 0); + } + bool SourceLineInfo::operator < ( SourceLineInfo const& other ) const noexcept { + return line < other.line || ( line == other.line && (std::strcmp(file, other.file) < 0)); + } + + std::ostream& operator << ( std::ostream& os, SourceLineInfo const& info ) { +#ifndef __GNUG__ + os << info.file << '(' << info.line << ')'; +#else + os << info.file << ':' << info.line; +#endif + return os; + } + + std::string StreamEndStop::operator+() const { + return std::string(); + } + + NonCopyable::NonCopyable() = default; + NonCopyable::~NonCopyable() = default; + +} +// end catch_common.cpp +// start catch_config.cpp + +// start catch_enforce.h + +#include <stdexcept> +#include <iosfwd> + +#define CATCH_PREPARE_EXCEPTION( type, msg ) \ + type( static_cast<std::ostringstream&&>( Catch::ReusableStringStream().get() << msg ).str() ) +#define CATCH_INTERNAL_ERROR( msg ) \ + throw CATCH_PREPARE_EXCEPTION( std::logic_error, CATCH_INTERNAL_LINEINFO << ": Internal Catch error: " << msg); +#define CATCH_ERROR( msg ) \ + throw CATCH_PREPARE_EXCEPTION( std::domain_error, msg ) +#define CATCH_ENFORCE( condition, msg ) \ + do{ if( !(condition) ) CATCH_ERROR( msg ); } while(false) + +// end catch_enforce.h +namespace Catch { + + Config::Config( ConfigData const& data ) + : m_data( data ), + m_stream( openStream() ) + { + if( !data.testsOrTags.empty() ) { + TestSpecParser parser( ITagAliasRegistry::get() ); + for( auto const& testOrTags : data.testsOrTags ) + parser.parse( testOrTags ); + m_testSpec = parser.testSpec(); + } + } + + std::string const& Config::getFilename() const { + return m_data.outputFilename ; + } + + bool Config::listTests() const { return m_data.listTests; } + bool Config::listTestNamesOnly() const { return m_data.listTestNamesOnly; } + bool Config::listTags() const { return m_data.listTags; } + bool Config::listReporters() const { return m_data.listReporters; } + + std::string Config::getProcessName() const { return m_data.processName; } + + std::vector<std::string> const& Config::getReporterNames() const { return m_data.reporterNames; } + std::vector<std::string> const& Config::getSectionsToRun() const { return m_data.sectionsToRun; } + + TestSpec const& Config::testSpec() const { return m_testSpec; } + + bool Config::showHelp() const { return m_data.showHelp; } + + // IConfig interface + bool Config::allowThrows() const { return !m_data.noThrow; } + std::ostream& Config::stream() const { return m_stream->stream(); } + std::string Config::name() const { return m_data.name.empty() ? m_data.processName : m_data.name; } + bool Config::includeSuccessfulResults() const { return m_data.showSuccessfulTests; } + bool Config::warnAboutMissingAssertions() const { return m_data.warnings & WarnAbout::NoAssertions; } + ShowDurations::OrNot Config::showDurations() const { return m_data.showDurations; } + RunTests::InWhatOrder Config::runOrder() const { return m_data.runOrder; } + unsigned int Config::rngSeed() const { return m_data.rngSeed; } + int Config::benchmarkResolutionMultiple() const { return m_data.benchmarkResolutionMultiple; } + UseColour::YesOrNo Config::useColour() const { return m_data.useColour; } + bool Config::shouldDebugBreak() const { return m_data.shouldDebugBreak; } + int Config::abortAfter() const { return m_data.abortAfter; } + bool Config::showInvisibles() const { return m_data.showInvisibles; } + Verbosity Config::verbosity() const { return m_data.verbosity; } + + IStream const* Config::openStream() { + return Catch::makeStream(m_data.outputFilename); + } + +} // end namespace Catch +// end catch_config.cpp +// start catch_console_colour.cpp + +#if defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wexit-time-destructors" +#endif + +// start catch_errno_guard.h + +namespace Catch { + + class ErrnoGuard { + public: + ErrnoGuard(); + ~ErrnoGuard(); + private: + int m_oldErrno; + }; + +} + +// end catch_errno_guard.h +#include <sstream> + +namespace Catch { + namespace { + + struct IColourImpl { + virtual ~IColourImpl() = default; + virtual void use( Colour::Code _colourCode ) = 0; + }; + + struct NoColourImpl : IColourImpl { + void use( Colour::Code ) {} + + static IColourImpl* instance() { + static NoColourImpl s_instance; + return &s_instance; + } + }; + + } // anon namespace +} // namespace Catch + +#if !defined( CATCH_CONFIG_COLOUR_NONE ) && !defined( CATCH_CONFIG_COLOUR_WINDOWS ) && !defined( CATCH_CONFIG_COLOUR_ANSI ) +# ifdef CATCH_PLATFORM_WINDOWS +# define CATCH_CONFIG_COLOUR_WINDOWS +# else +# define CATCH_CONFIG_COLOUR_ANSI +# endif +#endif + +#if defined ( CATCH_CONFIG_COLOUR_WINDOWS ) ///////////////////////////////////////// + +namespace Catch { +namespace { + + class Win32ColourImpl : public IColourImpl { + public: + Win32ColourImpl() : stdoutHandle( GetStdHandle(STD_OUTPUT_HANDLE) ) + { + CONSOLE_SCREEN_BUFFER_INFO csbiInfo; + GetConsoleScreenBufferInfo( stdoutHandle, &csbiInfo ); + originalForegroundAttributes = csbiInfo.wAttributes & ~( BACKGROUND_GREEN | BACKGROUND_RED | BACKGROUND_BLUE | BACKGROUND_INTENSITY ); + originalBackgroundAttributes = csbiInfo.wAttributes & ~( FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_INTENSITY ); + } + + virtual void use( Colour::Code _colourCode ) override { + switch( _colourCode ) { + case Colour::None: return setTextAttribute( originalForegroundAttributes ); + case Colour::White: return setTextAttribute( FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_BLUE ); + case Colour::Red: return setTextAttribute( FOREGROUND_RED ); + case Colour::Green: return setTextAttribute( FOREGROUND_GREEN ); + case Colour::Blue: return setTextAttribute( FOREGROUND_BLUE ); + case Colour::Cyan: return setTextAttribute( FOREGROUND_BLUE | FOREGROUND_GREEN ); + case Colour::Yellow: return setTextAttribute( FOREGROUND_RED | FOREGROUND_GREEN ); + case Colour::Grey: return setTextAttribute( 0 ); + + case Colour::LightGrey: return setTextAttribute( FOREGROUND_INTENSITY ); + case Colour::BrightRed: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_RED ); + case Colour::BrightGreen: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_GREEN ); + case Colour::BrightWhite: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_BLUE ); + case Colour::BrightYellow: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN ); + + case Colour::Bright: CATCH_INTERNAL_ERROR( "not a colour" ); + + default: + CATCH_ERROR( "Unknown colour requested" ); + } + } + + private: + void setTextAttribute( WORD _textAttribute ) { + SetConsoleTextAttribute( stdoutHandle, _textAttribute | originalBackgroundAttributes ); + } + HANDLE stdoutHandle; + WORD originalForegroundAttributes; + WORD originalBackgroundAttributes; + }; + + IColourImpl* platformColourInstance() { + static Win32ColourImpl s_instance; + + IConfigPtr config = getCurrentContext().getConfig(); + UseColour::YesOrNo colourMode = config + ? config->useColour() + : UseColour::Auto; + if( colourMode == UseColour::Auto ) + colourMode = UseColour::Yes; + return colourMode == UseColour::Yes + ? &s_instance + : NoColourImpl::instance(); + } + +} // end anon namespace +} // end namespace Catch + +#elif defined( CATCH_CONFIG_COLOUR_ANSI ) ////////////////////////////////////// + +#include <unistd.h> + +namespace Catch { +namespace { + + // use POSIX/ ANSI console terminal codes + // Thanks to Adam Strzelecki for original contribution + // (http://github.com/nanoant) + // https://github.com/philsquared/Catch/pull/131 + class PosixColourImpl : public IColourImpl { + public: + virtual void use( Colour::Code _colourCode ) override { + switch( _colourCode ) { + case Colour::None: + case Colour::White: return setColour( "[0m" ); + case Colour::Red: return setColour( "[0;31m" ); + case Colour::Green: return setColour( "[0;32m" ); + case Colour::Blue: return setColour( "[0;34m" ); + case Colour::Cyan: return setColour( "[0;36m" ); + case Colour::Yellow: return setColour( "[0;33m" ); + case Colour::Grey: return setColour( "[1;30m" ); + + case Colour::LightGrey: return setColour( "[0;37m" ); + case Colour::BrightRed: return setColour( "[1;31m" ); + case Colour::BrightGreen: return setColour( "[1;32m" ); + case Colour::BrightWhite: return setColour( "[1;37m" ); + case Colour::BrightYellow: return setColour( "[1;33m" ); + + case Colour::Bright: CATCH_INTERNAL_ERROR( "not a colour" ); + default: CATCH_INTERNAL_ERROR( "Unknown colour requested" ); + } + } + static IColourImpl* instance() { + static PosixColourImpl s_instance; + return &s_instance; + } + + private: + void setColour( const char* _escapeCode ) { + Catch::cout() << '\033' << _escapeCode; + } + }; + + bool useColourOnPlatform() { + return +#ifdef CATCH_PLATFORM_MAC + !isDebuggerActive() && +#endif + isatty(STDOUT_FILENO); + } + IColourImpl* platformColourInstance() { + ErrnoGuard guard; + IConfigPtr config = getCurrentContext().getConfig(); + UseColour::YesOrNo colourMode = config + ? config->useColour() + : UseColour::Auto; + if( colourMode == UseColour::Auto ) + colourMode = useColourOnPlatform() + ? UseColour::Yes + : UseColour::No; + return colourMode == UseColour::Yes + ? PosixColourImpl::instance() + : NoColourImpl::instance(); + } + +} // end anon namespace +} // end namespace Catch + +#else // not Windows or ANSI /////////////////////////////////////////////// + +namespace Catch { + + static IColourImpl* platformColourInstance() { return NoColourImpl::instance(); } + +} // end namespace Catch + +#endif // Windows/ ANSI/ None + +namespace Catch { + + Colour::Colour( Code _colourCode ) { use( _colourCode ); } + Colour::Colour( Colour&& rhs ) noexcept { + m_moved = rhs.m_moved; + rhs.m_moved = true; + } + Colour& Colour::operator=( Colour&& rhs ) noexcept { + m_moved = rhs.m_moved; + rhs.m_moved = true; + return *this; + } + + Colour::~Colour(){ if( !m_moved ) use( None ); } + + void Colour::use( Code _colourCode ) { + static IColourImpl* impl = platformColourInstance(); + impl->use( _colourCode ); + } + + std::ostream& operator << ( std::ostream& os, Colour const& ) { + return os; + } + +} // end namespace Catch + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif + +// end catch_console_colour.cpp +// start catch_context.cpp + +namespace Catch { + + class Context : public IMutableContext, NonCopyable { + + public: // IContext + virtual IResultCapture* getResultCapture() override { + return m_resultCapture; + } + virtual IRunner* getRunner() override { + return m_runner; + } + + virtual IConfigPtr const& getConfig() const override { + return m_config; + } + + virtual ~Context() override; + + public: // IMutableContext + virtual void setResultCapture( IResultCapture* resultCapture ) override { + m_resultCapture = resultCapture; + } + virtual void setRunner( IRunner* runner ) override { + m_runner = runner; + } + virtual void setConfig( IConfigPtr const& config ) override { + m_config = config; + } + + friend IMutableContext& getCurrentMutableContext(); + + private: + IConfigPtr m_config; + IRunner* m_runner = nullptr; + IResultCapture* m_resultCapture = nullptr; + }; + + IMutableContext *IMutableContext::currentContext = nullptr; + + void IMutableContext::createContext() + { + currentContext = new Context(); + } + + void cleanUpContext() { + delete IMutableContext::currentContext; + IMutableContext::currentContext = nullptr; + } + IContext::~IContext() = default; + IMutableContext::~IMutableContext() = default; + Context::~Context() = default; +} +// end catch_context.cpp +// start catch_debug_console.cpp + +// start catch_debug_console.h + +#include <string> + +namespace Catch { + void writeToDebugConsole( std::string const& text ); +} + +// end catch_debug_console.h +#ifdef CATCH_PLATFORM_WINDOWS + + namespace Catch { + void writeToDebugConsole( std::string const& text ) { + ::OutputDebugStringA( text.c_str() ); + } + } +#else + namespace Catch { + void writeToDebugConsole( std::string const& text ) { + // !TBD: Need a version for Mac/ XCode and other IDEs + Catch::cout() << text; + } + } +#endif // Platform +// end catch_debug_console.cpp +// start catch_debugger.cpp + +#ifdef CATCH_PLATFORM_MAC + +# include <assert.h> +# include <stdbool.h> +# include <sys/types.h> +# include <unistd.h> +# include <sys/sysctl.h> +# include <cstddef> +# include <ostream> + +namespace Catch { + + // The following function is taken directly from the following technical note: + // http://developer.apple.com/library/mac/#qa/qa2004/qa1361.html + + // Returns true if the current process is being debugged (either + // running under the debugger or has a debugger attached post facto). + bool isDebuggerActive(){ + + int mib[4]; + struct kinfo_proc info; + std::size_t size; + + // Initialize the flags so that, if sysctl fails for some bizarre + // reason, we get a predictable result. + + info.kp_proc.p_flag = 0; + + // Initialize mib, which tells sysctl the info we want, in this case + // we're looking for information about a specific process ID. + + mib[0] = CTL_KERN; + mib[1] = KERN_PROC; + mib[2] = KERN_PROC_PID; + mib[3] = getpid(); + + // Call sysctl. + + size = sizeof(info); + if( sysctl(mib, sizeof(mib) / sizeof(*mib), &info, &size, nullptr, 0) != 0 ) { + Catch::cerr() << "\n** Call to sysctl failed - unable to determine if debugger is active **\n" << std::endl; + return false; + } + + // We're being debugged if the P_TRACED flag is set. + + return ( (info.kp_proc.p_flag & P_TRACED) != 0 ); + } + } // namespace Catch + +#elif defined(CATCH_PLATFORM_LINUX) + #include <fstream> + #include <string> + + namespace Catch{ + // The standard POSIX way of detecting a debugger is to attempt to + // ptrace() the process, but this needs to be done from a child and not + // this process itself to still allow attaching to this process later + // if wanted, so is rather heavy. Under Linux we have the PID of the + // "debugger" (which doesn't need to be gdb, of course, it could also + // be strace, for example) in /proc/$PID/status, so just get it from + // there instead. + bool isDebuggerActive(){ + // Libstdc++ has a bug, where std::ifstream sets errno to 0 + // This way our users can properly assert over errno values + ErrnoGuard guard; + std::ifstream in("/proc/self/status"); + for( std::string line; std::getline(in, line); ) { + static const int PREFIX_LEN = 11; + if( line.compare(0, PREFIX_LEN, "TracerPid:\t") == 0 ) { + // We're traced if the PID is not 0 and no other PID starts + // with 0 digit, so it's enough to check for just a single + // character. + return line.length() > PREFIX_LEN && line[PREFIX_LEN] != '0'; + } + } + + return false; + } + } // namespace Catch +#elif defined(_MSC_VER) + extern "C" __declspec(dllimport) int __stdcall IsDebuggerPresent(); + namespace Catch { + bool isDebuggerActive() { + return IsDebuggerPresent() != 0; + } + } +#elif defined(__MINGW32__) + extern "C" __declspec(dllimport) int __stdcall IsDebuggerPresent(); + namespace Catch { + bool isDebuggerActive() { + return IsDebuggerPresent() != 0; + } + } +#else + namespace Catch { + bool isDebuggerActive() { return false; } + } +#endif // Platform +// end catch_debugger.cpp +// start catch_decomposer.cpp + +namespace Catch { + + ITransientExpression::~ITransientExpression() = default; + + void formatReconstructedExpression( std::ostream &os, std::string const& lhs, StringRef op, std::string const& rhs ) { + if( lhs.size() + rhs.size() < 40 && + lhs.find('\n') == std::string::npos && + rhs.find('\n') == std::string::npos ) + os << lhs << " " << op << " " << rhs; + else + os << lhs << "\n" << op << "\n" << rhs; + } +} +// end catch_decomposer.cpp +// start catch_errno_guard.cpp + +#include <cerrno> + +namespace Catch { + ErrnoGuard::ErrnoGuard():m_oldErrno(errno){} + ErrnoGuard::~ErrnoGuard() { errno = m_oldErrno; } +} +// end catch_errno_guard.cpp +// start catch_exception_translator_registry.cpp + +// start catch_exception_translator_registry.h + +#include <vector> +#include <string> +#include <memory> + +namespace Catch { + + class ExceptionTranslatorRegistry : public IExceptionTranslatorRegistry { + public: + ~ExceptionTranslatorRegistry(); + virtual void registerTranslator( const IExceptionTranslator* translator ); + virtual std::string translateActiveException() const override; + std::string tryTranslators() const; + + private: + std::vector<std::unique_ptr<IExceptionTranslator const>> m_translators; + }; +} + +// end catch_exception_translator_registry.h +#ifdef __OBJC__ +#import "Foundation/Foundation.h" +#endif + +namespace Catch { + + ExceptionTranslatorRegistry::~ExceptionTranslatorRegistry() { + } + + void ExceptionTranslatorRegistry::registerTranslator( const IExceptionTranslator* translator ) { + m_translators.push_back( std::unique_ptr<const IExceptionTranslator>( translator ) ); + } + + std::string ExceptionTranslatorRegistry::translateActiveException() const { + try { +#ifdef __OBJC__ + // In Objective-C try objective-c exceptions first + @try { + return tryTranslators(); + } + @catch (NSException *exception) { + return Catch::Detail::stringify( [exception description] ); + } +#else + // Compiling a mixed mode project with MSVC means that CLR + // exceptions will be caught in (...) as well. However, these + // do not fill-in std::current_exception and thus lead to crash + // when attempting rethrow. + // /EHa switch also causes structured exceptions to be caught + // here, but they fill-in current_exception properly, so + // at worst the output should be a little weird, instead of + // causing a crash. + if (std::current_exception() == nullptr) { + return "Non C++ exception. Possibly a CLR exception."; + } + return tryTranslators(); +#endif + } + catch( TestFailureException& ) { + std::rethrow_exception(std::current_exception()); + } + catch( std::exception& ex ) { + return ex.what(); + } + catch( std::string& msg ) { + return msg; + } + catch( const char* msg ) { + return msg; + } + catch(...) { + return "Unknown exception"; + } + } + + std::string ExceptionTranslatorRegistry::tryTranslators() const { + if( m_translators.empty() ) + std::rethrow_exception(std::current_exception()); + else + return m_translators[0]->translate( m_translators.begin()+1, m_translators.end() ); + } +} +// end catch_exception_translator_registry.cpp +// start catch_fatal_condition.cpp + +#if defined(__GNUC__) +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wmissing-field-initializers" +#endif + +#if (defined(CATCH_PLATFORM_WINDOWS) && defined(CATCH_CONFIG_WINDOWS_SEH)) || defined(CATCH_CONFIG_POSIX_SIGNALS) +namespace { + // Report the error condition + void reportFatal( char const * const message ) { + Catch::getCurrentContext().getResultCapture()->handleFatalErrorCondition( message ); + } +} +#endif + +#if defined ( CATCH_PLATFORM_WINDOWS ) ///////////////////////////////////////// + +# if !defined ( CATCH_CONFIG_WINDOWS_SEH ) + +namespace Catch { + void FatalConditionHandler::reset() {} +} + +# else // CATCH_CONFIG_WINDOWS_SEH is defined + +namespace Catch { + struct SignalDefs { DWORD id; const char* name; }; + + // There is no 1-1 mapping between signals and windows exceptions. + // Windows can easily distinguish between SO and SigSegV, + // but SigInt, SigTerm, etc are handled differently. + static SignalDefs signalDefs[] = { + { EXCEPTION_ILLEGAL_INSTRUCTION, "SIGILL - Illegal instruction signal" }, + { EXCEPTION_STACK_OVERFLOW, "SIGSEGV - Stack overflow" }, + { EXCEPTION_ACCESS_VIOLATION, "SIGSEGV - Segmentation violation signal" }, + { EXCEPTION_INT_DIVIDE_BY_ZERO, "Divide by zero error" }, + }; + + LONG CALLBACK FatalConditionHandler::handleVectoredException(PEXCEPTION_POINTERS ExceptionInfo) { + for (auto const& def : signalDefs) { + if (ExceptionInfo->ExceptionRecord->ExceptionCode == def.id) { + reportFatal(def.name); + } + } + // If its not an exception we care about, pass it along. + // This stops us from eating debugger breaks etc. + return EXCEPTION_CONTINUE_SEARCH; + } + + FatalConditionHandler::FatalConditionHandler() { + isSet = true; + // 32k seems enough for Catch to handle stack overflow, + // but the value was found experimentally, so there is no strong guarantee + guaranteeSize = 32 * 1024; + exceptionHandlerHandle = nullptr; + // Register as first handler in current chain + exceptionHandlerHandle = AddVectoredExceptionHandler(1, handleVectoredException); + // Pass in guarantee size to be filled + SetThreadStackGuarantee(&guaranteeSize); + } + + void FatalConditionHandler::reset() { + if (isSet) { + // Unregister handler and restore the old guarantee + RemoveVectoredExceptionHandler(exceptionHandlerHandle); + SetThreadStackGuarantee(&guaranteeSize); + exceptionHandlerHandle = nullptr; + isSet = false; + } + } + + FatalConditionHandler::~FatalConditionHandler() { + reset(); + } + +bool FatalConditionHandler::isSet = false; +ULONG FatalConditionHandler::guaranteeSize = 0; +PVOID FatalConditionHandler::exceptionHandlerHandle = nullptr; + +} // namespace Catch + +# endif // CATCH_CONFIG_WINDOWS_SEH + +#else // Not Windows - assumed to be POSIX compatible ////////////////////////// + +# if !defined(CATCH_CONFIG_POSIX_SIGNALS) + +namespace Catch { + void FatalConditionHandler::reset() {} +} + +# else // CATCH_CONFIG_POSIX_SIGNALS is defined + +#include <signal.h> + +namespace Catch { + + struct SignalDefs { + int id; + const char* name; + }; + static SignalDefs signalDefs[] = { + { SIGINT, "SIGINT - Terminal interrupt signal" }, + { SIGILL, "SIGILL - Illegal instruction signal" }, + { SIGFPE, "SIGFPE - Floating point error signal" }, + { SIGSEGV, "SIGSEGV - Segmentation violation signal" }, + { SIGTERM, "SIGTERM - Termination request signal" }, + { SIGABRT, "SIGABRT - Abort (abnormal termination) signal" } + }; + + void FatalConditionHandler::handleSignal( int sig ) { + char const * name = "<unknown signal>"; + for (auto const& def : signalDefs) { + if (sig == def.id) { + name = def.name; + break; + } + } + reset(); + reportFatal(name); + raise( sig ); + } + + FatalConditionHandler::FatalConditionHandler() { + isSet = true; + stack_t sigStack; + sigStack.ss_sp = altStackMem; + sigStack.ss_size = SIGSTKSZ; + sigStack.ss_flags = 0; + sigaltstack(&sigStack, &oldSigStack); + struct sigaction sa = { }; + + sa.sa_handler = handleSignal; + sa.sa_flags = SA_ONSTACK; + for (std::size_t i = 0; i < sizeof(signalDefs)/sizeof(SignalDefs); ++i) { + sigaction(signalDefs[i].id, &sa, &oldSigActions[i]); + } + } + + FatalConditionHandler::~FatalConditionHandler() { + reset(); + } + + void FatalConditionHandler::reset() { + if( isSet ) { + // Set signals back to previous values -- hopefully nobody overwrote them in the meantime + for( std::size_t i = 0; i < sizeof(signalDefs)/sizeof(SignalDefs); ++i ) { + sigaction(signalDefs[i].id, &oldSigActions[i], nullptr); + } + // Return the old stack + sigaltstack(&oldSigStack, nullptr); + isSet = false; + } + } + + bool FatalConditionHandler::isSet = false; + struct sigaction FatalConditionHandler::oldSigActions[sizeof(signalDefs)/sizeof(SignalDefs)] = {}; + stack_t FatalConditionHandler::oldSigStack = {}; + char FatalConditionHandler::altStackMem[SIGSTKSZ] = {}; + +} // namespace Catch + +# endif // CATCH_CONFIG_POSIX_SIGNALS + +#endif // not Windows + +#if defined(__GNUC__) +# pragma GCC diagnostic pop +#endif +// end catch_fatal_condition.cpp +// start catch_interfaces_capture.cpp + +namespace Catch { + IResultCapture::~IResultCapture() = default; +} +// end catch_interfaces_capture.cpp +// start catch_interfaces_config.cpp + +namespace Catch { + IConfig::~IConfig() = default; +} +// end catch_interfaces_config.cpp +// start catch_interfaces_exception.cpp + +namespace Catch { + IExceptionTranslator::~IExceptionTranslator() = default; + IExceptionTranslatorRegistry::~IExceptionTranslatorRegistry() = default; +} +// end catch_interfaces_exception.cpp +// start catch_interfaces_registry_hub.cpp + +namespace Catch { + IRegistryHub::~IRegistryHub() = default; + IMutableRegistryHub::~IMutableRegistryHub() = default; +} +// end catch_interfaces_registry_hub.cpp +// start catch_interfaces_reporter.cpp + +// start catch_reporter_multi.h + +namespace Catch { + + class MultipleReporters : public IStreamingReporter { + using Reporters = std::vector<IStreamingReporterPtr>; + Reporters m_reporters; + + public: + void add( IStreamingReporterPtr&& reporter ); + + public: // IStreamingReporter + + ReporterPreferences getPreferences() const override; + + void noMatchingTestCases( std::string const& spec ) override; + + static std::set<Verbosity> getSupportedVerbosities(); + + void benchmarkStarting( BenchmarkInfo const& benchmarkInfo ) override; + void benchmarkEnded( BenchmarkStats const& benchmarkStats ) override; + + void testRunStarting( TestRunInfo const& testRunInfo ) override; + void testGroupStarting( GroupInfo const& groupInfo ) override; + void testCaseStarting( TestCaseInfo const& testInfo ) override; + void sectionStarting( SectionInfo const& sectionInfo ) override; + void assertionStarting( AssertionInfo const& assertionInfo ) override; + + // The return value indicates if the messages buffer should be cleared: + bool assertionEnded( AssertionStats const& assertionStats ) override; + void sectionEnded( SectionStats const& sectionStats ) override; + void testCaseEnded( TestCaseStats const& testCaseStats ) override; + void testGroupEnded( TestGroupStats const& testGroupStats ) override; + void testRunEnded( TestRunStats const& testRunStats ) override; + + void skipTest( TestCaseInfo const& testInfo ) override; + bool isMulti() const override; + + }; + +} // end namespace Catch + +// end catch_reporter_multi.h +namespace Catch { + + ReporterConfig::ReporterConfig( IConfigPtr const& _fullConfig ) + : m_stream( &_fullConfig->stream() ), m_fullConfig( _fullConfig ) {} + + ReporterConfig::ReporterConfig( IConfigPtr const& _fullConfig, std::ostream& _stream ) + : m_stream( &_stream ), m_fullConfig( _fullConfig ) {} + + std::ostream& ReporterConfig::stream() const { return *m_stream; } + IConfigPtr ReporterConfig::fullConfig() const { return m_fullConfig; } + + TestRunInfo::TestRunInfo( std::string const& _name ) : name( _name ) {} + + GroupInfo::GroupInfo( std::string const& _name, + std::size_t _groupIndex, + std::size_t _groupsCount ) + : name( _name ), + groupIndex( _groupIndex ), + groupsCounts( _groupsCount ) + {} + + AssertionStats::AssertionStats( AssertionResult const& _assertionResult, + std::vector<MessageInfo> const& _infoMessages, + Totals const& _totals ) + : assertionResult( _assertionResult ), + infoMessages( _infoMessages ), + totals( _totals ) + { + assertionResult.m_resultData.lazyExpression.m_transientExpression = _assertionResult.m_resultData.lazyExpression.m_transientExpression; + + if( assertionResult.hasMessage() ) { + // Copy message into messages list. + // !TBD This should have been done earlier, somewhere + MessageBuilder builder( assertionResult.getTestMacroName(), assertionResult.getSourceInfo(), assertionResult.getResultType() ); + builder << assertionResult.getMessage(); + builder.m_info.message = builder.m_stream.str(); + + infoMessages.push_back( builder.m_info ); + } + } + + AssertionStats::~AssertionStats() = default; + + SectionStats::SectionStats( SectionInfo const& _sectionInfo, + Counts const& _assertions, + double _durationInSeconds, + bool _missingAssertions ) + : sectionInfo( _sectionInfo ), + assertions( _assertions ), + durationInSeconds( _durationInSeconds ), + missingAssertions( _missingAssertions ) + {} + + SectionStats::~SectionStats() = default; + + TestCaseStats::TestCaseStats( TestCaseInfo const& _testInfo, + Totals const& _totals, + std::string const& _stdOut, + std::string const& _stdErr, + bool _aborting ) + : testInfo( _testInfo ), + totals( _totals ), + stdOut( _stdOut ), + stdErr( _stdErr ), + aborting( _aborting ) + {} + + TestCaseStats::~TestCaseStats() = default; + + TestGroupStats::TestGroupStats( GroupInfo const& _groupInfo, + Totals const& _totals, + bool _aborting ) + : groupInfo( _groupInfo ), + totals( _totals ), + aborting( _aborting ) + {} + + TestGroupStats::TestGroupStats( GroupInfo const& _groupInfo ) + : groupInfo( _groupInfo ), + aborting( false ) + {} + + TestGroupStats::~TestGroupStats() = default; + + TestRunStats::TestRunStats( TestRunInfo const& _runInfo, + Totals const& _totals, + bool _aborting ) + : runInfo( _runInfo ), + totals( _totals ), + aborting( _aborting ) + {} + + TestRunStats::~TestRunStats() = default; + + void IStreamingReporter::fatalErrorEncountered( StringRef ) {} + bool IStreamingReporter::isMulti() const { return false; } + + IReporterFactory::~IReporterFactory() = default; + IReporterRegistry::~IReporterRegistry() = default; + + void addReporter( IStreamingReporterPtr& existingReporter, IStreamingReporterPtr&& additionalReporter ) { + + if( !existingReporter ) { + existingReporter = std::move( additionalReporter ); + return; + } + + MultipleReporters* multi = nullptr; + + if( existingReporter->isMulti() ) { + multi = static_cast<MultipleReporters*>( existingReporter.get() ); + } + else { + auto newMulti = std::unique_ptr<MultipleReporters>( new MultipleReporters ); + newMulti->add( std::move( existingReporter ) ); + multi = newMulti.get(); + existingReporter = std::move( newMulti ); + } + multi->add( std::move( additionalReporter ) ); + } + +} // end namespace Catch +// end catch_interfaces_reporter.cpp +// start catch_interfaces_runner.cpp + +namespace Catch { + IRunner::~IRunner() = default; +} +// end catch_interfaces_runner.cpp +// start catch_interfaces_testcase.cpp + +namespace Catch { + ITestInvoker::~ITestInvoker() = default; + ITestCaseRegistry::~ITestCaseRegistry() = default; +} +// end catch_interfaces_testcase.cpp +// start catch_leak_detector.cpp + +#ifdef CATCH_CONFIG_WINDOWS_CRTDBG +#include <crtdbg.h> + +namespace Catch { + + LeakDetector::LeakDetector() { + int flag = _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG); + flag |= _CRTDBG_LEAK_CHECK_DF; + flag |= _CRTDBG_ALLOC_MEM_DF; + _CrtSetDbgFlag(flag); + _CrtSetReportMode(_CRT_WARN, _CRTDBG_MODE_FILE | _CRTDBG_MODE_DEBUG); + _CrtSetReportFile(_CRT_WARN, _CRTDBG_FILE_STDERR); + // Change this to leaking allocation's number to break there + _CrtSetBreakAlloc(-1); + } +} + +#else + + Catch::LeakDetector::LeakDetector() {} + +#endif +// end catch_leak_detector.cpp +// start catch_list.cpp + +// start catch_list.h + +#include <set> + +namespace Catch { + + std::size_t listTests( Config const& config ); + + std::size_t listTestsNamesOnly( Config const& config ); + + struct TagInfo { + void add( std::string const& spelling ); + std::string all() const; + + std::set<std::string> spellings; + std::size_t count = 0; + }; + + std::size_t listTags( Config const& config ); + + std::size_t listReporters( Config const& /*config*/ ); + + Option<std::size_t> list( Config const& config ); + +} // end namespace Catch + +// end catch_list.h +// start catch_text.h + +namespace Catch { + using namespace clara::TextFlow; +} + +// end catch_text.h +#include <limits> +#include <algorithm> +#include <iomanip> + +namespace Catch { + + std::size_t listTests( Config const& config ) { + TestSpec testSpec = config.testSpec(); + if( config.testSpec().hasFilters() ) + Catch::cout() << "Matching test cases:\n"; + else { + Catch::cout() << "All available test cases:\n"; + testSpec = TestSpecParser( ITagAliasRegistry::get() ).parse( "*" ).testSpec(); + } + + auto matchedTestCases = filterTests( getAllTestCasesSorted( config ), testSpec, config ); + for( auto const& testCaseInfo : matchedTestCases ) { + Colour::Code colour = testCaseInfo.isHidden() + ? Colour::SecondaryText + : Colour::None; + Colour colourGuard( colour ); + + Catch::cout() << Column( testCaseInfo.name ).initialIndent( 2 ).indent( 4 ) << "\n"; + if( config.verbosity() >= Verbosity::High ) { + Catch::cout() << Column( Catch::Detail::stringify( testCaseInfo.lineInfo ) ).indent(4) << std::endl; + std::string description = testCaseInfo.description; + if( description.empty() ) + description = "(NO DESCRIPTION)"; + Catch::cout() << Column( description ).indent(4) << std::endl; + } + if( !testCaseInfo.tags.empty() ) + Catch::cout() << Column( testCaseInfo.tagsAsString() ).indent( 6 ) << "\n"; + } + + if( !config.testSpec().hasFilters() ) + Catch::cout() << pluralise( matchedTestCases.size(), "test case" ) << '\n' << std::endl; + else + Catch::cout() << pluralise( matchedTestCases.size(), "matching test case" ) << '\n' << std::endl; + return matchedTestCases.size(); + } + + std::size_t listTestsNamesOnly( Config const& config ) { + TestSpec testSpec = config.testSpec(); + if( !config.testSpec().hasFilters() ) + testSpec = TestSpecParser( ITagAliasRegistry::get() ).parse( "*" ).testSpec(); + std::size_t matchedTests = 0; + std::vector<TestCase> matchedTestCases = filterTests( getAllTestCasesSorted( config ), testSpec, config ); + for( auto const& testCaseInfo : matchedTestCases ) { + matchedTests++; + if( startsWith( testCaseInfo.name, '#' ) ) + Catch::cout() << '"' << testCaseInfo.name << '"'; + else + Catch::cout() << testCaseInfo.name; + if ( config.verbosity() >= Verbosity::High ) + Catch::cout() << "\t@" << testCaseInfo.lineInfo; + Catch::cout() << std::endl; + } + return matchedTests; + } + + void TagInfo::add( std::string const& spelling ) { + ++count; + spellings.insert( spelling ); + } + + std::string TagInfo::all() const { + std::string out; + for( auto const& spelling : spellings ) + out += "[" + spelling + "]"; + return out; + } + + std::size_t listTags( Config const& config ) { + TestSpec testSpec = config.testSpec(); + if( config.testSpec().hasFilters() ) + Catch::cout() << "Tags for matching test cases:\n"; + else { + Catch::cout() << "All available tags:\n"; + testSpec = TestSpecParser( ITagAliasRegistry::get() ).parse( "*" ).testSpec(); + } + + std::map<std::string, TagInfo> tagCounts; + + std::vector<TestCase> matchedTestCases = filterTests( getAllTestCasesSorted( config ), testSpec, config ); + for( auto const& testCase : matchedTestCases ) { + for( auto const& tagName : testCase.getTestCaseInfo().tags ) { + std::string lcaseTagName = toLower( tagName ); + auto countIt = tagCounts.find( lcaseTagName ); + if( countIt == tagCounts.end() ) + countIt = tagCounts.insert( std::make_pair( lcaseTagName, TagInfo() ) ).first; + countIt->second.add( tagName ); + } + } + + for( auto const& tagCount : tagCounts ) { + ReusableStringStream rss; + rss << " " << std::setw(2) << tagCount.second.count << " "; + auto str = rss.str(); + auto wrapper = Column( tagCount.second.all() ) + .initialIndent( 0 ) + .indent( str.size() ) + .width( CATCH_CONFIG_CONSOLE_WIDTH-10 ); + Catch::cout() << str << wrapper << '\n'; + } + Catch::cout() << pluralise( tagCounts.size(), "tag" ) << '\n' << std::endl; + return tagCounts.size(); + } + + std::size_t listReporters( Config const& /*config*/ ) { + Catch::cout() << "Available reporters:\n"; + IReporterRegistry::FactoryMap const& factories = getRegistryHub().getReporterRegistry().getFactories(); + std::size_t maxNameLen = 0; + for( auto const& factoryKvp : factories ) + maxNameLen = (std::max)( maxNameLen, factoryKvp.first.size() ); + + for( auto const& factoryKvp : factories ) { + Catch::cout() + << Column( factoryKvp.first + ":" ) + .indent(2) + .width( 5+maxNameLen ) + + Column( factoryKvp.second->getDescription() ) + .initialIndent(0) + .indent(2) + .width( CATCH_CONFIG_CONSOLE_WIDTH - maxNameLen-8 ) + << "\n"; + } + Catch::cout() << std::endl; + return factories.size(); + } + + Option<std::size_t> list( Config const& config ) { + Option<std::size_t> listedCount; + if( config.listTests() ) + listedCount = listedCount.valueOr(0) + listTests( config ); + if( config.listTestNamesOnly() ) + listedCount = listedCount.valueOr(0) + listTestsNamesOnly( config ); + if( config.listTags() ) + listedCount = listedCount.valueOr(0) + listTags( config ); + if( config.listReporters() ) + listedCount = listedCount.valueOr(0) + listReporters( config ); + return listedCount; + } + +} // end namespace Catch +// end catch_list.cpp +// start catch_matchers.cpp + +namespace Catch { +namespace Matchers { + namespace Impl { + + std::string MatcherUntypedBase::toString() const { + if( m_cachedToString.empty() ) + m_cachedToString = describe(); + return m_cachedToString; + } + + MatcherUntypedBase::~MatcherUntypedBase() = default; + + } // namespace Impl +} // namespace Matchers + +using namespace Matchers; +using Matchers::Impl::MatcherBase; + +} // namespace Catch +// end catch_matchers.cpp +// start catch_matchers_floating.cpp + +#include <cstdlib> +#include <cstdint> +#include <cstring> +#include <stdexcept> + +namespace Catch { +namespace Matchers { +namespace Floating { +enum class FloatingPointKind : uint8_t { + Float, + Double +}; +} +} +} + +namespace { + +template <typename T> +struct Converter; + +template <> +struct Converter<float> { + static_assert(sizeof(float) == sizeof(int32_t), "Important ULP matcher assumption violated"); + Converter(float f) { + std::memcpy(&i, &f, sizeof(f)); + } + int32_t i; +}; + +template <> +struct Converter<double> { + static_assert(sizeof(double) == sizeof(int64_t), "Important ULP matcher assumption violated"); + Converter(double d) { + std::memcpy(&i, &d, sizeof(d)); + } + int64_t i; +}; + +template <typename T> +auto convert(T t) -> Converter<T> { + return Converter<T>(t); +} + +template <typename FP> +bool almostEqualUlps(FP lhs, FP rhs, int maxUlpDiff) { + // Comparison with NaN should always be false. + // This way we can rule it out before getting into the ugly details + if (std::isnan(lhs) || std::isnan(rhs)) { + return false; + } + + auto lc = convert(lhs); + auto rc = convert(rhs); + + if ((lc.i < 0) != (rc.i < 0)) { + // Potentially we can have +0 and -0 + return lhs == rhs; + } + + auto ulpDiff = std::abs(lc.i - rc.i); + return ulpDiff <= maxUlpDiff; +} + +} + +namespace Catch { +namespace Matchers { +namespace Floating { + WithinAbsMatcher::WithinAbsMatcher(double target, double margin) + :m_target{ target }, m_margin{ margin } { + if (m_margin < 0) { + throw std::domain_error("Allowed margin difference has to be >= 0"); + } + } + + // Performs equivalent check of std::fabs(lhs - rhs) <= margin + // But without the subtraction to allow for INFINITY in comparison + bool WithinAbsMatcher::match(double const& matchee) const { + return (matchee + m_margin >= m_target) && (m_target + m_margin >= m_margin); + } + + std::string WithinAbsMatcher::describe() const { + return "is within " + ::Catch::Detail::stringify(m_margin) + " of " + ::Catch::Detail::stringify(m_target); + } + + WithinUlpsMatcher::WithinUlpsMatcher(double target, int ulps, FloatingPointKind baseType) + :m_target{ target }, m_ulps{ ulps }, m_type{ baseType } { + if (m_ulps < 0) { + throw std::domain_error("Allowed ulp difference has to be >= 0"); + } + } + + bool WithinUlpsMatcher::match(double const& matchee) const { + switch (m_type) { + case FloatingPointKind::Float: + return almostEqualUlps<float>(static_cast<float>(matchee), static_cast<float>(m_target), m_ulps); + case FloatingPointKind::Double: + return almostEqualUlps<double>(matchee, m_target, m_ulps); + default: + throw std::domain_error("Unknown FloatingPointKind value"); + } + } + + std::string WithinUlpsMatcher::describe() const { + return "is within " + std::to_string(m_ulps) + " ULPs of " + ::Catch::Detail::stringify(m_target) + ((m_type == FloatingPointKind::Float)? "f" : ""); + } + +}// namespace Floating + +Floating::WithinUlpsMatcher WithinULP(double target, int maxUlpDiff) { + return Floating::WithinUlpsMatcher(target, maxUlpDiff, Floating::FloatingPointKind::Double); +} + +Floating::WithinUlpsMatcher WithinULP(float target, int maxUlpDiff) { + return Floating::WithinUlpsMatcher(target, maxUlpDiff, Floating::FloatingPointKind::Float); +} + +Floating::WithinAbsMatcher WithinAbs(double target, double margin) { + return Floating::WithinAbsMatcher(target, margin); +} + +} // namespace Matchers +} // namespace Catch + +// end catch_matchers_floating.cpp +// start catch_matchers_string.cpp + +#include <regex> + +namespace Catch { +namespace Matchers { + + namespace StdString { + + CasedString::CasedString( std::string const& str, CaseSensitive::Choice caseSensitivity ) + : m_caseSensitivity( caseSensitivity ), + m_str( adjustString( str ) ) + {} + std::string CasedString::adjustString( std::string const& str ) const { + return m_caseSensitivity == CaseSensitive::No + ? toLower( str ) + : str; + } + std::string CasedString::caseSensitivitySuffix() const { + return m_caseSensitivity == CaseSensitive::No + ? " (case insensitive)" + : std::string(); + } + + StringMatcherBase::StringMatcherBase( std::string const& operation, CasedString const& comparator ) + : m_comparator( comparator ), + m_operation( operation ) { + } + + std::string StringMatcherBase::describe() const { + std::string description; + description.reserve(5 + m_operation.size() + m_comparator.m_str.size() + + m_comparator.caseSensitivitySuffix().size()); + description += m_operation; + description += ": \""; + description += m_comparator.m_str; + description += "\""; + description += m_comparator.caseSensitivitySuffix(); + return description; + } + + EqualsMatcher::EqualsMatcher( CasedString const& comparator ) : StringMatcherBase( "equals", comparator ) {} + + bool EqualsMatcher::match( std::string const& source ) const { + return m_comparator.adjustString( source ) == m_comparator.m_str; + } + + ContainsMatcher::ContainsMatcher( CasedString const& comparator ) : StringMatcherBase( "contains", comparator ) {} + + bool ContainsMatcher::match( std::string const& source ) const { + return contains( m_comparator.adjustString( source ), m_comparator.m_str ); + } + + StartsWithMatcher::StartsWithMatcher( CasedString const& comparator ) : StringMatcherBase( "starts with", comparator ) {} + + bool StartsWithMatcher::match( std::string const& source ) const { + return startsWith( m_comparator.adjustString( source ), m_comparator.m_str ); + } + + EndsWithMatcher::EndsWithMatcher( CasedString const& comparator ) : StringMatcherBase( "ends with", comparator ) {} + + bool EndsWithMatcher::match( std::string const& source ) const { + return endsWith( m_comparator.adjustString( source ), m_comparator.m_str ); + } + + RegexMatcher::RegexMatcher(std::string regex, CaseSensitive::Choice caseSensitivity): m_regex(std::move(regex)), m_caseSensitivity(caseSensitivity) {} + + bool RegexMatcher::match(std::string const& matchee) const { + auto flags = std::regex::ECMAScript; // ECMAScript is the default syntax option anyway + if (m_caseSensitivity == CaseSensitive::Choice::No) { + flags |= std::regex::icase; + } + auto reg = std::regex(m_regex, flags); + return std::regex_match(matchee, reg); + } + + std::string RegexMatcher::describe() const { + return "matches " + ::Catch::Detail::stringify(m_regex) + ((m_caseSensitivity == CaseSensitive::Choice::Yes)? " case sensitively" : " case insensitively"); + } + + } // namespace StdString + + StdString::EqualsMatcher Equals( std::string const& str, CaseSensitive::Choice caseSensitivity ) { + return StdString::EqualsMatcher( StdString::CasedString( str, caseSensitivity) ); + } + StdString::ContainsMatcher Contains( std::string const& str, CaseSensitive::Choice caseSensitivity ) { + return StdString::ContainsMatcher( StdString::CasedString( str, caseSensitivity) ); + } + StdString::EndsWithMatcher EndsWith( std::string const& str, CaseSensitive::Choice caseSensitivity ) { + return StdString::EndsWithMatcher( StdString::CasedString( str, caseSensitivity) ); + } + StdString::StartsWithMatcher StartsWith( std::string const& str, CaseSensitive::Choice caseSensitivity ) { + return StdString::StartsWithMatcher( StdString::CasedString( str, caseSensitivity) ); + } + + StdString::RegexMatcher Matches(std::string const& regex, CaseSensitive::Choice caseSensitivity) { + return StdString::RegexMatcher(regex, caseSensitivity); + } + +} // namespace Matchers +} // namespace Catch +// end catch_matchers_string.cpp +// start catch_message.cpp + +// start catch_uncaught_exceptions.h + +namespace Catch { + bool uncaught_exceptions(); +} // end namespace Catch + +// end catch_uncaught_exceptions.h +namespace Catch { + + MessageInfo::MessageInfo( std::string const& _macroName, + SourceLineInfo const& _lineInfo, + ResultWas::OfType _type ) + : macroName( _macroName ), + lineInfo( _lineInfo ), + type( _type ), + sequence( ++globalCount ) + {} + + bool MessageInfo::operator==( MessageInfo const& other ) const { + return sequence == other.sequence; + } + + bool MessageInfo::operator<( MessageInfo const& other ) const { + return sequence < other.sequence; + } + + // This may need protecting if threading support is added + unsigned int MessageInfo::globalCount = 0; + + //////////////////////////////////////////////////////////////////////////// + + Catch::MessageBuilder::MessageBuilder( std::string const& macroName, + SourceLineInfo const& lineInfo, + ResultWas::OfType type ) + :m_info(macroName, lineInfo, type) {} + + //////////////////////////////////////////////////////////////////////////// + + ScopedMessage::ScopedMessage( MessageBuilder const& builder ) + : m_info( builder.m_info ) + { + m_info.message = builder.m_stream.str(); + getResultCapture().pushScopedMessage( m_info ); + } + + ScopedMessage::~ScopedMessage() { + if ( !uncaught_exceptions() ){ + getResultCapture().popScopedMessage(m_info); + } + } +} // end namespace Catch +// end catch_message.cpp +// start catch_random_number_generator.cpp + +// start catch_random_number_generator.h + +#include <algorithm> + +namespace Catch { + + struct IConfig; + + void seedRng( IConfig const& config ); + + unsigned int rngSeed(); + + struct RandomNumberGenerator { + using result_type = unsigned int; + + static constexpr result_type (min)() { return 0; } + static constexpr result_type (max)() { return 1000000; } + + result_type operator()( result_type n ) const; + result_type operator()() const; + + template<typename V> + static void shuffle( V& vector ) { + RandomNumberGenerator rng; + std::shuffle( vector.begin(), vector.end(), rng ); + } + }; + +} + +// end catch_random_number_generator.h +#include <cstdlib> + +namespace Catch { + + void seedRng( IConfig const& config ) { + if( config.rngSeed() != 0 ) + std::srand( config.rngSeed() ); + } + unsigned int rngSeed() { + return getCurrentContext().getConfig()->rngSeed(); + } + + RandomNumberGenerator::result_type RandomNumberGenerator::operator()( result_type n ) const { + return std::rand() % n; + } + RandomNumberGenerator::result_type RandomNumberGenerator::operator()() const { + return std::rand() % (max)(); + } + +} +// end catch_random_number_generator.cpp +// start catch_registry_hub.cpp + +// start catch_test_case_registry_impl.h + +#include <vector> +#include <set> +#include <algorithm> +#include <ios> + +namespace Catch { + + class TestCase; + struct IConfig; + + std::vector<TestCase> sortTests( IConfig const& config, std::vector<TestCase> const& unsortedTestCases ); + bool matchTest( TestCase const& testCase, TestSpec const& testSpec, IConfig const& config ); + + void enforceNoDuplicateTestCases( std::vector<TestCase> const& functions ); + + std::vector<TestCase> filterTests( std::vector<TestCase> const& testCases, TestSpec const& testSpec, IConfig const& config ); + std::vector<TestCase> const& getAllTestCasesSorted( IConfig const& config ); + + class TestRegistry : public ITestCaseRegistry { + public: + virtual ~TestRegistry() = default; + + virtual void registerTest( TestCase const& testCase ); + + std::vector<TestCase> const& getAllTests() const override; + std::vector<TestCase> const& getAllTestsSorted( IConfig const& config ) const override; + + private: + std::vector<TestCase> m_functions; + mutable RunTests::InWhatOrder m_currentSortOrder = RunTests::InDeclarationOrder; + mutable std::vector<TestCase> m_sortedFunctions; + std::size_t m_unnamedCount = 0; + std::ios_base::Init m_ostreamInit; // Forces cout/ cerr to be initialised + }; + + /////////////////////////////////////////////////////////////////////////// + + class TestInvokerAsFunction : public ITestInvoker { + void(*m_testAsFunction)(); + public: + TestInvokerAsFunction( void(*testAsFunction)() ) noexcept; + + void invoke() const override; + }; + + std::string extractClassName( std::string const& classOrQualifiedMethodName ); + + /////////////////////////////////////////////////////////////////////////// + +} // end namespace Catch + +// end catch_test_case_registry_impl.h +// start catch_reporter_registry.h + +#include <map> + +namespace Catch { + + class ReporterRegistry : public IReporterRegistry { + + public: + + ~ReporterRegistry() override; + + IStreamingReporterPtr create( std::string const& name, IConfigPtr const& config ) const override; + + void registerReporter( std::string const& name, IReporterFactoryPtr const& factory ); + void registerListener( IReporterFactoryPtr const& factory ); + + FactoryMap const& getFactories() const override; + Listeners const& getListeners() const override; + + private: + FactoryMap m_factories; + Listeners m_listeners; + }; +} + +// end catch_reporter_registry.h +// start catch_tag_alias_registry.h + +// start catch_tag_alias.h + +#include <string> + +namespace Catch { + + struct TagAlias { + TagAlias(std::string const& _tag, SourceLineInfo _lineInfo); + + std::string tag; + SourceLineInfo lineInfo; + }; + +} // end namespace Catch + +// end catch_tag_alias.h +#include <map> + +namespace Catch { + + class TagAliasRegistry : public ITagAliasRegistry { + public: + ~TagAliasRegistry() override; + TagAlias const* find( std::string const& alias ) const override; + std::string expandAliases( std::string const& unexpandedTestSpec ) const override; + void add( std::string const& alias, std::string const& tag, SourceLineInfo const& lineInfo ); + + private: + std::map<std::string, TagAlias> m_registry; + }; + +} // end namespace Catch + +// end catch_tag_alias_registry.h +// start catch_startup_exception_registry.h + +#include <vector> +#include <exception> + +namespace Catch { + + class StartupExceptionRegistry { + public: + void add(std::exception_ptr const& exception) noexcept; + std::vector<std::exception_ptr> const& getExceptions() const noexcept; + private: + std::vector<std::exception_ptr> m_exceptions; + }; + +} // end namespace Catch + +// end catch_startup_exception_registry.h +namespace Catch { + + namespace { + + class RegistryHub : public IRegistryHub, public IMutableRegistryHub, + private NonCopyable { + + public: // IRegistryHub + RegistryHub() = default; + IReporterRegistry const& getReporterRegistry() const override { + return m_reporterRegistry; + } + ITestCaseRegistry const& getTestCaseRegistry() const override { + return m_testCaseRegistry; + } + IExceptionTranslatorRegistry& getExceptionTranslatorRegistry() override { + return m_exceptionTranslatorRegistry; + } + ITagAliasRegistry const& getTagAliasRegistry() const override { + return m_tagAliasRegistry; + } + StartupExceptionRegistry const& getStartupExceptionRegistry() const override { + return m_exceptionRegistry; + } + + public: // IMutableRegistryHub + void registerReporter( std::string const& name, IReporterFactoryPtr const& factory ) override { + m_reporterRegistry.registerReporter( name, factory ); + } + void registerListener( IReporterFactoryPtr const& factory ) override { + m_reporterRegistry.registerListener( factory ); + } + void registerTest( TestCase const& testInfo ) override { + m_testCaseRegistry.registerTest( testInfo ); + } + void registerTranslator( const IExceptionTranslator* translator ) override { + m_exceptionTranslatorRegistry.registerTranslator( translator ); + } + void registerTagAlias( std::string const& alias, std::string const& tag, SourceLineInfo const& lineInfo ) override { + m_tagAliasRegistry.add( alias, tag, lineInfo ); + } + void registerStartupException() noexcept override { + m_exceptionRegistry.add(std::current_exception()); + } + + private: + TestRegistry m_testCaseRegistry; + ReporterRegistry m_reporterRegistry; + ExceptionTranslatorRegistry m_exceptionTranslatorRegistry; + TagAliasRegistry m_tagAliasRegistry; + StartupExceptionRegistry m_exceptionRegistry; + }; + + // Single, global, instance + RegistryHub*& getTheRegistryHub() { + static RegistryHub* theRegistryHub = nullptr; + if( !theRegistryHub ) + theRegistryHub = new RegistryHub(); + return theRegistryHub; + } + } + + IRegistryHub& getRegistryHub() { + return *getTheRegistryHub(); + } + IMutableRegistryHub& getMutableRegistryHub() { + return *getTheRegistryHub(); + } + void cleanUp() { + delete getTheRegistryHub(); + getTheRegistryHub() = nullptr; + cleanUpContext(); + ReusableStringStream::cleanup(); + } + std::string translateActiveException() { + return getRegistryHub().getExceptionTranslatorRegistry().translateActiveException(); + } + +} // end namespace Catch +// end catch_registry_hub.cpp +// start catch_reporter_registry.cpp + +namespace Catch { + + ReporterRegistry::~ReporterRegistry() = default; + + IStreamingReporterPtr ReporterRegistry::create( std::string const& name, IConfigPtr const& config ) const { + auto it = m_factories.find( name ); + if( it == m_factories.end() ) + return nullptr; + return it->second->create( ReporterConfig( config ) ); + } + + void ReporterRegistry::registerReporter( std::string const& name, IReporterFactoryPtr const& factory ) { + m_factories.emplace(name, factory); + } + void ReporterRegistry::registerListener( IReporterFactoryPtr const& factory ) { + m_listeners.push_back( factory ); + } + + IReporterRegistry::FactoryMap const& ReporterRegistry::getFactories() const { + return m_factories; + } + IReporterRegistry::Listeners const& ReporterRegistry::getListeners() const { + return m_listeners; + } + +} +// end catch_reporter_registry.cpp +// start catch_result_type.cpp + +namespace Catch { + + bool isOk( ResultWas::OfType resultType ) { + return ( resultType & ResultWas::FailureBit ) == 0; + } + bool isJustInfo( int flags ) { + return flags == ResultWas::Info; + } + + ResultDisposition::Flags operator | ( ResultDisposition::Flags lhs, ResultDisposition::Flags rhs ) { + return static_cast<ResultDisposition::Flags>( static_cast<int>( lhs ) | static_cast<int>( rhs ) ); + } + + bool shouldContinueOnFailure( int flags ) { return ( flags & ResultDisposition::ContinueOnFailure ) != 0; } + bool shouldSuppressFailure( int flags ) { return ( flags & ResultDisposition::SuppressFail ) != 0; } + +} // end namespace Catch +// end catch_result_type.cpp +// start catch_run_context.cpp + +#include <cassert> +#include <algorithm> +#include <sstream> + +namespace Catch { + + class RedirectedStream { + std::ostream& m_originalStream; + std::ostream& m_redirectionStream; + std::streambuf* m_prevBuf; + + public: + RedirectedStream( std::ostream& originalStream, std::ostream& redirectionStream ) + : m_originalStream( originalStream ), + m_redirectionStream( redirectionStream ), + m_prevBuf( m_originalStream.rdbuf() ) + { + m_originalStream.rdbuf( m_redirectionStream.rdbuf() ); + } + ~RedirectedStream() { + m_originalStream.rdbuf( m_prevBuf ); + } + }; + + class RedirectedStdOut { + ReusableStringStream m_rss; + RedirectedStream m_cout; + public: + RedirectedStdOut() : m_cout( Catch::cout(), m_rss.get() ) {} + auto str() const -> std::string { return m_rss.str(); } + }; + + // StdErr has two constituent streams in C++, std::cerr and std::clog + // This means that we need to redirect 2 streams into 1 to keep proper + // order of writes + class RedirectedStdErr { + ReusableStringStream m_rss; + RedirectedStream m_cerr; + RedirectedStream m_clog; + public: + RedirectedStdErr() + : m_cerr( Catch::cerr(), m_rss.get() ), + m_clog( Catch::clog(), m_rss.get() ) + {} + auto str() const -> std::string { return m_rss.str(); } + }; + + RunContext::RunContext(IConfigPtr const& _config, IStreamingReporterPtr&& reporter) + : m_runInfo(_config->name()), + m_context(getCurrentMutableContext()), + m_config(_config), + m_reporter(std::move(reporter)), + m_lastAssertionInfo{ "", SourceLineInfo("",0), "", ResultDisposition::Normal }, + m_includeSuccessfulResults( m_config->includeSuccessfulResults() ) + { + m_context.setRunner(this); + m_context.setConfig(m_config); + m_context.setResultCapture(this); + m_reporter->testRunStarting(m_runInfo); + } + + RunContext::~RunContext() { + m_reporter->testRunEnded(TestRunStats(m_runInfo, m_totals, aborting())); + } + + void RunContext::testGroupStarting(std::string const& testSpec, std::size_t groupIndex, std::size_t groupsCount) { + m_reporter->testGroupStarting(GroupInfo(testSpec, groupIndex, groupsCount)); + } + + void RunContext::testGroupEnded(std::string const& testSpec, Totals const& totals, std::size_t groupIndex, std::size_t groupsCount) { + m_reporter->testGroupEnded(TestGroupStats(GroupInfo(testSpec, groupIndex, groupsCount), totals, aborting())); + } + + Totals RunContext::runTest(TestCase const& testCase) { + Totals prevTotals = m_totals; + + std::string redirectedCout; + std::string redirectedCerr; + + TestCaseInfo testInfo = testCase.getTestCaseInfo(); + + m_reporter->testCaseStarting(testInfo); + + m_activeTestCase = &testCase; + + ITracker& rootTracker = m_trackerContext.startRun(); + assert(rootTracker.isSectionTracker()); + static_cast<SectionTracker&>(rootTracker).addInitialFilters(m_config->getSectionsToRun()); + do { + m_trackerContext.startCycle(); + m_testCaseTracker = &SectionTracker::acquire(m_trackerContext, TestCaseTracking::NameAndLocation(testInfo.name, testInfo.lineInfo)); + runCurrentTest(redirectedCout, redirectedCerr); + } while (!m_testCaseTracker->isSuccessfullyCompleted() && !aborting()); + + Totals deltaTotals = m_totals.delta(prevTotals); + if (testInfo.expectedToFail() && deltaTotals.testCases.passed > 0) { + deltaTotals.assertions.failed++; + deltaTotals.testCases.passed--; + deltaTotals.testCases.failed++; + } + m_totals.testCases += deltaTotals.testCases; + m_reporter->testCaseEnded(TestCaseStats(testInfo, + deltaTotals, + redirectedCout, + redirectedCerr, + aborting())); + + m_activeTestCase = nullptr; + m_testCaseTracker = nullptr; + + return deltaTotals; + } + + IConfigPtr RunContext::config() const { + return m_config; + } + + IStreamingReporter& RunContext::reporter() const { + return *m_reporter; + } + + void RunContext::assertionEnded(AssertionResult const & result) { + if (result.getResultType() == ResultWas::Ok) { + m_totals.assertions.passed++; + m_lastAssertionPassed = true; + } else if (!result.isOk()) { + m_lastAssertionPassed = false; + if( m_activeTestCase->getTestCaseInfo().okToFail() ) + m_totals.assertions.failedButOk++; + else + m_totals.assertions.failed++; + } + else { + m_lastAssertionPassed = true; + } + + // We have no use for the return value (whether messages should be cleared), because messages were made scoped + // and should be let to clear themselves out. + static_cast<void>(m_reporter->assertionEnded(AssertionStats(result, m_messages, m_totals))); + + // Reset working state + resetAssertionInfo(); + m_lastResult = result; + } + void RunContext::resetAssertionInfo() { + m_lastAssertionInfo.macroName = StringRef(); + m_lastAssertionInfo.capturedExpression = "{Unknown expression after the reported line}"_sr; + } + + bool RunContext::sectionStarted(SectionInfo const & sectionInfo, Counts & assertions) { + ITracker& sectionTracker = SectionTracker::acquire(m_trackerContext, TestCaseTracking::NameAndLocation(sectionInfo.name, sectionInfo.lineInfo)); + if (!sectionTracker.isOpen()) + return false; + m_activeSections.push_back(§ionTracker); + + m_lastAssertionInfo.lineInfo = sectionInfo.lineInfo; + + m_reporter->sectionStarting(sectionInfo); + + assertions = m_totals.assertions; + + return true; + } + + bool RunContext::testForMissingAssertions(Counts& assertions) { + if (assertions.total() != 0) + return false; + if (!m_config->warnAboutMissingAssertions()) + return false; + if (m_trackerContext.currentTracker().hasChildren()) + return false; + m_totals.assertions.failed++; + assertions.failed++; + return true; + } + + void RunContext::sectionEnded(SectionEndInfo const & endInfo) { + Counts assertions = m_totals.assertions - endInfo.prevAssertions; + bool missingAssertions = testForMissingAssertions(assertions); + + if (!m_activeSections.empty()) { + m_activeSections.back()->close(); + m_activeSections.pop_back(); + } + + m_reporter->sectionEnded(SectionStats(endInfo.sectionInfo, assertions, endInfo.durationInSeconds, missingAssertions)); + m_messages.clear(); + } + + void RunContext::sectionEndedEarly(SectionEndInfo const & endInfo) { + if (m_unfinishedSections.empty()) + m_activeSections.back()->fail(); + else + m_activeSections.back()->close(); + m_activeSections.pop_back(); + + m_unfinishedSections.push_back(endInfo); + } + void RunContext::benchmarkStarting( BenchmarkInfo const& info ) { + m_reporter->benchmarkStarting( info ); + } + void RunContext::benchmarkEnded( BenchmarkStats const& stats ) { + m_reporter->benchmarkEnded( stats ); + } + + void RunContext::pushScopedMessage(MessageInfo const & message) { + m_messages.push_back(message); + } + + void RunContext::popScopedMessage(MessageInfo const & message) { + m_messages.erase(std::remove(m_messages.begin(), m_messages.end(), message), m_messages.end()); + } + + std::string RunContext::getCurrentTestName() const { + return m_activeTestCase + ? m_activeTestCase->getTestCaseInfo().name + : std::string(); + } + + const AssertionResult * RunContext::getLastResult() const { + return &(*m_lastResult); + } + + void RunContext::exceptionEarlyReported() { + m_shouldReportUnexpected = false; + } + + void RunContext::handleFatalErrorCondition( StringRef message ) { + // First notify reporter that bad things happened + m_reporter->fatalErrorEncountered(message); + + // Don't rebuild the result -- the stringification itself can cause more fatal errors + // Instead, fake a result data. + AssertionResultData tempResult( ResultWas::FatalErrorCondition, { false } ); + tempResult.message = message; + AssertionResult result(m_lastAssertionInfo, tempResult); + + assertionEnded(result); + + handleUnfinishedSections(); + + // Recreate section for test case (as we will lose the one that was in scope) + auto const& testCaseInfo = m_activeTestCase->getTestCaseInfo(); + SectionInfo testCaseSection(testCaseInfo.lineInfo, testCaseInfo.name, testCaseInfo.description); + + Counts assertions; + assertions.failed = 1; + SectionStats testCaseSectionStats(testCaseSection, assertions, 0, false); + m_reporter->sectionEnded(testCaseSectionStats); + + auto const& testInfo = m_activeTestCase->getTestCaseInfo(); + + Totals deltaTotals; + deltaTotals.testCases.failed = 1; + deltaTotals.assertions.failed = 1; + m_reporter->testCaseEnded(TestCaseStats(testInfo, + deltaTotals, + std::string(), + std::string(), + false)); + m_totals.testCases.failed++; + testGroupEnded(std::string(), m_totals, 1, 1); + m_reporter->testRunEnded(TestRunStats(m_runInfo, m_totals, false)); + } + + bool RunContext::lastAssertionPassed() { + return m_lastAssertionPassed; + } + + void RunContext::assertionPassed() { + m_lastAssertionPassed = true; + ++m_totals.assertions.passed; + resetAssertionInfo(); + } + + bool RunContext::aborting() const { + return m_totals.assertions.failed == static_cast<std::size_t>(m_config->abortAfter()); + } + + void RunContext::runCurrentTest(std::string & redirectedCout, std::string & redirectedCerr) { + auto const& testCaseInfo = m_activeTestCase->getTestCaseInfo(); + SectionInfo testCaseSection(testCaseInfo.lineInfo, testCaseInfo.name, testCaseInfo.description); + m_reporter->sectionStarting(testCaseSection); + Counts prevAssertions = m_totals.assertions; + double duration = 0; + m_shouldReportUnexpected = true; + m_lastAssertionInfo = { "TEST_CASE", testCaseInfo.lineInfo, "", ResultDisposition::Normal }; + + seedRng(*m_config); + + Timer timer; + try { + if (m_reporter->getPreferences().shouldRedirectStdOut) { + RedirectedStdOut redirectedStdOut; + RedirectedStdErr redirectedStdErr; + timer.start(); + invokeActiveTestCase(); + redirectedCout += redirectedStdOut.str(); + redirectedCerr += redirectedStdErr.str(); + + } else { + timer.start(); + invokeActiveTestCase(); + } + duration = timer.getElapsedSeconds(); + } catch (TestFailureException&) { + // This just means the test was aborted due to failure + } catch (...) { + // Under CATCH_CONFIG_FAST_COMPILE, unexpected exceptions under REQUIRE assertions + // are reported without translation at the point of origin. + if( m_shouldReportUnexpected ) { + AssertionReaction dummyReaction; + handleUnexpectedInflightException( m_lastAssertionInfo, translateActiveException(), dummyReaction ); + } + } + Counts assertions = m_totals.assertions - prevAssertions; + bool missingAssertions = testForMissingAssertions(assertions); + + m_testCaseTracker->close(); + handleUnfinishedSections(); + m_messages.clear(); + + SectionStats testCaseSectionStats(testCaseSection, assertions, duration, missingAssertions); + m_reporter->sectionEnded(testCaseSectionStats); + } + + void RunContext::invokeActiveTestCase() { + FatalConditionHandler fatalConditionHandler; // Handle signals + m_activeTestCase->invoke(); + fatalConditionHandler.reset(); + } + + void RunContext::handleUnfinishedSections() { + // If sections ended prematurely due to an exception we stored their + // infos here so we can tear them down outside the unwind process. + for (auto it = m_unfinishedSections.rbegin(), + itEnd = m_unfinishedSections.rend(); + it != itEnd; + ++it) + sectionEnded(*it); + m_unfinishedSections.clear(); + } + + void RunContext::handleExpr( + AssertionInfo const& info, + ITransientExpression const& expr, + AssertionReaction& reaction + ) { + m_reporter->assertionStarting( info ); + + bool negated = isFalseTest( info.resultDisposition ); + bool result = expr.getResult() != negated; + + if( result ) { + if (!m_includeSuccessfulResults) { + assertionPassed(); + } + else { + reportExpr(info, ResultWas::Ok, &expr, negated); + } + } + else { + reportExpr(info, ResultWas::ExpressionFailed, &expr, negated ); + populateReaction( reaction ); + } + } + void RunContext::reportExpr( + AssertionInfo const &info, + ResultWas::OfType resultType, + ITransientExpression const *expr, + bool negated ) { + + m_lastAssertionInfo = info; + AssertionResultData data( resultType, LazyExpression( negated ) ); + + AssertionResult assertionResult{ info, data }; + assertionResult.m_resultData.lazyExpression.m_transientExpression = expr; + + assertionEnded( assertionResult ); + } + + void RunContext::handleMessage( + AssertionInfo const& info, + ResultWas::OfType resultType, + StringRef const& message, + AssertionReaction& reaction + ) { + m_reporter->assertionStarting( info ); + + m_lastAssertionInfo = info; + + AssertionResultData data( resultType, LazyExpression( false ) ); + data.message = message; + AssertionResult assertionResult{ m_lastAssertionInfo, data }; + assertionEnded( assertionResult ); + if( !assertionResult.isOk() ) + populateReaction( reaction ); + } + void RunContext::handleUnexpectedExceptionNotThrown( + AssertionInfo const& info, + AssertionReaction& reaction + ) { + handleNonExpr(info, Catch::ResultWas::DidntThrowException, reaction); + } + + void RunContext::handleUnexpectedInflightException( + AssertionInfo const& info, + std::string const& message, + AssertionReaction& reaction + ) { + m_lastAssertionInfo = info; + + AssertionResultData data( ResultWas::ThrewException, LazyExpression( false ) ); + data.message = message; + AssertionResult assertionResult{ info, data }; + assertionEnded( assertionResult ); + populateReaction( reaction ); + } + + void RunContext::populateReaction( AssertionReaction& reaction ) { + reaction.shouldDebugBreak = m_config->shouldDebugBreak(); + reaction.shouldThrow = aborting() || (m_lastAssertionInfo.resultDisposition & ResultDisposition::Normal); + } + + void RunContext::handleIncomplete( + AssertionInfo const& info + ) { + m_lastAssertionInfo = info; + + AssertionResultData data( ResultWas::ThrewException, LazyExpression( false ) ); + data.message = "Exception translation was disabled by CATCH_CONFIG_FAST_COMPILE"; + AssertionResult assertionResult{ info, data }; + assertionEnded( assertionResult ); + } + void RunContext::handleNonExpr( + AssertionInfo const &info, + ResultWas::OfType resultType, + AssertionReaction &reaction + ) { + m_lastAssertionInfo = info; + + AssertionResultData data( resultType, LazyExpression( false ) ); + AssertionResult assertionResult{ info, data }; + assertionEnded( assertionResult ); + + if( !assertionResult.isOk() ) + populateReaction( reaction ); + } + + IResultCapture& getResultCapture() { + if (auto* capture = getCurrentContext().getResultCapture()) + return *capture; + else + CATCH_INTERNAL_ERROR("No result capture instance"); + } +} +// end catch_run_context.cpp +// start catch_section.cpp + +namespace Catch { + + Section::Section( SectionInfo const& info ) + : m_info( info ), + m_sectionIncluded( getResultCapture().sectionStarted( m_info, m_assertions ) ) + { + m_timer.start(); + } + + Section::~Section() { + if( m_sectionIncluded ) { + SectionEndInfo endInfo( m_info, m_assertions, m_timer.getElapsedSeconds() ); + if( uncaught_exceptions() ) + getResultCapture().sectionEndedEarly( endInfo ); + else + getResultCapture().sectionEnded( endInfo ); + } + } + + // This indicates whether the section should be executed or not + Section::operator bool() const { + return m_sectionIncluded; + } + +} // end namespace Catch +// end catch_section.cpp +// start catch_section_info.cpp + +namespace Catch { + + SectionInfo::SectionInfo + ( SourceLineInfo const& _lineInfo, + std::string const& _name, + std::string const& _description ) + : name( _name ), + description( _description ), + lineInfo( _lineInfo ) + {} + + SectionEndInfo::SectionEndInfo( SectionInfo const& _sectionInfo, Counts const& _prevAssertions, double _durationInSeconds ) + : sectionInfo( _sectionInfo ), prevAssertions( _prevAssertions ), durationInSeconds( _durationInSeconds ) + {} + +} // end namespace Catch +// end catch_section_info.cpp +// start catch_session.cpp + +// start catch_session.h + +#include <memory> + +namespace Catch { + + class Session : NonCopyable { + public: + + Session(); + ~Session() override; + + void showHelp() const; + void libIdentify(); + + int applyCommandLine( int argc, char* argv[] ); + + void useConfigData( ConfigData const& configData ); + + int run( int argc, char* argv[] ); + #if defined(WIN32) && defined(UNICODE) + int run( int argc, wchar_t* const argv[] ); + #endif + int run(); + + clara::Parser const& cli() const; + void cli( clara::Parser const& newParser ); + ConfigData& configData(); + Config& config(); + private: + int runInternal(); + + clara::Parser m_cli; + ConfigData m_configData; + std::shared_ptr<Config> m_config; + bool m_startupExceptions = false; + }; + +} // end namespace Catch + +// end catch_session.h +// start catch_version.h + +#include <iosfwd> + +namespace Catch { + + // Versioning information + struct Version { + Version( Version const& ) = delete; + Version& operator=( Version const& ) = delete; + Version( unsigned int _majorVersion, + unsigned int _minorVersion, + unsigned int _patchNumber, + char const * const _branchName, + unsigned int _buildNumber ); + + unsigned int const majorVersion; + unsigned int const minorVersion; + unsigned int const patchNumber; + + // buildNumber is only used if branchName is not null + char const * const branchName; + unsigned int const buildNumber; + + friend std::ostream& operator << ( std::ostream& os, Version const& version ); + }; + + Version const& libraryVersion(); +} + +// end catch_version.h +#include <cstdlib> +#include <iomanip> + +namespace Catch { + + namespace { + const int MaxExitCode = 255; + + IStreamingReporterPtr createReporter(std::string const& reporterName, IConfigPtr const& config) { + auto reporter = Catch::getRegistryHub().getReporterRegistry().create(reporterName, config); + CATCH_ENFORCE(reporter, "No reporter registered with name: '" << reporterName << "'"); + + return reporter; + } + +#ifndef CATCH_CONFIG_DEFAULT_REPORTER +#define CATCH_CONFIG_DEFAULT_REPORTER "console" +#endif + + IStreamingReporterPtr makeReporter(std::shared_ptr<Config> const& config) { + auto const& reporterNames = config->getReporterNames(); + if (reporterNames.empty()) + return createReporter(CATCH_CONFIG_DEFAULT_REPORTER, config); + + IStreamingReporterPtr reporter; + for (auto const& name : reporterNames) + addReporter(reporter, createReporter(name, config)); + return reporter; + } + +#undef CATCH_CONFIG_DEFAULT_REPORTER + + void addListeners(IStreamingReporterPtr& reporters, IConfigPtr const& config) { + auto const& listeners = Catch::getRegistryHub().getReporterRegistry().getListeners(); + for (auto const& listener : listeners) + addReporter(reporters, listener->create(Catch::ReporterConfig(config))); + } + + Catch::Totals runTests(std::shared_ptr<Config> const& config) { + IStreamingReporterPtr reporter = makeReporter(config); + addListeners(reporter, config); + + RunContext context(config, std::move(reporter)); + + Totals totals; + + context.testGroupStarting(config->name(), 1, 1); + + TestSpec testSpec = config->testSpec(); + if (!testSpec.hasFilters()) + testSpec = TestSpecParser(ITagAliasRegistry::get()).parse("~[.]").testSpec(); // All not hidden tests + + auto const& allTestCases = getAllTestCasesSorted(*config); + for (auto const& testCase : allTestCases) { + if (!context.aborting() && matchTest(testCase, testSpec, *config)) + totals += context.runTest(testCase); + else + context.reporter().skipTest(testCase); + } + + context.testGroupEnded(config->name(), totals, 1, 1); + return totals; + } + + void applyFilenamesAsTags(Catch::IConfig const& config) { + auto& tests = const_cast<std::vector<TestCase>&>(getAllTestCasesSorted(config)); + for (auto& testCase : tests) { + auto tags = testCase.tags; + + std::string filename = testCase.lineInfo.file; + auto lastSlash = filename.find_last_of("\\/"); + if (lastSlash != std::string::npos) { + filename.erase(0, lastSlash); + filename[0] = '#'; + } + + auto lastDot = filename.find_last_of('.'); + if (lastDot != std::string::npos) { + filename.erase(lastDot); + } + + tags.push_back(std::move(filename)); + setTags(testCase, tags); + } + } + + } // anon namespace + + Session::Session() { + static bool alreadyInstantiated = false; + if( alreadyInstantiated ) { + try { CATCH_INTERNAL_ERROR( "Only one instance of Catch::Session can ever be used" ); } + catch(...) { getMutableRegistryHub().registerStartupException(); } + } + + const auto& exceptions = getRegistryHub().getStartupExceptionRegistry().getExceptions(); + if ( !exceptions.empty() ) { + m_startupExceptions = true; + Colour colourGuard( Colour::Red ); + Catch::cerr() << "Errors occured during startup!" << '\n'; + // iterate over all exceptions and notify user + for ( const auto& ex_ptr : exceptions ) { + try { + std::rethrow_exception(ex_ptr); + } catch ( std::exception const& ex ) { + Catch::cerr() << Column( ex.what() ).indent(2) << '\n'; + } + } + } + + alreadyInstantiated = true; + m_cli = makeCommandLineParser( m_configData ); + } + Session::~Session() { + Catch::cleanUp(); + } + + void Session::showHelp() const { + Catch::cout() + << "\nCatch v" << libraryVersion() << "\n" + << m_cli << std::endl + << "For more detailed usage please see the project docs\n" << std::endl; + } + void Session::libIdentify() { + Catch::cout() + << std::left << std::setw(16) << "description: " << "A Catch test executable\n" + << std::left << std::setw(16) << "category: " << "testframework\n" + << std::left << std::setw(16) << "framework: " << "Catch Test\n" + << std::left << std::setw(16) << "version: " << libraryVersion() << std::endl; + } + + int Session::applyCommandLine( int argc, char* argv[] ) { + if( m_startupExceptions ) + return 1; + + auto result = m_cli.parse( clara::Args( argc, argv ) ); + if( !result ) { + Catch::cerr() + << Colour( Colour::Red ) + << "\nError(s) in input:\n" + << Column( result.errorMessage() ).indent( 2 ) + << "\n\n"; + Catch::cerr() << "Run with -? for usage\n" << std::endl; + return MaxExitCode; + } + + if( m_configData.showHelp ) + showHelp(); + if( m_configData.libIdentify ) + libIdentify(); + m_config.reset(); + return 0; + } + + void Session::useConfigData( ConfigData const& configData ) { + m_configData = configData; + m_config.reset(); + } + + int Session::run( int argc, char* argv[] ) { + if( m_startupExceptions ) + return 1; + int returnCode = applyCommandLine( argc, argv ); + if( returnCode == 0 ) + returnCode = run(); + return returnCode; + } + +#if defined(WIN32) && defined(UNICODE) + int Session::run( int argc, wchar_t* const argv[] ) { + + char **utf8Argv = new char *[ argc ]; + + for ( int i = 0; i < argc; ++i ) { + int bufSize = WideCharToMultiByte( CP_UTF8, 0, argv[i], -1, NULL, 0, NULL, NULL ); + + utf8Argv[ i ] = new char[ bufSize ]; + + WideCharToMultiByte( CP_UTF8, 0, argv[i], -1, utf8Argv[i], bufSize, NULL, NULL ); + } + + int returnCode = run( argc, utf8Argv ); + + for ( int i = 0; i < argc; ++i ) + delete [] utf8Argv[ i ]; + + delete [] utf8Argv; + + return returnCode; + } +#endif + int Session::run() { + if( ( m_configData.waitForKeypress & WaitForKeypress::BeforeStart ) != 0 ) { + Catch::cout() << "...waiting for enter/ return before starting" << std::endl; + static_cast<void>(std::getchar()); + } + int exitCode = runInternal(); + if( ( m_configData.waitForKeypress & WaitForKeypress::BeforeExit ) != 0 ) { + Catch::cout() << "...waiting for enter/ return before exiting, with code: " << exitCode << std::endl; + static_cast<void>(std::getchar()); + } + return exitCode; + } + + clara::Parser const& Session::cli() const { + return m_cli; + } + void Session::cli( clara::Parser const& newParser ) { + m_cli = newParser; + } + ConfigData& Session::configData() { + return m_configData; + } + Config& Session::config() { + if( !m_config ) + m_config = std::make_shared<Config>( m_configData ); + return *m_config; + } + + int Session::runInternal() { + if( m_startupExceptions ) + return 1; + + if( m_configData.showHelp || m_configData.libIdentify ) + return 0; + + try + { + config(); // Force config to be constructed + + seedRng( *m_config ); + + if( m_configData.filenamesAsTags ) + applyFilenamesAsTags( *m_config ); + + // Handle list request + if( Option<std::size_t> listed = list( config() ) ) + return static_cast<int>( *listed ); + + // Note that on unices only the lower 8 bits are usually used, clamping + // the return value to 255 prevents false negative when some multiple + // of 256 tests has failed + return (std::min)( MaxExitCode, static_cast<int>( runTests( m_config ).assertions.failed ) ); + } + catch( std::exception& ex ) { + Catch::cerr() << ex.what() << std::endl; + return MaxExitCode; + } + } + +} // end namespace Catch +// end catch_session.cpp +// start catch_startup_exception_registry.cpp + +namespace Catch { + void StartupExceptionRegistry::add( std::exception_ptr const& exception ) noexcept { + try { + m_exceptions.push_back(exception); + } + catch(...) { + // If we run out of memory during start-up there's really not a lot more we can do about it + std::terminate(); + } + } + + std::vector<std::exception_ptr> const& StartupExceptionRegistry::getExceptions() const noexcept { + return m_exceptions; + } + +} // end namespace Catch +// end catch_startup_exception_registry.cpp +// start catch_stream.cpp + +#include <cstdio> +#include <iostream> +#include <fstream> +#include <sstream> +#include <vector> +#include <memory> + +#if defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wexit-time-destructors" +#endif + +namespace Catch { + + Catch::IStream::~IStream() = default; + + namespace detail { namespace { + template<typename WriterF, std::size_t bufferSize=256> + class StreamBufImpl : public std::streambuf { + char data[bufferSize]; + WriterF m_writer; + + public: + StreamBufImpl() { + setp( data, data + sizeof(data) ); + } + + ~StreamBufImpl() noexcept { + StreamBufImpl::sync(); + } + + private: + int overflow( int c ) override { + sync(); + + if( c != EOF ) { + if( pbase() == epptr() ) + m_writer( std::string( 1, static_cast<char>( c ) ) ); + else + sputc( static_cast<char>( c ) ); + } + return 0; + } + + int sync() override { + if( pbase() != pptr() ) { + m_writer( std::string( pbase(), static_cast<std::string::size_type>( pptr() - pbase() ) ) ); + setp( pbase(), epptr() ); + } + return 0; + } + }; + + /////////////////////////////////////////////////////////////////////////// + + struct OutputDebugWriter { + + void operator()( std::string const&str ) { + writeToDebugConsole( str ); + } + }; + + /////////////////////////////////////////////////////////////////////////// + + class FileStream : public IStream { + mutable std::ofstream m_ofs; + public: + FileStream( StringRef filename ) { + m_ofs.open( filename.c_str() ); + CATCH_ENFORCE( !m_ofs.fail(), "Unable to open file: '" << filename << "'" ); + } + ~FileStream() override = default; + public: // IStream + std::ostream& stream() const override { + return m_ofs; + } + }; + + /////////////////////////////////////////////////////////////////////////// + + class CoutStream : public IStream { + mutable std::ostream m_os; + public: + // Store the streambuf from cout up-front because + // cout may get redirected when running tests + CoutStream() : m_os( Catch::cout().rdbuf() ) {} + ~CoutStream() override = default; + + public: // IStream + std::ostream& stream() const override { return m_os; } + }; + + /////////////////////////////////////////////////////////////////////////// + + class DebugOutStream : public IStream { + std::unique_ptr<StreamBufImpl<OutputDebugWriter>> m_streamBuf; + mutable std::ostream m_os; + public: + DebugOutStream() + : m_streamBuf( new StreamBufImpl<OutputDebugWriter>() ), + m_os( m_streamBuf.get() ) + {} + + ~DebugOutStream() override = default; + + public: // IStream + std::ostream& stream() const override { return m_os; } + }; + + }} // namespace anon::detail + + /////////////////////////////////////////////////////////////////////////// + + auto makeStream( StringRef const &filename ) -> IStream const* { + if( filename.empty() ) + return new detail::CoutStream(); + else if( filename[0] == '%' ) { + if( filename == "%debug" ) + return new detail::DebugOutStream(); + else + CATCH_ERROR( "Unrecognised stream: '" << filename << "'" ); + } + else + return new detail::FileStream( filename ); + } + + // This class encapsulates the idea of a pool of ostringstreams that can be reused. + struct StringStreams { + std::vector<std::unique_ptr<std::ostringstream>> m_streams; + std::vector<std::size_t> m_unused; + std::ostringstream m_referenceStream; // Used for copy state/ flags from + static StringStreams* s_instance; + + auto add() -> std::size_t { + if( m_unused.empty() ) { + m_streams.push_back( std::unique_ptr<std::ostringstream>( new std::ostringstream ) ); + return m_streams.size()-1; + } + else { + auto index = m_unused.back(); + m_unused.pop_back(); + return index; + } + } + + void release( std::size_t index ) { + m_streams[index]->copyfmt( m_referenceStream ); // Restore initial flags and other state + m_unused.push_back(index); + } + + // !TBD: put in TLS + static auto instance() -> StringStreams& { + if( !s_instance ) + s_instance = new StringStreams(); + return *s_instance; + } + static void cleanup() { + delete s_instance; + s_instance = nullptr; + } + }; + + StringStreams* StringStreams::s_instance = nullptr; + + void ReusableStringStream::cleanup() { + StringStreams::cleanup(); + } + + ReusableStringStream::ReusableStringStream() + : m_index( StringStreams::instance().add() ), + m_oss( StringStreams::instance().m_streams[m_index].get() ) + {} + + ReusableStringStream::~ReusableStringStream() { + static_cast<std::ostringstream*>( m_oss )->str(""); + m_oss->clear(); + StringStreams::instance().release( m_index ); + } + + auto ReusableStringStream::str() const -> std::string { + return static_cast<std::ostringstream*>( m_oss )->str(); + } + + /////////////////////////////////////////////////////////////////////////// + +#ifndef CATCH_CONFIG_NOSTDOUT // If you #define this you must implement these functions + std::ostream& cout() { return std::cout; } + std::ostream& cerr() { return std::cerr; } + std::ostream& clog() { return std::clog; } +#endif +} + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif +// end catch_stream.cpp +// start catch_string_manip.cpp + +#include <algorithm> +#include <ostream> +#include <cstring> +#include <cctype> + +namespace Catch { + + bool startsWith( std::string const& s, std::string const& prefix ) { + return s.size() >= prefix.size() && std::equal(prefix.begin(), prefix.end(), s.begin()); + } + bool startsWith( std::string const& s, char prefix ) { + return !s.empty() && s[0] == prefix; + } + bool endsWith( std::string const& s, std::string const& suffix ) { + return s.size() >= suffix.size() && std::equal(suffix.rbegin(), suffix.rend(), s.rbegin()); + } + bool endsWith( std::string const& s, char suffix ) { + return !s.empty() && s[s.size()-1] == suffix; + } + bool contains( std::string const& s, std::string const& infix ) { + return s.find( infix ) != std::string::npos; + } + char toLowerCh(char c) { + return static_cast<char>( std::tolower( c ) ); + } + void toLowerInPlace( std::string& s ) { + std::transform( s.begin(), s.end(), s.begin(), toLowerCh ); + } + std::string toLower( std::string const& s ) { + std::string lc = s; + toLowerInPlace( lc ); + return lc; + } + std::string trim( std::string const& str ) { + static char const* whitespaceChars = "\n\r\t "; + std::string::size_type start = str.find_first_not_of( whitespaceChars ); + std::string::size_type end = str.find_last_not_of( whitespaceChars ); + + return start != std::string::npos ? str.substr( start, 1+end-start ) : std::string(); + } + + bool replaceInPlace( std::string& str, std::string const& replaceThis, std::string const& withThis ) { + bool replaced = false; + std::size_t i = str.find( replaceThis ); + while( i != std::string::npos ) { + replaced = true; + str = str.substr( 0, i ) + withThis + str.substr( i+replaceThis.size() ); + if( i < str.size()-withThis.size() ) + i = str.find( replaceThis, i+withThis.size() ); + else + i = std::string::npos; + } + return replaced; + } + + pluralise::pluralise( std::size_t count, std::string const& label ) + : m_count( count ), + m_label( label ) + {} + + std::ostream& operator << ( std::ostream& os, pluralise const& pluraliser ) { + os << pluraliser.m_count << ' ' << pluraliser.m_label; + if( pluraliser.m_count != 1 ) + os << 's'; + return os; + } + +} +// end catch_string_manip.cpp +// start catch_stringref.cpp + +#if defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wexit-time-destructors" +#endif + +#include <ostream> +#include <cstring> +#include <cstdint> + +namespace { + const uint32_t byte_2_lead = 0xC0; + const uint32_t byte_3_lead = 0xE0; + const uint32_t byte_4_lead = 0xF0; +} + +namespace Catch { + StringRef::StringRef( char const* rawChars ) noexcept + : StringRef( rawChars, static_cast<StringRef::size_type>(std::strlen(rawChars) ) ) + {} + + StringRef::operator std::string() const { + return std::string( m_start, m_size ); + } + + void StringRef::swap( StringRef& other ) noexcept { + std::swap( m_start, other.m_start ); + std::swap( m_size, other.m_size ); + std::swap( m_data, other.m_data ); + } + + auto StringRef::c_str() const -> char const* { + if( isSubstring() ) + const_cast<StringRef*>( this )->takeOwnership(); + return m_start; + } + auto StringRef::data() const noexcept -> char const* { + return m_start; + } + + auto StringRef::isOwned() const noexcept -> bool { + return m_data != nullptr; + } + auto StringRef::isSubstring() const noexcept -> bool { + return m_start[m_size] != '\0'; + } + + void StringRef::takeOwnership() { + if( !isOwned() ) { + m_data = new char[m_size+1]; + memcpy( m_data, m_start, m_size ); + m_data[m_size] = '\0'; + m_start = m_data; + } + } + auto StringRef::substr( size_type start, size_type size ) const noexcept -> StringRef { + if( start < m_size ) + return StringRef( m_start+start, size ); + else + return StringRef(); + } + auto StringRef::operator == ( StringRef const& other ) const noexcept -> bool { + return + size() == other.size() && + (std::strncmp( m_start, other.m_start, size() ) == 0); + } + auto StringRef::operator != ( StringRef const& other ) const noexcept -> bool { + return !operator==( other ); + } + + auto StringRef::operator[](size_type index) const noexcept -> char { + return m_start[index]; + } + + auto StringRef::numberOfCharacters() const noexcept -> size_type { + size_type noChars = m_size; + // Make adjustments for uft encodings + for( size_type i=0; i < m_size; ++i ) { + char c = m_start[i]; + if( ( c & byte_2_lead ) == byte_2_lead ) { + noChars--; + if (( c & byte_3_lead ) == byte_3_lead ) + noChars--; + if( ( c & byte_4_lead ) == byte_4_lead ) + noChars--; + } + } + return noChars; + } + + auto operator + ( StringRef const& lhs, StringRef const& rhs ) -> std::string { + std::string str; + str.reserve( lhs.size() + rhs.size() ); + str += lhs; + str += rhs; + return str; + } + auto operator + ( StringRef const& lhs, const char* rhs ) -> std::string { + return std::string( lhs ) + std::string( rhs ); + } + auto operator + ( char const* lhs, StringRef const& rhs ) -> std::string { + return std::string( lhs ) + std::string( rhs ); + } + + auto operator << ( std::ostream& os, StringRef const& str ) -> std::ostream& { + return os << str.c_str(); + } + +} // namespace Catch + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif +// end catch_stringref.cpp +// start catch_tag_alias.cpp + +namespace Catch { + TagAlias::TagAlias(std::string const & _tag, SourceLineInfo _lineInfo): tag(_tag), lineInfo(_lineInfo) {} +} +// end catch_tag_alias.cpp +// start catch_tag_alias_autoregistrar.cpp + +namespace Catch { + + RegistrarForTagAliases::RegistrarForTagAliases(char const* alias, char const* tag, SourceLineInfo const& lineInfo) { + try { + getMutableRegistryHub().registerTagAlias(alias, tag, lineInfo); + } catch (...) { + // Do not throw when constructing global objects, instead register the exception to be processed later + getMutableRegistryHub().registerStartupException(); + } + } + +} +// end catch_tag_alias_autoregistrar.cpp +// start catch_tag_alias_registry.cpp + +#include <sstream> + +namespace Catch { + + TagAliasRegistry::~TagAliasRegistry() {} + + TagAlias const* TagAliasRegistry::find( std::string const& alias ) const { + auto it = m_registry.find( alias ); + if( it != m_registry.end() ) + return &(it->second); + else + return nullptr; + } + + std::string TagAliasRegistry::expandAliases( std::string const& unexpandedTestSpec ) const { + std::string expandedTestSpec = unexpandedTestSpec; + for( auto const& registryKvp : m_registry ) { + std::size_t pos = expandedTestSpec.find( registryKvp.first ); + if( pos != std::string::npos ) { + expandedTestSpec = expandedTestSpec.substr( 0, pos ) + + registryKvp.second.tag + + expandedTestSpec.substr( pos + registryKvp.first.size() ); + } + } + return expandedTestSpec; + } + + void TagAliasRegistry::add( std::string const& alias, std::string const& tag, SourceLineInfo const& lineInfo ) { + CATCH_ENFORCE( startsWith(alias, "[@") && endsWith(alias, ']'), + "error: tag alias, '" << alias << "' is not of the form [@alias name].\n" << lineInfo ); + + CATCH_ENFORCE( m_registry.insert(std::make_pair(alias, TagAlias(tag, lineInfo))).second, + "error: tag alias, '" << alias << "' already registered.\n" + << "\tFirst seen at: " << find(alias)->lineInfo << "\n" + << "\tRedefined at: " << lineInfo ); + } + + ITagAliasRegistry::~ITagAliasRegistry() {} + + ITagAliasRegistry const& ITagAliasRegistry::get() { + return getRegistryHub().getTagAliasRegistry(); + } + +} // end namespace Catch +// end catch_tag_alias_registry.cpp +// start catch_test_case_info.cpp + +#include <cctype> +#include <exception> +#include <algorithm> +#include <sstream> + +namespace Catch { + + TestCaseInfo::SpecialProperties parseSpecialTag( std::string const& tag ) { + if( startsWith( tag, '.' ) || + tag == "!hide" ) + return TestCaseInfo::IsHidden; + else if( tag == "!throws" ) + return TestCaseInfo::Throws; + else if( tag == "!shouldfail" ) + return TestCaseInfo::ShouldFail; + else if( tag == "!mayfail" ) + return TestCaseInfo::MayFail; + else if( tag == "!nonportable" ) + return TestCaseInfo::NonPortable; + else if( tag == "!benchmark" ) + return static_cast<TestCaseInfo::SpecialProperties>( TestCaseInfo::Benchmark | TestCaseInfo::IsHidden ); + else + return TestCaseInfo::None; + } + bool isReservedTag( std::string const& tag ) { + return parseSpecialTag( tag ) == TestCaseInfo::None && tag.size() > 0 && !std::isalnum( tag[0] ); + } + void enforceNotReservedTag( std::string const& tag, SourceLineInfo const& _lineInfo ) { + CATCH_ENFORCE( !isReservedTag(tag), + "Tag name: [" << tag << "] is not allowed.\n" + << "Tag names starting with non alpha-numeric characters are reserved\n" + << _lineInfo ); + } + + TestCase makeTestCase( ITestInvoker* _testCase, + std::string const& _className, + std::string const& _name, + std::string const& _descOrTags, + SourceLineInfo const& _lineInfo ) + { + bool isHidden = false; + + // Parse out tags + std::vector<std::string> tags; + std::string desc, tag; + bool inTag = false; + for (char c : _descOrTags) { + if( !inTag ) { + if( c == '[' ) + inTag = true; + else + desc += c; + } + else { + if( c == ']' ) { + TestCaseInfo::SpecialProperties prop = parseSpecialTag( tag ); + if( ( prop & TestCaseInfo::IsHidden ) != 0 ) + isHidden = true; + else if( prop == TestCaseInfo::None ) + enforceNotReservedTag( tag, _lineInfo ); + + tags.push_back( tag ); + tag.clear(); + inTag = false; + } + else + tag += c; + } + } + if( isHidden ) { + tags.push_back( "." ); + } + + TestCaseInfo info( _name, _className, desc, tags, _lineInfo ); + return TestCase( _testCase, info ); + } + + void setTags( TestCaseInfo& testCaseInfo, std::vector<std::string> tags ) { + std::sort(begin(tags), end(tags)); + tags.erase(std::unique(begin(tags), end(tags)), end(tags)); + testCaseInfo.lcaseTags.clear(); + + for( auto const& tag : tags ) { + std::string lcaseTag = toLower( tag ); + testCaseInfo.properties = static_cast<TestCaseInfo::SpecialProperties>( testCaseInfo.properties | parseSpecialTag( lcaseTag ) ); + testCaseInfo.lcaseTags.push_back( lcaseTag ); + } + testCaseInfo.tags = std::move(tags); + } + + TestCaseInfo::TestCaseInfo( std::string const& _name, + std::string const& _className, + std::string const& _description, + std::vector<std::string> const& _tags, + SourceLineInfo const& _lineInfo ) + : name( _name ), + className( _className ), + description( _description ), + lineInfo( _lineInfo ), + properties( None ) + { + setTags( *this, _tags ); + } + + bool TestCaseInfo::isHidden() const { + return ( properties & IsHidden ) != 0; + } + bool TestCaseInfo::throws() const { + return ( properties & Throws ) != 0; + } + bool TestCaseInfo::okToFail() const { + return ( properties & (ShouldFail | MayFail ) ) != 0; + } + bool TestCaseInfo::expectedToFail() const { + return ( properties & (ShouldFail ) ) != 0; + } + + std::string TestCaseInfo::tagsAsString() const { + std::string ret; + // '[' and ']' per tag + std::size_t full_size = 2 * tags.size(); + for (const auto& tag : tags) { + full_size += tag.size(); + } + ret.reserve(full_size); + for (const auto& tag : tags) { + ret.push_back('['); + ret.append(tag); + ret.push_back(']'); + } + + return ret; + } + + TestCase::TestCase( ITestInvoker* testCase, TestCaseInfo const& info ) : TestCaseInfo( info ), test( testCase ) {} + + TestCase TestCase::withName( std::string const& _newName ) const { + TestCase other( *this ); + other.name = _newName; + return other; + } + + void TestCase::invoke() const { + test->invoke(); + } + + bool TestCase::operator == ( TestCase const& other ) const { + return test.get() == other.test.get() && + name == other.name && + className == other.className; + } + + bool TestCase::operator < ( TestCase const& other ) const { + return name < other.name; + } + + TestCaseInfo const& TestCase::getTestCaseInfo() const + { + return *this; + } + +} // end namespace Catch +// end catch_test_case_info.cpp +// start catch_test_case_registry_impl.cpp + +#include <sstream> + +namespace Catch { + + std::vector<TestCase> sortTests( IConfig const& config, std::vector<TestCase> const& unsortedTestCases ) { + + std::vector<TestCase> sorted = unsortedTestCases; + + switch( config.runOrder() ) { + case RunTests::InLexicographicalOrder: + std::sort( sorted.begin(), sorted.end() ); + break; + case RunTests::InRandomOrder: + seedRng( config ); + RandomNumberGenerator::shuffle( sorted ); + break; + case RunTests::InDeclarationOrder: + // already in declaration order + break; + } + return sorted; + } + bool matchTest( TestCase const& testCase, TestSpec const& testSpec, IConfig const& config ) { + return testSpec.matches( testCase ) && ( config.allowThrows() || !testCase.throws() ); + } + + void enforceNoDuplicateTestCases( std::vector<TestCase> const& functions ) { + std::set<TestCase> seenFunctions; + for( auto const& function : functions ) { + auto prev = seenFunctions.insert( function ); + CATCH_ENFORCE( prev.second, + "error: TEST_CASE( \"" << function.name << "\" ) already defined.\n" + << "\tFirst seen at " << prev.first->getTestCaseInfo().lineInfo << "\n" + << "\tRedefined at " << function.getTestCaseInfo().lineInfo ); + } + } + + std::vector<TestCase> filterTests( std::vector<TestCase> const& testCases, TestSpec const& testSpec, IConfig const& config ) { + std::vector<TestCase> filtered; + filtered.reserve( testCases.size() ); + for( auto const& testCase : testCases ) + if( matchTest( testCase, testSpec, config ) ) + filtered.push_back( testCase ); + return filtered; + } + std::vector<TestCase> const& getAllTestCasesSorted( IConfig const& config ) { + return getRegistryHub().getTestCaseRegistry().getAllTestsSorted( config ); + } + + void TestRegistry::registerTest( TestCase const& testCase ) { + std::string name = testCase.getTestCaseInfo().name; + if( name.empty() ) { + ReusableStringStream rss; + rss << "Anonymous test case " << ++m_unnamedCount; + return registerTest( testCase.withName( rss.str() ) ); + } + m_functions.push_back( testCase ); + } + + std::vector<TestCase> const& TestRegistry::getAllTests() const { + return m_functions; + } + std::vector<TestCase> const& TestRegistry::getAllTestsSorted( IConfig const& config ) const { + if( m_sortedFunctions.empty() ) + enforceNoDuplicateTestCases( m_functions ); + + if( m_currentSortOrder != config.runOrder() || m_sortedFunctions.empty() ) { + m_sortedFunctions = sortTests( config, m_functions ); + m_currentSortOrder = config.runOrder(); + } + return m_sortedFunctions; + } + + /////////////////////////////////////////////////////////////////////////// + TestInvokerAsFunction::TestInvokerAsFunction( void(*testAsFunction)() ) noexcept : m_testAsFunction( testAsFunction ) {} + + void TestInvokerAsFunction::invoke() const { + m_testAsFunction(); + } + + std::string extractClassName( std::string const& classOrQualifiedMethodName ) { + std::string className = classOrQualifiedMethodName; + if( startsWith( className, '&' ) ) + { + std::size_t lastColons = className.rfind( "::" ); + std::size_t penultimateColons = className.rfind( "::", lastColons-1 ); + if( penultimateColons == std::string::npos ) + penultimateColons = 1; + className = className.substr( penultimateColons, lastColons-penultimateColons ); + } + return className; + } + +} // end namespace Catch +// end catch_test_case_registry_impl.cpp +// start catch_test_case_tracker.cpp + +#include <algorithm> +#include <assert.h> +#include <stdexcept> +#include <memory> +#include <sstream> + +#if defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wexit-time-destructors" +#endif + +namespace Catch { +namespace TestCaseTracking { + + NameAndLocation::NameAndLocation( std::string const& _name, SourceLineInfo const& _location ) + : name( _name ), + location( _location ) + {} + + ITracker::~ITracker() = default; + + TrackerContext& TrackerContext::instance() { + static TrackerContext s_instance; + return s_instance; + } + + ITracker& TrackerContext::startRun() { + m_rootTracker = std::make_shared<SectionTracker>( NameAndLocation( "{root}", CATCH_INTERNAL_LINEINFO ), *this, nullptr ); + m_currentTracker = nullptr; + m_runState = Executing; + return *m_rootTracker; + } + + void TrackerContext::endRun() { + m_rootTracker.reset(); + m_currentTracker = nullptr; + m_runState = NotStarted; + } + + void TrackerContext::startCycle() { + m_currentTracker = m_rootTracker.get(); + m_runState = Executing; + } + void TrackerContext::completeCycle() { + m_runState = CompletedCycle; + } + + bool TrackerContext::completedCycle() const { + return m_runState == CompletedCycle; + } + ITracker& TrackerContext::currentTracker() { + return *m_currentTracker; + } + void TrackerContext::setCurrentTracker( ITracker* tracker ) { + m_currentTracker = tracker; + } + + TrackerBase::TrackerHasName::TrackerHasName( NameAndLocation const& nameAndLocation ) : m_nameAndLocation( nameAndLocation ) {} + bool TrackerBase::TrackerHasName::operator ()( ITrackerPtr const& tracker ) const { + return + tracker->nameAndLocation().name == m_nameAndLocation.name && + tracker->nameAndLocation().location == m_nameAndLocation.location; + } + + TrackerBase::TrackerBase( NameAndLocation const& nameAndLocation, TrackerContext& ctx, ITracker* parent ) + : m_nameAndLocation( nameAndLocation ), + m_ctx( ctx ), + m_parent( parent ) + {} + + NameAndLocation const& TrackerBase::nameAndLocation() const { + return m_nameAndLocation; + } + bool TrackerBase::isComplete() const { + return m_runState == CompletedSuccessfully || m_runState == Failed; + } + bool TrackerBase::isSuccessfullyCompleted() const { + return m_runState == CompletedSuccessfully; + } + bool TrackerBase::isOpen() const { + return m_runState != NotStarted && !isComplete(); + } + bool TrackerBase::hasChildren() const { + return !m_children.empty(); + } + + void TrackerBase::addChild( ITrackerPtr const& child ) { + m_children.push_back( child ); + } + + ITrackerPtr TrackerBase::findChild( NameAndLocation const& nameAndLocation ) { + auto it = std::find_if( m_children.begin(), m_children.end(), TrackerHasName( nameAndLocation ) ); + return( it != m_children.end() ) + ? *it + : nullptr; + } + ITracker& TrackerBase::parent() { + assert( m_parent ); // Should always be non-null except for root + return *m_parent; + } + + void TrackerBase::openChild() { + if( m_runState != ExecutingChildren ) { + m_runState = ExecutingChildren; + if( m_parent ) + m_parent->openChild(); + } + } + + bool TrackerBase::isSectionTracker() const { return false; } + bool TrackerBase::isIndexTracker() const { return false; } + + void TrackerBase::open() { + m_runState = Executing; + moveToThis(); + if( m_parent ) + m_parent->openChild(); + } + + void TrackerBase::close() { + + // Close any still open children (e.g. generators) + while( &m_ctx.currentTracker() != this ) + m_ctx.currentTracker().close(); + + switch( m_runState ) { + case NeedsAnotherRun: + break; + + case Executing: + m_runState = CompletedSuccessfully; + break; + case ExecutingChildren: + if( m_children.empty() || m_children.back()->isComplete() ) + m_runState = CompletedSuccessfully; + break; + + case NotStarted: + case CompletedSuccessfully: + case Failed: + CATCH_INTERNAL_ERROR( "Illogical state: " << m_runState ); + + default: + CATCH_INTERNAL_ERROR( "Unknown state: " << m_runState ); + } + moveToParent(); + m_ctx.completeCycle(); + } + void TrackerBase::fail() { + m_runState = Failed; + if( m_parent ) + m_parent->markAsNeedingAnotherRun(); + moveToParent(); + m_ctx.completeCycle(); + } + void TrackerBase::markAsNeedingAnotherRun() { + m_runState = NeedsAnotherRun; + } + + void TrackerBase::moveToParent() { + assert( m_parent ); + m_ctx.setCurrentTracker( m_parent ); + } + void TrackerBase::moveToThis() { + m_ctx.setCurrentTracker( this ); + } + + SectionTracker::SectionTracker( NameAndLocation const& nameAndLocation, TrackerContext& ctx, ITracker* parent ) + : TrackerBase( nameAndLocation, ctx, parent ) + { + if( parent ) { + while( !parent->isSectionTracker() ) + parent = &parent->parent(); + + SectionTracker& parentSection = static_cast<SectionTracker&>( *parent ); + addNextFilters( parentSection.m_filters ); + } + } + + bool SectionTracker::isSectionTracker() const { return true; } + + SectionTracker& SectionTracker::acquire( TrackerContext& ctx, NameAndLocation const& nameAndLocation ) { + std::shared_ptr<SectionTracker> section; + + ITracker& currentTracker = ctx.currentTracker(); + if( ITrackerPtr childTracker = currentTracker.findChild( nameAndLocation ) ) { + assert( childTracker ); + assert( childTracker->isSectionTracker() ); + section = std::static_pointer_cast<SectionTracker>( childTracker ); + } + else { + section = std::make_shared<SectionTracker>( nameAndLocation, ctx, ¤tTracker ); + currentTracker.addChild( section ); + } + if( !ctx.completedCycle() ) + section->tryOpen(); + return *section; + } + + void SectionTracker::tryOpen() { + if( !isComplete() && (m_filters.empty() || m_filters[0].empty() || m_filters[0] == m_nameAndLocation.name ) ) + open(); + } + + void SectionTracker::addInitialFilters( std::vector<std::string> const& filters ) { + if( !filters.empty() ) { + m_filters.push_back(""); // Root - should never be consulted + m_filters.push_back(""); // Test Case - not a section filter + m_filters.insert( m_filters.end(), filters.begin(), filters.end() ); + } + } + void SectionTracker::addNextFilters( std::vector<std::string> const& filters ) { + if( filters.size() > 1 ) + m_filters.insert( m_filters.end(), ++filters.begin(), filters.end() ); + } + + IndexTracker::IndexTracker( NameAndLocation const& nameAndLocation, TrackerContext& ctx, ITracker* parent, int size ) + : TrackerBase( nameAndLocation, ctx, parent ), + m_size( size ) + {} + + bool IndexTracker::isIndexTracker() const { return true; } + + IndexTracker& IndexTracker::acquire( TrackerContext& ctx, NameAndLocation const& nameAndLocation, int size ) { + std::shared_ptr<IndexTracker> tracker; + + ITracker& currentTracker = ctx.currentTracker(); + if( ITrackerPtr childTracker = currentTracker.findChild( nameAndLocation ) ) { + assert( childTracker ); + assert( childTracker->isIndexTracker() ); + tracker = std::static_pointer_cast<IndexTracker>( childTracker ); + } + else { + tracker = std::make_shared<IndexTracker>( nameAndLocation, ctx, ¤tTracker, size ); + currentTracker.addChild( tracker ); + } + + if( !ctx.completedCycle() && !tracker->isComplete() ) { + if( tracker->m_runState != ExecutingChildren && tracker->m_runState != NeedsAnotherRun ) + tracker->moveNext(); + tracker->open(); + } + + return *tracker; + } + + int IndexTracker::index() const { return m_index; } + + void IndexTracker::moveNext() { + m_index++; + m_children.clear(); + } + + void IndexTracker::close() { + TrackerBase::close(); + if( m_runState == CompletedSuccessfully && m_index < m_size-1 ) + m_runState = Executing; + } + +} // namespace TestCaseTracking + +using TestCaseTracking::ITracker; +using TestCaseTracking::TrackerContext; +using TestCaseTracking::SectionTracker; +using TestCaseTracking::IndexTracker; + +} // namespace Catch + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif +// end catch_test_case_tracker.cpp +// start catch_test_registry.cpp + +namespace Catch { + + auto makeTestInvoker( void(*testAsFunction)() ) noexcept -> ITestInvoker* { + return new(std::nothrow) TestInvokerAsFunction( testAsFunction ); + } + + NameAndTags::NameAndTags( StringRef name_ , StringRef tags_ ) noexcept : name( name_ ), tags( tags_ ) {} + + AutoReg::AutoReg( ITestInvoker* invoker, SourceLineInfo const& lineInfo, StringRef classOrMethod, NameAndTags const& nameAndTags ) noexcept { + try { + getMutableRegistryHub() + .registerTest( + makeTestCase( + invoker, + extractClassName( classOrMethod ), + nameAndTags.name, + nameAndTags.tags, + lineInfo)); + } catch (...) { + // Do not throw when constructing global objects, instead register the exception to be processed later + getMutableRegistryHub().registerStartupException(); + } + } + + AutoReg::~AutoReg() = default; +} +// end catch_test_registry.cpp +// start catch_test_spec.cpp + +#include <algorithm> +#include <string> +#include <vector> +#include <memory> + +namespace Catch { + + TestSpec::Pattern::~Pattern() = default; + TestSpec::NamePattern::~NamePattern() = default; + TestSpec::TagPattern::~TagPattern() = default; + TestSpec::ExcludedPattern::~ExcludedPattern() = default; + + TestSpec::NamePattern::NamePattern( std::string const& name ) + : m_wildcardPattern( toLower( name ), CaseSensitive::No ) + {} + bool TestSpec::NamePattern::matches( TestCaseInfo const& testCase ) const { + return m_wildcardPattern.matches( toLower( testCase.name ) ); + } + + TestSpec::TagPattern::TagPattern( std::string const& tag ) : m_tag( toLower( tag ) ) {} + bool TestSpec::TagPattern::matches( TestCaseInfo const& testCase ) const { + return std::find(begin(testCase.lcaseTags), + end(testCase.lcaseTags), + m_tag) != end(testCase.lcaseTags); + } + + TestSpec::ExcludedPattern::ExcludedPattern( PatternPtr const& underlyingPattern ) : m_underlyingPattern( underlyingPattern ) {} + bool TestSpec::ExcludedPattern::matches( TestCaseInfo const& testCase ) const { return !m_underlyingPattern->matches( testCase ); } + + bool TestSpec::Filter::matches( TestCaseInfo const& testCase ) const { + // All patterns in a filter must match for the filter to be a match + for( auto const& pattern : m_patterns ) { + if( !pattern->matches( testCase ) ) + return false; + } + return true; + } + + bool TestSpec::hasFilters() const { + return !m_filters.empty(); + } + bool TestSpec::matches( TestCaseInfo const& testCase ) const { + // A TestSpec matches if any filter matches + for( auto const& filter : m_filters ) + if( filter.matches( testCase ) ) + return true; + return false; + } +} +// end catch_test_spec.cpp +// start catch_test_spec_parser.cpp + +namespace Catch { + + TestSpecParser::TestSpecParser( ITagAliasRegistry const& tagAliases ) : m_tagAliases( &tagAliases ) {} + + TestSpecParser& TestSpecParser::parse( std::string const& arg ) { + m_mode = None; + m_exclusion = false; + m_start = std::string::npos; + m_arg = m_tagAliases->expandAliases( arg ); + m_escapeChars.clear(); + for( m_pos = 0; m_pos < m_arg.size(); ++m_pos ) + visitChar( m_arg[m_pos] ); + if( m_mode == Name ) + addPattern<TestSpec::NamePattern>(); + return *this; + } + TestSpec TestSpecParser::testSpec() { + addFilter(); + return m_testSpec; + } + + void TestSpecParser::visitChar( char c ) { + if( m_mode == None ) { + switch( c ) { + case ' ': return; + case '~': m_exclusion = true; return; + case '[': return startNewMode( Tag, ++m_pos ); + case '"': return startNewMode( QuotedName, ++m_pos ); + case '\\': return escape(); + default: startNewMode( Name, m_pos ); break; + } + } + if( m_mode == Name ) { + if( c == ',' ) { + addPattern<TestSpec::NamePattern>(); + addFilter(); + } + else if( c == '[' ) { + if( subString() == "exclude:" ) + m_exclusion = true; + else + addPattern<TestSpec::NamePattern>(); + startNewMode( Tag, ++m_pos ); + } + else if( c == '\\' ) + escape(); + } + else if( m_mode == EscapedName ) + m_mode = Name; + else if( m_mode == QuotedName && c == '"' ) + addPattern<TestSpec::NamePattern>(); + else if( m_mode == Tag && c == ']' ) + addPattern<TestSpec::TagPattern>(); + } + void TestSpecParser::startNewMode( Mode mode, std::size_t start ) { + m_mode = mode; + m_start = start; + } + void TestSpecParser::escape() { + if( m_mode == None ) + m_start = m_pos; + m_mode = EscapedName; + m_escapeChars.push_back( m_pos ); + } + std::string TestSpecParser::subString() const { return m_arg.substr( m_start, m_pos - m_start ); } + + void TestSpecParser::addFilter() { + if( !m_currentFilter.m_patterns.empty() ) { + m_testSpec.m_filters.push_back( m_currentFilter ); + m_currentFilter = TestSpec::Filter(); + } + } + + TestSpec parseTestSpec( std::string const& arg ) { + return TestSpecParser( ITagAliasRegistry::get() ).parse( arg ).testSpec(); + } + +} // namespace Catch +// end catch_test_spec_parser.cpp +// start catch_timer.cpp + +#include <chrono> + +namespace Catch { + + auto getCurrentNanosecondsSinceEpoch() -> uint64_t { + return std::chrono::duration_cast<std::chrono::nanoseconds>( std::chrono::high_resolution_clock::now().time_since_epoch() ).count(); + } + + auto estimateClockResolution() -> uint64_t { + uint64_t sum = 0; + static const uint64_t iterations = 1000000; + + for( std::size_t i = 0; i < iterations; ++i ) { + + uint64_t ticks; + uint64_t baseTicks = getCurrentNanosecondsSinceEpoch(); + do { + ticks = getCurrentNanosecondsSinceEpoch(); + } + while( ticks == baseTicks ); + + auto delta = ticks - baseTicks; + sum += delta; + } + + // We're just taking the mean, here. To do better we could take the std. dev and exclude outliers + // - and potentially do more iterations if there's a high variance. + return sum/iterations; + } + auto getEstimatedClockResolution() -> uint64_t { + static auto s_resolution = estimateClockResolution(); + return s_resolution; + } + + void Timer::start() { + m_nanoseconds = getCurrentNanosecondsSinceEpoch(); + } + auto Timer::getElapsedNanoseconds() const -> uint64_t { + return getCurrentNanosecondsSinceEpoch() - m_nanoseconds; + } + auto Timer::getElapsedMicroseconds() const -> uint64_t { + return getElapsedNanoseconds()/1000; + } + auto Timer::getElapsedMilliseconds() const -> unsigned int { + return static_cast<unsigned int>(getElapsedMicroseconds()/1000); + } + auto Timer::getElapsedSeconds() const -> double { + return getElapsedMicroseconds()/1000000.0; + } + +} // namespace Catch +// end catch_timer.cpp +// start catch_tostring.cpp + +#if defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wexit-time-destructors" +# pragma clang diagnostic ignored "-Wglobal-constructors" +#endif + +// Enable specific decls locally +#if !defined(CATCH_CONFIG_ENABLE_CHRONO_STRINGMAKER) +#define CATCH_CONFIG_ENABLE_CHRONO_STRINGMAKER +#endif + +#include <cmath> +#include <iomanip> + +namespace Catch { + +namespace Detail { + + const std::string unprintableString = "{?}"; + + namespace { + const int hexThreshold = 255; + + struct Endianness { + enum Arch { Big, Little }; + + static Arch which() { + union _{ + int asInt; + char asChar[sizeof (int)]; + } u; + + u.asInt = 1; + return ( u.asChar[sizeof(int)-1] == 1 ) ? Big : Little; + } + }; + } + + std::string rawMemoryToString( const void *object, std::size_t size ) { + // Reverse order for little endian architectures + int i = 0, end = static_cast<int>( size ), inc = 1; + if( Endianness::which() == Endianness::Little ) { + i = end-1; + end = inc = -1; + } + + unsigned char const *bytes = static_cast<unsigned char const *>(object); + ReusableStringStream rss; + rss << "0x" << std::setfill('0') << std::hex; + for( ; i != end; i += inc ) + rss << std::setw(2) << static_cast<unsigned>(bytes[i]); + return rss.str(); + } +} + +template<typename T> +std::string fpToString( T value, int precision ) { + if (std::isnan(value)) { + return "nan"; + } + + ReusableStringStream rss; + rss << std::setprecision( precision ) + << std::fixed + << value; + std::string d = rss.str(); + std::size_t i = d.find_last_not_of( '0' ); + if( i != std::string::npos && i != d.size()-1 ) { + if( d[i] == '.' ) + i++; + d = d.substr( 0, i+1 ); + } + return d; +} + +//// ======================================================= //// +// +// Out-of-line defs for full specialization of StringMaker +// +//// ======================================================= //// + +std::string StringMaker<std::string>::convert(const std::string& str) { + if (!getCurrentContext().getConfig()->showInvisibles()) { + return '"' + str + '"'; + } + + std::string s("\""); + for (char c : str) { + switch (c) { + case '\n': + s.append("\\n"); + break; + case '\t': + s.append("\\t"); + break; + default: + s.push_back(c); + break; + } + } + s.append("\""); + return s; +} + +std::string StringMaker<std::wstring>::convert(const std::wstring& wstr) { + std::string s; + s.reserve(wstr.size()); + for (auto c : wstr) { + s += (c <= 0xff) ? static_cast<char>(c) : '?'; + } + return ::Catch::Detail::stringify(s); +} + +std::string StringMaker<char const*>::convert(char const* str) { + if (str) { + return ::Catch::Detail::stringify(std::string{ str }); + } else { + return{ "{null string}" }; + } +} +std::string StringMaker<char*>::convert(char* str) { + if (str) { + return ::Catch::Detail::stringify(std::string{ str }); + } else { + return{ "{null string}" }; + } +} +std::string StringMaker<wchar_t const*>::convert(wchar_t const * str) { + if (str) { + return ::Catch::Detail::stringify(std::wstring{ str }); + } else { + return{ "{null string}" }; + } +} +std::string StringMaker<wchar_t *>::convert(wchar_t * str) { + if (str) { + return ::Catch::Detail::stringify(std::wstring{ str }); + } else { + return{ "{null string}" }; + } +} + +std::string StringMaker<int>::convert(int value) { + return ::Catch::Detail::stringify(static_cast<long long>(value)); +} +std::string StringMaker<long>::convert(long value) { + return ::Catch::Detail::stringify(static_cast<long long>(value)); +} +std::string StringMaker<long long>::convert(long long value) { + ReusableStringStream rss; + rss << value; + if (value > Detail::hexThreshold) { + rss << " (0x" << std::hex << value << ')'; + } + return rss.str(); +} + +std::string StringMaker<unsigned int>::convert(unsigned int value) { + return ::Catch::Detail::stringify(static_cast<unsigned long long>(value)); +} +std::string StringMaker<unsigned long>::convert(unsigned long value) { + return ::Catch::Detail::stringify(static_cast<unsigned long long>(value)); +} +std::string StringMaker<unsigned long long>::convert(unsigned long long value) { + ReusableStringStream rss; + rss << value; + if (value > Detail::hexThreshold) { + rss << " (0x" << std::hex << value << ')'; + } + return rss.str(); +} + +std::string StringMaker<bool>::convert(bool b) { + return b ? "true" : "false"; +} + +std::string StringMaker<char>::convert(char value) { + if (value == '\r') { + return "'\\r'"; + } else if (value == '\f') { + return "'\\f'"; + } else if (value == '\n') { + return "'\\n'"; + } else if (value == '\t') { + return "'\\t'"; + } else if ('\0' <= value && value < ' ') { + return ::Catch::Detail::stringify(static_cast<unsigned int>(value)); + } else { + char chstr[] = "' '"; + chstr[1] = value; + return chstr; + } +} +std::string StringMaker<signed char>::convert(signed char c) { + return ::Catch::Detail::stringify(static_cast<char>(c)); +} +std::string StringMaker<unsigned char>::convert(unsigned char c) { + return ::Catch::Detail::stringify(static_cast<char>(c)); +} + +std::string StringMaker<std::nullptr_t>::convert(std::nullptr_t) { + return "nullptr"; +} + +std::string StringMaker<float>::convert(float value) { + return fpToString(value, 5) + 'f'; +} +std::string StringMaker<double>::convert(double value) { + return fpToString(value, 10); +} + +std::string ratio_string<std::atto>::symbol() { return "a"; } +std::string ratio_string<std::femto>::symbol() { return "f"; } +std::string ratio_string<std::pico>::symbol() { return "p"; } +std::string ratio_string<std::nano>::symbol() { return "n"; } +std::string ratio_string<std::micro>::symbol() { return "u"; } +std::string ratio_string<std::milli>::symbol() { return "m"; } + +} // end namespace Catch + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif + +// end catch_tostring.cpp +// start catch_totals.cpp + +namespace Catch { + + Counts Counts::operator - ( Counts const& other ) const { + Counts diff; + diff.passed = passed - other.passed; + diff.failed = failed - other.failed; + diff.failedButOk = failedButOk - other.failedButOk; + return diff; + } + + Counts& Counts::operator += ( Counts const& other ) { + passed += other.passed; + failed += other.failed; + failedButOk += other.failedButOk; + return *this; + } + + std::size_t Counts::total() const { + return passed + failed + failedButOk; + } + bool Counts::allPassed() const { + return failed == 0 && failedButOk == 0; + } + bool Counts::allOk() const { + return failed == 0; + } + + Totals Totals::operator - ( Totals const& other ) const { + Totals diff; + diff.assertions = assertions - other.assertions; + diff.testCases = testCases - other.testCases; + return diff; + } + + Totals& Totals::operator += ( Totals const& other ) { + assertions += other.assertions; + testCases += other.testCases; + return *this; + } + + Totals Totals::delta( Totals const& prevTotals ) const { + Totals diff = *this - prevTotals; + if( diff.assertions.failed > 0 ) + ++diff.testCases.failed; + else if( diff.assertions.failedButOk > 0 ) + ++diff.testCases.failedButOk; + else + ++diff.testCases.passed; + return diff; + } + +} +// end catch_totals.cpp +// start catch_uncaught_exceptions.cpp + +#include <exception> + +namespace Catch { + bool uncaught_exceptions() { +#if defined(CATCH_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS) + return std::uncaught_exceptions() > 0; +#else + return std::uncaught_exception(); +#endif + } +} // end namespace Catch +// end catch_uncaught_exceptions.cpp +// start catch_version.cpp + +#include <ostream> + +namespace Catch { + + Version::Version + ( unsigned int _majorVersion, + unsigned int _minorVersion, + unsigned int _patchNumber, + char const * const _branchName, + unsigned int _buildNumber ) + : majorVersion( _majorVersion ), + minorVersion( _minorVersion ), + patchNumber( _patchNumber ), + branchName( _branchName ), + buildNumber( _buildNumber ) + {} + + std::ostream& operator << ( std::ostream& os, Version const& version ) { + os << version.majorVersion << '.' + << version.minorVersion << '.' + << version.patchNumber; + // branchName is never null -> 0th char is \0 if it is empty + if (version.branchName[0]) { + os << '-' << version.branchName + << '.' << version.buildNumber; + } + return os; + } + + Version const& libraryVersion() { + static Version version( 2, 1, 2, "", 0 ); + return version; + } + +} +// end catch_version.cpp +// start catch_wildcard_pattern.cpp + +#include <sstream> + +namespace Catch { + + WildcardPattern::WildcardPattern( std::string const& pattern, + CaseSensitive::Choice caseSensitivity ) + : m_caseSensitivity( caseSensitivity ), + m_pattern( adjustCase( pattern ) ) + { + if( startsWith( m_pattern, '*' ) ) { + m_pattern = m_pattern.substr( 1 ); + m_wildcard = WildcardAtStart; + } + if( endsWith( m_pattern, '*' ) ) { + m_pattern = m_pattern.substr( 0, m_pattern.size()-1 ); + m_wildcard = static_cast<WildcardPosition>( m_wildcard | WildcardAtEnd ); + } + } + + bool WildcardPattern::matches( std::string const& str ) const { + switch( m_wildcard ) { + case NoWildcard: + return m_pattern == adjustCase( str ); + case WildcardAtStart: + return endsWith( adjustCase( str ), m_pattern ); + case WildcardAtEnd: + return startsWith( adjustCase( str ), m_pattern ); + case WildcardAtBothEnds: + return contains( adjustCase( str ), m_pattern ); + default: + CATCH_INTERNAL_ERROR( "Unknown enum" ); + } + } + + std::string WildcardPattern::adjustCase( std::string const& str ) const { + return m_caseSensitivity == CaseSensitive::No ? toLower( str ) : str; + } +} +// end catch_wildcard_pattern.cpp +// start catch_xmlwriter.cpp + +#include <iomanip> + +namespace Catch { + + XmlEncode::XmlEncode( std::string const& str, ForWhat forWhat ) + : m_str( str ), + m_forWhat( forWhat ) + {} + + void XmlEncode::encodeTo( std::ostream& os ) const { + + // Apostrophe escaping not necessary if we always use " to write attributes + // (see: http://www.w3.org/TR/xml/#syntax) + + for( std::size_t i = 0; i < m_str.size(); ++ i ) { + char c = m_str[i]; + switch( c ) { + case '<': os << "<"; break; + case '&': os << "&"; break; + + case '>': + // See: http://www.w3.org/TR/xml/#syntax + if( i > 2 && m_str[i-1] == ']' && m_str[i-2] == ']' ) + os << ">"; + else + os << c; + break; + + case '\"': + if( m_forWhat == ForAttributes ) + os << """; + else + os << c; + break; + + default: + // Escape control chars - based on contribution by @espenalb in PR #465 and + // by @mrpi PR #588 + if ( ( c >= 0 && c < '\x09' ) || ( c > '\x0D' && c < '\x20') || c=='\x7F' ) { + // see http://stackoverflow.com/questions/404107/why-are-control-characters-illegal-in-xml-1-0 + os << "\\x" << std::uppercase << std::hex << std::setfill('0') << std::setw(2) + << static_cast<int>( c ); + } + else + os << c; + } + } + } + + std::ostream& operator << ( std::ostream& os, XmlEncode const& xmlEncode ) { + xmlEncode.encodeTo( os ); + return os; + } + + XmlWriter::ScopedElement::ScopedElement( XmlWriter* writer ) + : m_writer( writer ) + {} + + XmlWriter::ScopedElement::ScopedElement( ScopedElement&& other ) noexcept + : m_writer( other.m_writer ){ + other.m_writer = nullptr; + } + XmlWriter::ScopedElement& XmlWriter::ScopedElement::operator=( ScopedElement&& other ) noexcept { + if ( m_writer ) { + m_writer->endElement(); + } + m_writer = other.m_writer; + other.m_writer = nullptr; + return *this; + } + + XmlWriter::ScopedElement::~ScopedElement() { + if( m_writer ) + m_writer->endElement(); + } + + XmlWriter::ScopedElement& XmlWriter::ScopedElement::writeText( std::string const& text, bool indent ) { + m_writer->writeText( text, indent ); + return *this; + } + + XmlWriter::XmlWriter( std::ostream& os ) : m_os( os ) + { + writeDeclaration(); + } + + XmlWriter::~XmlWriter() { + while( !m_tags.empty() ) + endElement(); + } + + XmlWriter& XmlWriter::startElement( std::string const& name ) { + ensureTagClosed(); + newlineIfNecessary(); + m_os << m_indent << '<' << name; + m_tags.push_back( name ); + m_indent += " "; + m_tagIsOpen = true; + return *this; + } + + XmlWriter::ScopedElement XmlWriter::scopedElement( std::string const& name ) { + ScopedElement scoped( this ); + startElement( name ); + return scoped; + } + + XmlWriter& XmlWriter::endElement() { + newlineIfNecessary(); + m_indent = m_indent.substr( 0, m_indent.size()-2 ); + if( m_tagIsOpen ) { + m_os << "/>"; + m_tagIsOpen = false; + } + else { + m_os << m_indent << "</" << m_tags.back() << ">"; + } + m_os << std::endl; + m_tags.pop_back(); + return *this; + } + + XmlWriter& XmlWriter::writeAttribute( std::string const& name, std::string const& attribute ) { + if( !name.empty() && !attribute.empty() ) + m_os << ' ' << name << "=\"" << XmlEncode( attribute, XmlEncode::ForAttributes ) << '"'; + return *this; + } + + XmlWriter& XmlWriter::writeAttribute( std::string const& name, bool attribute ) { + m_os << ' ' << name << "=\"" << ( attribute ? "true" : "false" ) << '"'; + return *this; + } + + XmlWriter& XmlWriter::writeText( std::string const& text, bool indent ) { + if( !text.empty() ){ + bool tagWasOpen = m_tagIsOpen; + ensureTagClosed(); + if( tagWasOpen && indent ) + m_os << m_indent; + m_os << XmlEncode( text ); + m_needsNewline = true; + } + return *this; + } + + XmlWriter& XmlWriter::writeComment( std::string const& text ) { + ensureTagClosed(); + m_os << m_indent << "<!--" << text << "-->"; + m_needsNewline = true; + return *this; + } + + void XmlWriter::writeStylesheetRef( std::string const& url ) { + m_os << "<?xml-stylesheet type=\"text/xsl\" href=\"" << url << "\"?>\n"; + } + + XmlWriter& XmlWriter::writeBlankLine() { + ensureTagClosed(); + m_os << '\n'; + return *this; + } + + void XmlWriter::ensureTagClosed() { + if( m_tagIsOpen ) { + m_os << ">" << std::endl; + m_tagIsOpen = false; + } + } + + void XmlWriter::writeDeclaration() { + m_os << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; + } + + void XmlWriter::newlineIfNecessary() { + if( m_needsNewline ) { + m_os << std::endl; + m_needsNewline = false; + } + } +} +// end catch_xmlwriter.cpp +// start catch_reporter_bases.cpp + +#include <cstring> +#include <cfloat> +#include <cstdio> +#include <assert.h> +#include <memory> + +namespace Catch { + void prepareExpandedExpression(AssertionResult& result) { + result.getExpandedExpression(); + } + + // Because formatting using c++ streams is stateful, drop down to C is required + // Alternatively we could use stringstream, but its performance is... not good. + std::string getFormattedDuration( double duration ) { + // Max exponent + 1 is required to represent the whole part + // + 1 for decimal point + // + 3 for the 3 decimal places + // + 1 for null terminator + const std::size_t maxDoubleSize = DBL_MAX_10_EXP + 1 + 1 + 3 + 1; + char buffer[maxDoubleSize]; + + // Save previous errno, to prevent sprintf from overwriting it + ErrnoGuard guard; +#ifdef _MSC_VER + sprintf_s(buffer, "%.3f", duration); +#else + sprintf(buffer, "%.3f", duration); +#endif + return std::string(buffer); + } + + TestEventListenerBase::TestEventListenerBase(ReporterConfig const & _config) + :StreamingReporterBase(_config) {} + + void TestEventListenerBase::assertionStarting(AssertionInfo const &) {} + + bool TestEventListenerBase::assertionEnded(AssertionStats const &) { + return false; + } + +} // end namespace Catch +// end catch_reporter_bases.cpp +// start catch_reporter_compact.cpp + +namespace { + +#ifdef CATCH_PLATFORM_MAC + const char* failedString() { return "FAILED"; } + const char* passedString() { return "PASSED"; } +#else + const char* failedString() { return "failed"; } + const char* passedString() { return "passed"; } +#endif + + // Colour::LightGrey + Catch::Colour::Code dimColour() { return Catch::Colour::FileName; } + + std::string bothOrAll( std::size_t count ) { + return count == 1 ? std::string() : + count == 2 ? "both " : "all " ; + } + +} // anon namespace + +namespace Catch { +namespace { +// Colour, message variants: +// - white: No tests ran. +// - red: Failed [both/all] N test cases, failed [both/all] M assertions. +// - white: Passed [both/all] N test cases (no assertions). +// - red: Failed N tests cases, failed M assertions. +// - green: Passed [both/all] N tests cases with M assertions. +void printTotals(std::ostream& out, const Totals& totals) { + if (totals.testCases.total() == 0) { + out << "No tests ran."; + } else if (totals.testCases.failed == totals.testCases.total()) { + Colour colour(Colour::ResultError); + const std::string qualify_assertions_failed = + totals.assertions.failed == totals.assertions.total() ? + bothOrAll(totals.assertions.failed) : std::string(); + out << + "Failed " << bothOrAll(totals.testCases.failed) + << pluralise(totals.testCases.failed, "test case") << ", " + "failed " << qualify_assertions_failed << + pluralise(totals.assertions.failed, "assertion") << '.'; + } else if (totals.assertions.total() == 0) { + out << + "Passed " << bothOrAll(totals.testCases.total()) + << pluralise(totals.testCases.total(), "test case") + << " (no assertions)."; + } else if (totals.assertions.failed) { + Colour colour(Colour::ResultError); + out << + "Failed " << pluralise(totals.testCases.failed, "test case") << ", " + "failed " << pluralise(totals.assertions.failed, "assertion") << '.'; + } else { + Colour colour(Colour::ResultSuccess); + out << + "Passed " << bothOrAll(totals.testCases.passed) + << pluralise(totals.testCases.passed, "test case") << + " with " << pluralise(totals.assertions.passed, "assertion") << '.'; + } +} + +// Implementation of CompactReporter formatting +class AssertionPrinter { +public: + AssertionPrinter& operator= (AssertionPrinter const&) = delete; + AssertionPrinter(AssertionPrinter const&) = delete; + AssertionPrinter(std::ostream& _stream, AssertionStats const& _stats, bool _printInfoMessages) + : stream(_stream) + , result(_stats.assertionResult) + , messages(_stats.infoMessages) + , itMessage(_stats.infoMessages.begin()) + , printInfoMessages(_printInfoMessages) {} + + void print() { + printSourceInfo(); + + itMessage = messages.begin(); + + switch (result.getResultType()) { + case ResultWas::Ok: + printResultType(Colour::ResultSuccess, passedString()); + printOriginalExpression(); + printReconstructedExpression(); + if (!result.hasExpression()) + printRemainingMessages(Colour::None); + else + printRemainingMessages(); + break; + case ResultWas::ExpressionFailed: + if (result.isOk()) + printResultType(Colour::ResultSuccess, failedString() + std::string(" - but was ok")); + else + printResultType(Colour::Error, failedString()); + printOriginalExpression(); + printReconstructedExpression(); + printRemainingMessages(); + break; + case ResultWas::ThrewException: + printResultType(Colour::Error, failedString()); + printIssue("unexpected exception with message:"); + printMessage(); + printExpressionWas(); + printRemainingMessages(); + break; + case ResultWas::FatalErrorCondition: + printResultType(Colour::Error, failedString()); + printIssue("fatal error condition with message:"); + printMessage(); + printExpressionWas(); + printRemainingMessages(); + break; + case ResultWas::DidntThrowException: + printResultType(Colour::Error, failedString()); + printIssue("expected exception, got none"); + printExpressionWas(); + printRemainingMessages(); + break; + case ResultWas::Info: + printResultType(Colour::None, "info"); + printMessage(); + printRemainingMessages(); + break; + case ResultWas::Warning: + printResultType(Colour::None, "warning"); + printMessage(); + printRemainingMessages(); + break; + case ResultWas::ExplicitFailure: + printResultType(Colour::Error, failedString()); + printIssue("explicitly"); + printRemainingMessages(Colour::None); + break; + // These cases are here to prevent compiler warnings + case ResultWas::Unknown: + case ResultWas::FailureBit: + case ResultWas::Exception: + printResultType(Colour::Error, "** internal error **"); + break; + } + } + +private: + void printSourceInfo() const { + Colour colourGuard(Colour::FileName); + stream << result.getSourceInfo() << ':'; + } + + void printResultType(Colour::Code colour, std::string const& passOrFail) const { + if (!passOrFail.empty()) { + { + Colour colourGuard(colour); + stream << ' ' << passOrFail; + } + stream << ':'; + } + } + + void printIssue(std::string const& issue) const { + stream << ' ' << issue; + } + + void printExpressionWas() { + if (result.hasExpression()) { + stream << ';'; + { + Colour colour(dimColour()); + stream << " expression was:"; + } + printOriginalExpression(); + } + } + + void printOriginalExpression() const { + if (result.hasExpression()) { + stream << ' ' << result.getExpression(); + } + } + + void printReconstructedExpression() const { + if (result.hasExpandedExpression()) { + { + Colour colour(dimColour()); + stream << " for: "; + } + stream << result.getExpandedExpression(); + } + } + + void printMessage() { + if (itMessage != messages.end()) { + stream << " '" << itMessage->message << '\''; + ++itMessage; + } + } + + void printRemainingMessages(Colour::Code colour = dimColour()) { + if (itMessage == messages.end()) + return; + + // using messages.end() directly yields (or auto) compilation error: + std::vector<MessageInfo>::const_iterator itEnd = messages.end(); + const std::size_t N = static_cast<std::size_t>(std::distance(itMessage, itEnd)); + + { + Colour colourGuard(colour); + stream << " with " << pluralise(N, "message") << ':'; + } + + for (; itMessage != itEnd; ) { + // If this assertion is a warning ignore any INFO messages + if (printInfoMessages || itMessage->type != ResultWas::Info) { + stream << " '" << itMessage->message << '\''; + if (++itMessage != itEnd) { + Colour colourGuard(dimColour()); + stream << " and"; + } + } + } + } + +private: + std::ostream& stream; + AssertionResult const& result; + std::vector<MessageInfo> messages; + std::vector<MessageInfo>::const_iterator itMessage; + bool printInfoMessages; +}; + +} // anon namespace + + std::string CompactReporter::getDescription() { + return "Reports test results on a single line, suitable for IDEs"; + } + + ReporterPreferences CompactReporter::getPreferences() const { + ReporterPreferences prefs; + prefs.shouldRedirectStdOut = false; + return prefs; + } + + void CompactReporter::noMatchingTestCases( std::string const& spec ) { + stream << "No test cases matched '" << spec << '\'' << std::endl; + } + + void CompactReporter::assertionStarting( AssertionInfo const& ) {} + + bool CompactReporter::assertionEnded( AssertionStats const& _assertionStats ) { + AssertionResult const& result = _assertionStats.assertionResult; + + bool printInfoMessages = true; + + // Drop out if result was successful and we're not printing those + if( !m_config->includeSuccessfulResults() && result.isOk() ) { + if( result.getResultType() != ResultWas::Warning ) + return false; + printInfoMessages = false; + } + + AssertionPrinter printer( stream, _assertionStats, printInfoMessages ); + printer.print(); + + stream << std::endl; + return true; + } + + void CompactReporter::sectionEnded(SectionStats const& _sectionStats) { + if (m_config->showDurations() == ShowDurations::Always) { + stream << getFormattedDuration(_sectionStats.durationInSeconds) << " s: " << _sectionStats.sectionInfo.name << std::endl; + } + } + + void CompactReporter::testRunEnded( TestRunStats const& _testRunStats ) { + printTotals( stream, _testRunStats.totals ); + stream << '\n' << std::endl; + StreamingReporterBase::testRunEnded( _testRunStats ); + } + + CompactReporter::~CompactReporter() {} + + CATCH_REGISTER_REPORTER( "compact", CompactReporter ) + +} // end namespace Catch +// end catch_reporter_compact.cpp +// start catch_reporter_console.cpp + +#include <cfloat> +#include <cstdio> + +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable:4061) // Not all labels are EXPLICITLY handled in switch + // Note that 4062 (not all labels are handled + // and default is missing) is enabled +#endif + +namespace Catch { + +namespace { + +// Formatter impl for ConsoleReporter +class ConsoleAssertionPrinter { +public: + ConsoleAssertionPrinter& operator= (ConsoleAssertionPrinter const&) = delete; + ConsoleAssertionPrinter(ConsoleAssertionPrinter const&) = delete; + ConsoleAssertionPrinter(std::ostream& _stream, AssertionStats const& _stats, bool _printInfoMessages) + : stream(_stream), + stats(_stats), + result(_stats.assertionResult), + colour(Colour::None), + message(result.getMessage()), + messages(_stats.infoMessages), + printInfoMessages(_printInfoMessages) { + switch (result.getResultType()) { + case ResultWas::Ok: + colour = Colour::Success; + passOrFail = "PASSED"; + //if( result.hasMessage() ) + if (_stats.infoMessages.size() == 1) + messageLabel = "with message"; + if (_stats.infoMessages.size() > 1) + messageLabel = "with messages"; + break; + case ResultWas::ExpressionFailed: + if (result.isOk()) { + colour = Colour::Success; + passOrFail = "FAILED - but was ok"; + } else { + colour = Colour::Error; + passOrFail = "FAILED"; + } + if (_stats.infoMessages.size() == 1) + messageLabel = "with message"; + if (_stats.infoMessages.size() > 1) + messageLabel = "with messages"; + break; + case ResultWas::ThrewException: + colour = Colour::Error; + passOrFail = "FAILED"; + messageLabel = "due to unexpected exception with "; + if (_stats.infoMessages.size() == 1) + messageLabel += "message"; + if (_stats.infoMessages.size() > 1) + messageLabel += "messages"; + break; + case ResultWas::FatalErrorCondition: + colour = Colour::Error; + passOrFail = "FAILED"; + messageLabel = "due to a fatal error condition"; + break; + case ResultWas::DidntThrowException: + colour = Colour::Error; + passOrFail = "FAILED"; + messageLabel = "because no exception was thrown where one was expected"; + break; + case ResultWas::Info: + messageLabel = "info"; + break; + case ResultWas::Warning: + messageLabel = "warning"; + break; + case ResultWas::ExplicitFailure: + passOrFail = "FAILED"; + colour = Colour::Error; + if (_stats.infoMessages.size() == 1) + messageLabel = "explicitly with message"; + if (_stats.infoMessages.size() > 1) + messageLabel = "explicitly with messages"; + break; + // These cases are here to prevent compiler warnings + case ResultWas::Unknown: + case ResultWas::FailureBit: + case ResultWas::Exception: + passOrFail = "** internal error **"; + colour = Colour::Error; + break; + } + } + + void print() const { + printSourceInfo(); + if (stats.totals.assertions.total() > 0) { + if (result.isOk()) + stream << '\n'; + printResultType(); + printOriginalExpression(); + printReconstructedExpression(); + } else { + stream << '\n'; + } + printMessage(); + } + +private: + void printResultType() const { + if (!passOrFail.empty()) { + Colour colourGuard(colour); + stream << passOrFail << ":\n"; + } + } + void printOriginalExpression() const { + if (result.hasExpression()) { + Colour colourGuard(Colour::OriginalExpression); + stream << " "; + stream << result.getExpressionInMacro(); + stream << '\n'; + } + } + void printReconstructedExpression() const { + if (result.hasExpandedExpression()) { + stream << "with expansion:\n"; + Colour colourGuard(Colour::ReconstructedExpression); + stream << Column(result.getExpandedExpression()).indent(2) << '\n'; + } + } + void printMessage() const { + if (!messageLabel.empty()) + stream << messageLabel << ':' << '\n'; + for (auto const& msg : messages) { + // If this assertion is a warning ignore any INFO messages + if (printInfoMessages || msg.type != ResultWas::Info) + stream << Column(msg.message).indent(2) << '\n'; + } + } + void printSourceInfo() const { + Colour colourGuard(Colour::FileName); + stream << result.getSourceInfo() << ": "; + } + + std::ostream& stream; + AssertionStats const& stats; + AssertionResult const& result; + Colour::Code colour; + std::string passOrFail; + std::string messageLabel; + std::string message; + std::vector<MessageInfo> messages; + bool printInfoMessages; +}; + +std::size_t makeRatio(std::size_t number, std::size_t total) { + std::size_t ratio = total > 0 ? CATCH_CONFIG_CONSOLE_WIDTH * number / total : 0; + return (ratio == 0 && number > 0) ? 1 : ratio; +} + +std::size_t& findMax(std::size_t& i, std::size_t& j, std::size_t& k) { + if (i > j && i > k) + return i; + else if (j > k) + return j; + else + return k; +} + +struct ColumnInfo { + enum Justification { Left, Right }; + std::string name; + int width; + Justification justification; +}; +struct ColumnBreak {}; +struct RowBreak {}; + +class Duration { + enum class Unit { + Auto, + Nanoseconds, + Microseconds, + Milliseconds, + Seconds, + Minutes + }; + static const uint64_t s_nanosecondsInAMicrosecond = 1000; + static const uint64_t s_nanosecondsInAMillisecond = 1000 * s_nanosecondsInAMicrosecond; + static const uint64_t s_nanosecondsInASecond = 1000 * s_nanosecondsInAMillisecond; + static const uint64_t s_nanosecondsInAMinute = 60 * s_nanosecondsInASecond; + + uint64_t m_inNanoseconds; + Unit m_units; + +public: + explicit Duration(uint64_t inNanoseconds, Unit units = Unit::Auto) + : m_inNanoseconds(inNanoseconds), + m_units(units) { + if (m_units == Unit::Auto) { + if (m_inNanoseconds < s_nanosecondsInAMicrosecond) + m_units = Unit::Nanoseconds; + else if (m_inNanoseconds < s_nanosecondsInAMillisecond) + m_units = Unit::Microseconds; + else if (m_inNanoseconds < s_nanosecondsInASecond) + m_units = Unit::Milliseconds; + else if (m_inNanoseconds < s_nanosecondsInAMinute) + m_units = Unit::Seconds; + else + m_units = Unit::Minutes; + } + + } + + auto value() const -> double { + switch (m_units) { + case Unit::Microseconds: + return m_inNanoseconds / static_cast<double>(s_nanosecondsInAMicrosecond); + case Unit::Milliseconds: + return m_inNanoseconds / static_cast<double>(s_nanosecondsInAMillisecond); + case Unit::Seconds: + return m_inNanoseconds / static_cast<double>(s_nanosecondsInASecond); + case Unit::Minutes: + return m_inNanoseconds / static_cast<double>(s_nanosecondsInAMinute); + default: + return static_cast<double>(m_inNanoseconds); + } + } + auto unitsAsString() const -> std::string { + switch (m_units) { + case Unit::Nanoseconds: + return "ns"; + case Unit::Microseconds: + return "µs"; + case Unit::Milliseconds: + return "ms"; + case Unit::Seconds: + return "s"; + case Unit::Minutes: + return "m"; + default: + return "** internal error **"; + } + + } + friend auto operator << (std::ostream& os, Duration const& duration) -> std::ostream& { + return os << duration.value() << " " << duration.unitsAsString(); + } +}; +} // end anon namespace + +class TablePrinter { + std::ostream& m_os; + std::vector<ColumnInfo> m_columnInfos; + std::ostringstream m_oss; + int m_currentColumn = -1; + bool m_isOpen = false; + +public: + TablePrinter( std::ostream& os, std::vector<ColumnInfo> columnInfos ) + : m_os( os ), + m_columnInfos( std::move( columnInfos ) ) {} + + auto columnInfos() const -> std::vector<ColumnInfo> const& { + return m_columnInfos; + } + + void open() { + if (!m_isOpen) { + m_isOpen = true; + *this << RowBreak(); + for (auto const& info : m_columnInfos) + *this << info.name << ColumnBreak(); + *this << RowBreak(); + m_os << Catch::getLineOfChars<'-'>() << "\n"; + } + } + void close() { + if (m_isOpen) { + *this << RowBreak(); + m_os << std::endl; + m_isOpen = false; + } + } + + template<typename T> + friend TablePrinter& operator << (TablePrinter& tp, T const& value) { + tp.m_oss << value; + return tp; + } + + friend TablePrinter& operator << (TablePrinter& tp, ColumnBreak) { + auto colStr = tp.m_oss.str(); + // This takes account of utf8 encodings + auto strSize = Catch::StringRef(colStr).numberOfCharacters(); + tp.m_oss.str(""); + tp.open(); + if (tp.m_currentColumn == static_cast<int>(tp.m_columnInfos.size() - 1)) { + tp.m_currentColumn = -1; + tp.m_os << "\n"; + } + tp.m_currentColumn++; + + auto colInfo = tp.m_columnInfos[tp.m_currentColumn]; + auto padding = (strSize + 2 < static_cast<std::size_t>(colInfo.width)) + ? std::string(colInfo.width - (strSize + 2), ' ') + : std::string(); + if (colInfo.justification == ColumnInfo::Left) + tp.m_os << colStr << padding << " "; + else + tp.m_os << padding << colStr << " "; + return tp; + } + + friend TablePrinter& operator << (TablePrinter& tp, RowBreak) { + if (tp.m_currentColumn > 0) { + tp.m_os << "\n"; + tp.m_currentColumn = -1; + } + return tp; + } +}; + +ConsoleReporter::ConsoleReporter(ReporterConfig const& config) + : StreamingReporterBase(config), + m_tablePrinter(new TablePrinter(config.stream(), + { + { "benchmark name", CATCH_CONFIG_CONSOLE_WIDTH - 32, ColumnInfo::Left }, + { "iters", 8, ColumnInfo::Right }, + { "elapsed ns", 14, ColumnInfo::Right }, + { "average", 14, ColumnInfo::Right } + })) {} +ConsoleReporter::~ConsoleReporter() = default; + +std::string ConsoleReporter::getDescription() { + return "Reports test results as plain lines of text"; +} + +void ConsoleReporter::noMatchingTestCases(std::string const& spec) { + stream << "No test cases matched '" << spec << '\'' << std::endl; +} + +void ConsoleReporter::assertionStarting(AssertionInfo const&) {} + +bool ConsoleReporter::assertionEnded(AssertionStats const& _assertionStats) { + AssertionResult const& result = _assertionStats.assertionResult; + + bool includeResults = m_config->includeSuccessfulResults() || !result.isOk(); + + // Drop out if result was successful but we're not printing them. + if (!includeResults && result.getResultType() != ResultWas::Warning) + return false; + + lazyPrint(); + + ConsoleAssertionPrinter printer(stream, _assertionStats, includeResults); + printer.print(); + stream << std::endl; + return true; +} + +void ConsoleReporter::sectionStarting(SectionInfo const& _sectionInfo) { + m_headerPrinted = false; + StreamingReporterBase::sectionStarting(_sectionInfo); +} +void ConsoleReporter::sectionEnded(SectionStats const& _sectionStats) { + m_tablePrinter->close(); + if (_sectionStats.missingAssertions) { + lazyPrint(); + Colour colour(Colour::ResultError); + if (m_sectionStack.size() > 1) + stream << "\nNo assertions in section"; + else + stream << "\nNo assertions in test case"; + stream << " '" << _sectionStats.sectionInfo.name << "'\n" << std::endl; + } + if (m_config->showDurations() == ShowDurations::Always) { + stream << getFormattedDuration(_sectionStats.durationInSeconds) << " s: " << _sectionStats.sectionInfo.name << std::endl; + } + if (m_headerPrinted) { + m_headerPrinted = false; + } + StreamingReporterBase::sectionEnded(_sectionStats); +} + +void ConsoleReporter::benchmarkStarting(BenchmarkInfo const& info) { + lazyPrintWithoutClosingBenchmarkTable(); + + auto nameCol = Column( info.name ).width( static_cast<std::size_t>( m_tablePrinter->columnInfos()[0].width - 2 ) ); + + bool firstLine = true; + for (auto line : nameCol) { + if (!firstLine) + (*m_tablePrinter) << ColumnBreak() << ColumnBreak() << ColumnBreak(); + else + firstLine = false; + + (*m_tablePrinter) << line << ColumnBreak(); + } +} +void ConsoleReporter::benchmarkEnded(BenchmarkStats const& stats) { + Duration average(stats.elapsedTimeInNanoseconds / stats.iterations); + (*m_tablePrinter) + << stats.iterations << ColumnBreak() + << stats.elapsedTimeInNanoseconds << ColumnBreak() + << average << ColumnBreak(); +} + +void ConsoleReporter::testCaseEnded(TestCaseStats const& _testCaseStats) { + m_tablePrinter->close(); + StreamingReporterBase::testCaseEnded(_testCaseStats); + m_headerPrinted = false; +} +void ConsoleReporter::testGroupEnded(TestGroupStats const& _testGroupStats) { + if (currentGroupInfo.used) { + printSummaryDivider(); + stream << "Summary for group '" << _testGroupStats.groupInfo.name << "':\n"; + printTotals(_testGroupStats.totals); + stream << '\n' << std::endl; + } + StreamingReporterBase::testGroupEnded(_testGroupStats); +} +void ConsoleReporter::testRunEnded(TestRunStats const& _testRunStats) { + printTotalsDivider(_testRunStats.totals); + printTotals(_testRunStats.totals); + stream << std::endl; + StreamingReporterBase::testRunEnded(_testRunStats); +} + +void ConsoleReporter::lazyPrint() { + + m_tablePrinter->close(); + lazyPrintWithoutClosingBenchmarkTable(); +} + +void ConsoleReporter::lazyPrintWithoutClosingBenchmarkTable() { + + if (!currentTestRunInfo.used) + lazyPrintRunInfo(); + if (!currentGroupInfo.used) + lazyPrintGroupInfo(); + + if (!m_headerPrinted) { + printTestCaseAndSectionHeader(); + m_headerPrinted = true; + } +} +void ConsoleReporter::lazyPrintRunInfo() { + stream << '\n' << getLineOfChars<'~'>() << '\n'; + Colour colour(Colour::SecondaryText); + stream << currentTestRunInfo->name + << " is a Catch v" << libraryVersion() << " host application.\n" + << "Run with -? for options\n\n"; + + if (m_config->rngSeed() != 0) + stream << "Randomness seeded to: " << m_config->rngSeed() << "\n\n"; + + currentTestRunInfo.used = true; +} +void ConsoleReporter::lazyPrintGroupInfo() { + if (!currentGroupInfo->name.empty() && currentGroupInfo->groupsCounts > 1) { + printClosedHeader("Group: " + currentGroupInfo->name); + currentGroupInfo.used = true; + } +} +void ConsoleReporter::printTestCaseAndSectionHeader() { + assert(!m_sectionStack.empty()); + printOpenHeader(currentTestCaseInfo->name); + + if (m_sectionStack.size() > 1) { + Colour colourGuard(Colour::Headers); + + auto + it = m_sectionStack.begin() + 1, // Skip first section (test case) + itEnd = m_sectionStack.end(); + for (; it != itEnd; ++it) + printHeaderString(it->name, 2); + } + + SourceLineInfo lineInfo = m_sectionStack.back().lineInfo; + + if (!lineInfo.empty()) { + stream << getLineOfChars<'-'>() << '\n'; + Colour colourGuard(Colour::FileName); + stream << lineInfo << '\n'; + } + stream << getLineOfChars<'.'>() << '\n' << std::endl; +} + +void ConsoleReporter::printClosedHeader(std::string const& _name) { + printOpenHeader(_name); + stream << getLineOfChars<'.'>() << '\n'; +} +void ConsoleReporter::printOpenHeader(std::string const& _name) { + stream << getLineOfChars<'-'>() << '\n'; + { + Colour colourGuard(Colour::Headers); + printHeaderString(_name); + } +} + +// if string has a : in first line will set indent to follow it on +// subsequent lines +void ConsoleReporter::printHeaderString(std::string const& _string, std::size_t indent) { + std::size_t i = _string.find(": "); + if (i != std::string::npos) + i += 2; + else + i = 0; + stream << Column(_string).indent(indent + i).initialIndent(indent) << '\n'; +} + +struct SummaryColumn { + + SummaryColumn( std::string _label, Colour::Code _colour ) + : label( std::move( _label ) ), + colour( _colour ) {} + SummaryColumn addRow( std::size_t count ) { + ReusableStringStream rss; + rss << count; + std::string row = rss.str(); + for (auto& oldRow : rows) { + while (oldRow.size() < row.size()) + oldRow = ' ' + oldRow; + while (oldRow.size() > row.size()) + row = ' ' + row; + } + rows.push_back(row); + return *this; + } + + std::string label; + Colour::Code colour; + std::vector<std::string> rows; + +}; + +void ConsoleReporter::printTotals( Totals const& totals ) { + if (totals.testCases.total() == 0) { + stream << Colour(Colour::Warning) << "No tests ran\n"; + } else if (totals.assertions.total() > 0 && totals.testCases.allPassed()) { + stream << Colour(Colour::ResultSuccess) << "All tests passed"; + stream << " (" + << pluralise(totals.assertions.passed, "assertion") << " in " + << pluralise(totals.testCases.passed, "test case") << ')' + << '\n'; + } else { + + std::vector<SummaryColumn> columns; + columns.push_back(SummaryColumn("", Colour::None) + .addRow(totals.testCases.total()) + .addRow(totals.assertions.total())); + columns.push_back(SummaryColumn("passed", Colour::Success) + .addRow(totals.testCases.passed) + .addRow(totals.assertions.passed)); + columns.push_back(SummaryColumn("failed", Colour::ResultError) + .addRow(totals.testCases.failed) + .addRow(totals.assertions.failed)); + columns.push_back(SummaryColumn("failed as expected", Colour::ResultExpectedFailure) + .addRow(totals.testCases.failedButOk) + .addRow(totals.assertions.failedButOk)); + + printSummaryRow("test cases", columns, 0); + printSummaryRow("assertions", columns, 1); + } +} +void ConsoleReporter::printSummaryRow(std::string const& label, std::vector<SummaryColumn> const& cols, std::size_t row) { + for (auto col : cols) { + std::string value = col.rows[row]; + if (col.label.empty()) { + stream << label << ": "; + if (value != "0") + stream << value; + else + stream << Colour(Colour::Warning) << "- none -"; + } else if (value != "0") { + stream << Colour(Colour::LightGrey) << " | "; + stream << Colour(col.colour) + << value << ' ' << col.label; + } + } + stream << '\n'; +} + +void ConsoleReporter::printTotalsDivider(Totals const& totals) { + if (totals.testCases.total() > 0) { + std::size_t failedRatio = makeRatio(totals.testCases.failed, totals.testCases.total()); + std::size_t failedButOkRatio = makeRatio(totals.testCases.failedButOk, totals.testCases.total()); + std::size_t passedRatio = makeRatio(totals.testCases.passed, totals.testCases.total()); + while (failedRatio + failedButOkRatio + passedRatio < CATCH_CONFIG_CONSOLE_WIDTH - 1) + findMax(failedRatio, failedButOkRatio, passedRatio)++; + while (failedRatio + failedButOkRatio + passedRatio > CATCH_CONFIG_CONSOLE_WIDTH - 1) + findMax(failedRatio, failedButOkRatio, passedRatio)--; + + stream << Colour(Colour::Error) << std::string(failedRatio, '='); + stream << Colour(Colour::ResultExpectedFailure) << std::string(failedButOkRatio, '='); + if (totals.testCases.allPassed()) + stream << Colour(Colour::ResultSuccess) << std::string(passedRatio, '='); + else + stream << Colour(Colour::Success) << std::string(passedRatio, '='); + } else { + stream << Colour(Colour::Warning) << std::string(CATCH_CONFIG_CONSOLE_WIDTH - 1, '='); + } + stream << '\n'; +} +void ConsoleReporter::printSummaryDivider() { + stream << getLineOfChars<'-'>() << '\n'; +} + +CATCH_REGISTER_REPORTER("console", ConsoleReporter) + +} // end namespace Catch + +#if defined(_MSC_VER) +#pragma warning(pop) +#endif +// end catch_reporter_console.cpp +// start catch_reporter_junit.cpp + +#include <assert.h> +#include <sstream> +#include <ctime> +#include <algorithm> + +namespace Catch { + + namespace { + std::string getCurrentTimestamp() { + // Beware, this is not reentrant because of backward compatibility issues + // Also, UTC only, again because of backward compatibility (%z is C++11) + time_t rawtime; + std::time(&rawtime); + auto const timeStampSize = sizeof("2017-01-16T17:06:45Z"); + +#ifdef _MSC_VER + std::tm timeInfo = {}; + gmtime_s(&timeInfo, &rawtime); +#else + std::tm* timeInfo; + timeInfo = std::gmtime(&rawtime); +#endif + + char timeStamp[timeStampSize]; + const char * const fmt = "%Y-%m-%dT%H:%M:%SZ"; + +#ifdef _MSC_VER + std::strftime(timeStamp, timeStampSize, fmt, &timeInfo); +#else + std::strftime(timeStamp, timeStampSize, fmt, timeInfo); +#endif + return std::string(timeStamp); + } + + std::string fileNameTag(const std::vector<std::string> &tags) { + auto it = std::find_if(begin(tags), + end(tags), + [] (std::string const& tag) {return tag.front() == '#'; }); + if (it != tags.end()) + return it->substr(1); + return std::string(); + } + } // anonymous namespace + + JunitReporter::JunitReporter( ReporterConfig const& _config ) + : CumulativeReporterBase( _config ), + xml( _config.stream() ) + { + m_reporterPrefs.shouldRedirectStdOut = true; + } + + JunitReporter::~JunitReporter() {} + + std::string JunitReporter::getDescription() { + return "Reports test results in an XML format that looks like Ant's junitreport target"; + } + + void JunitReporter::noMatchingTestCases( std::string const& /*spec*/ ) {} + + void JunitReporter::testRunStarting( TestRunInfo const& runInfo ) { + CumulativeReporterBase::testRunStarting( runInfo ); + xml.startElement( "testsuites" ); + } + + void JunitReporter::testGroupStarting( GroupInfo const& groupInfo ) { + suiteTimer.start(); + stdOutForSuite.clear(); + stdErrForSuite.clear(); + unexpectedExceptions = 0; + CumulativeReporterBase::testGroupStarting( groupInfo ); + } + + void JunitReporter::testCaseStarting( TestCaseInfo const& testCaseInfo ) { + m_okToFail = testCaseInfo.okToFail(); + } + + bool JunitReporter::assertionEnded( AssertionStats const& assertionStats ) { + if( assertionStats.assertionResult.getResultType() == ResultWas::ThrewException && !m_okToFail ) + unexpectedExceptions++; + return CumulativeReporterBase::assertionEnded( assertionStats ); + } + + void JunitReporter::testCaseEnded( TestCaseStats const& testCaseStats ) { + stdOutForSuite += testCaseStats.stdOut; + stdErrForSuite += testCaseStats.stdErr; + CumulativeReporterBase::testCaseEnded( testCaseStats ); + } + + void JunitReporter::testGroupEnded( TestGroupStats const& testGroupStats ) { + double suiteTime = suiteTimer.getElapsedSeconds(); + CumulativeReporterBase::testGroupEnded( testGroupStats ); + writeGroup( *m_testGroups.back(), suiteTime ); + } + + void JunitReporter::testRunEndedCumulative() { + xml.endElement(); + } + + void JunitReporter::writeGroup( TestGroupNode const& groupNode, double suiteTime ) { + XmlWriter::ScopedElement e = xml.scopedElement( "testsuite" ); + TestGroupStats const& stats = groupNode.value; + xml.writeAttribute( "name", stats.groupInfo.name ); + xml.writeAttribute( "errors", unexpectedExceptions ); + xml.writeAttribute( "failures", stats.totals.assertions.failed-unexpectedExceptions ); + xml.writeAttribute( "tests", stats.totals.assertions.total() ); + xml.writeAttribute( "hostname", "tbd" ); // !TBD + if( m_config->showDurations() == ShowDurations::Never ) + xml.writeAttribute( "time", "" ); + else + xml.writeAttribute( "time", suiteTime ); + xml.writeAttribute( "timestamp", getCurrentTimestamp() ); + + // Write test cases + for( auto const& child : groupNode.children ) + writeTestCase( *child ); + + xml.scopedElement( "system-out" ).writeText( trim( stdOutForSuite ), false ); + xml.scopedElement( "system-err" ).writeText( trim( stdErrForSuite ), false ); + } + + void JunitReporter::writeTestCase( TestCaseNode const& testCaseNode ) { + TestCaseStats const& stats = testCaseNode.value; + + // All test cases have exactly one section - which represents the + // test case itself. That section may have 0-n nested sections + assert( testCaseNode.children.size() == 1 ); + SectionNode const& rootSection = *testCaseNode.children.front(); + + std::string className = stats.testInfo.className; + + if( className.empty() ) { + className = fileNameTag(stats.testInfo.tags); + if ( className.empty() ) + className = "global"; + } + + if ( !m_config->name().empty() ) + className = m_config->name() + "." + className; + + writeSection( className, "", rootSection ); + } + + void JunitReporter::writeSection( std::string const& className, + std::string const& rootName, + SectionNode const& sectionNode ) { + std::string name = trim( sectionNode.stats.sectionInfo.name ); + if( !rootName.empty() ) + name = rootName + '/' + name; + + if( !sectionNode.assertions.empty() || + !sectionNode.stdOut.empty() || + !sectionNode.stdErr.empty() ) { + XmlWriter::ScopedElement e = xml.scopedElement( "testcase" ); + if( className.empty() ) { + xml.writeAttribute( "classname", name ); + xml.writeAttribute( "name", "root" ); + } + else { + xml.writeAttribute( "classname", className ); + xml.writeAttribute( "name", name ); + } + xml.writeAttribute( "time", ::Catch::Detail::stringify( sectionNode.stats.durationInSeconds ) ); + + writeAssertions( sectionNode ); + + if( !sectionNode.stdOut.empty() ) + xml.scopedElement( "system-out" ).writeText( trim( sectionNode.stdOut ), false ); + if( !sectionNode.stdErr.empty() ) + xml.scopedElement( "system-err" ).writeText( trim( sectionNode.stdErr ), false ); + } + for( auto const& childNode : sectionNode.childSections ) + if( className.empty() ) + writeSection( name, "", *childNode ); + else + writeSection( className, name, *childNode ); + } + + void JunitReporter::writeAssertions( SectionNode const& sectionNode ) { + for( auto const& assertion : sectionNode.assertions ) + writeAssertion( assertion ); + } + + void JunitReporter::writeAssertion( AssertionStats const& stats ) { + AssertionResult const& result = stats.assertionResult; + if( !result.isOk() ) { + std::string elementName; + switch( result.getResultType() ) { + case ResultWas::ThrewException: + case ResultWas::FatalErrorCondition: + elementName = "error"; + break; + case ResultWas::ExplicitFailure: + elementName = "failure"; + break; + case ResultWas::ExpressionFailed: + elementName = "failure"; + break; + case ResultWas::DidntThrowException: + elementName = "failure"; + break; + + // We should never see these here: + case ResultWas::Info: + case ResultWas::Warning: + case ResultWas::Ok: + case ResultWas::Unknown: + case ResultWas::FailureBit: + case ResultWas::Exception: + elementName = "internalError"; + break; + } + + XmlWriter::ScopedElement e = xml.scopedElement( elementName ); + + xml.writeAttribute( "message", result.getExpandedExpression() ); + xml.writeAttribute( "type", result.getTestMacroName() ); + + ReusableStringStream rss; + if( !result.getMessage().empty() ) + rss << result.getMessage() << '\n'; + for( auto const& msg : stats.infoMessages ) + if( msg.type == ResultWas::Info ) + rss << msg.message << '\n'; + + rss << "at " << result.getSourceInfo(); + xml.writeText( rss.str(), false ); + } + } + + CATCH_REGISTER_REPORTER( "junit", JunitReporter ) + +} // end namespace Catch +// end catch_reporter_junit.cpp +// start catch_reporter_multi.cpp + +namespace Catch { + + void MultipleReporters::add( IStreamingReporterPtr&& reporter ) { + m_reporters.push_back( std::move( reporter ) ); + } + + ReporterPreferences MultipleReporters::getPreferences() const { + return m_reporters[0]->getPreferences(); + } + + std::set<Verbosity> MultipleReporters::getSupportedVerbosities() { + return std::set<Verbosity>{ }; + } + + void MultipleReporters::noMatchingTestCases( std::string const& spec ) { + for( auto const& reporter : m_reporters ) + reporter->noMatchingTestCases( spec ); + } + + void MultipleReporters::benchmarkStarting( BenchmarkInfo const& benchmarkInfo ) { + for( auto const& reporter : m_reporters ) + reporter->benchmarkStarting( benchmarkInfo ); + } + void MultipleReporters::benchmarkEnded( BenchmarkStats const& benchmarkStats ) { + for( auto const& reporter : m_reporters ) + reporter->benchmarkEnded( benchmarkStats ); + } + + void MultipleReporters::testRunStarting( TestRunInfo const& testRunInfo ) { + for( auto const& reporter : m_reporters ) + reporter->testRunStarting( testRunInfo ); + } + + void MultipleReporters::testGroupStarting( GroupInfo const& groupInfo ) { + for( auto const& reporter : m_reporters ) + reporter->testGroupStarting( groupInfo ); + } + + void MultipleReporters::testCaseStarting( TestCaseInfo const& testInfo ) { + for( auto const& reporter : m_reporters ) + reporter->testCaseStarting( testInfo ); + } + + void MultipleReporters::sectionStarting( SectionInfo const& sectionInfo ) { + for( auto const& reporter : m_reporters ) + reporter->sectionStarting( sectionInfo ); + } + + void MultipleReporters::assertionStarting( AssertionInfo const& assertionInfo ) { + for( auto const& reporter : m_reporters ) + reporter->assertionStarting( assertionInfo ); + } + + // The return value indicates if the messages buffer should be cleared: + bool MultipleReporters::assertionEnded( AssertionStats const& assertionStats ) { + bool clearBuffer = false; + for( auto const& reporter : m_reporters ) + clearBuffer |= reporter->assertionEnded( assertionStats ); + return clearBuffer; + } + + void MultipleReporters::sectionEnded( SectionStats const& sectionStats ) { + for( auto const& reporter : m_reporters ) + reporter->sectionEnded( sectionStats ); + } + + void MultipleReporters::testCaseEnded( TestCaseStats const& testCaseStats ) { + for( auto const& reporter : m_reporters ) + reporter->testCaseEnded( testCaseStats ); + } + + void MultipleReporters::testGroupEnded( TestGroupStats const& testGroupStats ) { + for( auto const& reporter : m_reporters ) + reporter->testGroupEnded( testGroupStats ); + } + + void MultipleReporters::testRunEnded( TestRunStats const& testRunStats ) { + for( auto const& reporter : m_reporters ) + reporter->testRunEnded( testRunStats ); + } + + void MultipleReporters::skipTest( TestCaseInfo const& testInfo ) { + for( auto const& reporter : m_reporters ) + reporter->skipTest( testInfo ); + } + + bool MultipleReporters::isMulti() const { + return true; + } + +} // end namespace Catch +// end catch_reporter_multi.cpp +// start catch_reporter_xml.cpp + +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable:4061) // Not all labels are EXPLICITLY handled in switch + // Note that 4062 (not all labels are handled + // and default is missing) is enabled +#endif + +namespace Catch { + XmlReporter::XmlReporter( ReporterConfig const& _config ) + : StreamingReporterBase( _config ), + m_xml(_config.stream()) + { + m_reporterPrefs.shouldRedirectStdOut = true; + } + + XmlReporter::~XmlReporter() = default; + + std::string XmlReporter::getDescription() { + return "Reports test results as an XML document"; + } + + std::string XmlReporter::getStylesheetRef() const { + return std::string(); + } + + void XmlReporter::writeSourceInfo( SourceLineInfo const& sourceInfo ) { + m_xml + .writeAttribute( "filename", sourceInfo.file ) + .writeAttribute( "line", sourceInfo.line ); + } + + void XmlReporter::noMatchingTestCases( std::string const& s ) { + StreamingReporterBase::noMatchingTestCases( s ); + } + + void XmlReporter::testRunStarting( TestRunInfo const& testInfo ) { + StreamingReporterBase::testRunStarting( testInfo ); + std::string stylesheetRef = getStylesheetRef(); + if( !stylesheetRef.empty() ) + m_xml.writeStylesheetRef( stylesheetRef ); + m_xml.startElement( "Catch" ); + if( !m_config->name().empty() ) + m_xml.writeAttribute( "name", m_config->name() ); + } + + void XmlReporter::testGroupStarting( GroupInfo const& groupInfo ) { + StreamingReporterBase::testGroupStarting( groupInfo ); + m_xml.startElement( "Group" ) + .writeAttribute( "name", groupInfo.name ); + } + + void XmlReporter::testCaseStarting( TestCaseInfo const& testInfo ) { + StreamingReporterBase::testCaseStarting(testInfo); + m_xml.startElement( "TestCase" ) + .writeAttribute( "name", trim( testInfo.name ) ) + .writeAttribute( "description", testInfo.description ) + .writeAttribute( "tags", testInfo.tagsAsString() ); + + writeSourceInfo( testInfo.lineInfo ); + + if ( m_config->showDurations() == ShowDurations::Always ) + m_testCaseTimer.start(); + m_xml.ensureTagClosed(); + } + + void XmlReporter::sectionStarting( SectionInfo const& sectionInfo ) { + StreamingReporterBase::sectionStarting( sectionInfo ); + if( m_sectionDepth++ > 0 ) { + m_xml.startElement( "Section" ) + .writeAttribute( "name", trim( sectionInfo.name ) ) + .writeAttribute( "description", sectionInfo.description ); + writeSourceInfo( sectionInfo.lineInfo ); + m_xml.ensureTagClosed(); + } + } + + void XmlReporter::assertionStarting( AssertionInfo const& ) { } + + bool XmlReporter::assertionEnded( AssertionStats const& assertionStats ) { + + AssertionResult const& result = assertionStats.assertionResult; + + bool includeResults = m_config->includeSuccessfulResults() || !result.isOk(); + + if( includeResults || result.getResultType() == ResultWas::Warning ) { + // Print any info messages in <Info> tags. + for( auto const& msg : assertionStats.infoMessages ) { + if( msg.type == ResultWas::Info && includeResults ) { + m_xml.scopedElement( "Info" ) + .writeText( msg.message ); + } else if ( msg.type == ResultWas::Warning ) { + m_xml.scopedElement( "Warning" ) + .writeText( msg.message ); + } + } + } + + // Drop out if result was successful but we're not printing them. + if( !includeResults && result.getResultType() != ResultWas::Warning ) + return true; + + // Print the expression if there is one. + if( result.hasExpression() ) { + m_xml.startElement( "Expression" ) + .writeAttribute( "success", result.succeeded() ) + .writeAttribute( "type", result.getTestMacroName() ); + + writeSourceInfo( result.getSourceInfo() ); + + m_xml.scopedElement( "Original" ) + .writeText( result.getExpression() ); + m_xml.scopedElement( "Expanded" ) + .writeText( result.getExpandedExpression() ); + } + + // And... Print a result applicable to each result type. + switch( result.getResultType() ) { + case ResultWas::ThrewException: + m_xml.startElement( "Exception" ); + writeSourceInfo( result.getSourceInfo() ); + m_xml.writeText( result.getMessage() ); + m_xml.endElement(); + break; + case ResultWas::FatalErrorCondition: + m_xml.startElement( "FatalErrorCondition" ); + writeSourceInfo( result.getSourceInfo() ); + m_xml.writeText( result.getMessage() ); + m_xml.endElement(); + break; + case ResultWas::Info: + m_xml.scopedElement( "Info" ) + .writeText( result.getMessage() ); + break; + case ResultWas::Warning: + // Warning will already have been written + break; + case ResultWas::ExplicitFailure: + m_xml.startElement( "Failure" ); + writeSourceInfo( result.getSourceInfo() ); + m_xml.writeText( result.getMessage() ); + m_xml.endElement(); + break; + default: + break; + } + + if( result.hasExpression() ) + m_xml.endElement(); + + return true; + } + + void XmlReporter::sectionEnded( SectionStats const& sectionStats ) { + StreamingReporterBase::sectionEnded( sectionStats ); + if( --m_sectionDepth > 0 ) { + XmlWriter::ScopedElement e = m_xml.scopedElement( "OverallResults" ); + e.writeAttribute( "successes", sectionStats.assertions.passed ); + e.writeAttribute( "failures", sectionStats.assertions.failed ); + e.writeAttribute( "expectedFailures", sectionStats.assertions.failedButOk ); + + if ( m_config->showDurations() == ShowDurations::Always ) + e.writeAttribute( "durationInSeconds", sectionStats.durationInSeconds ); + + m_xml.endElement(); + } + } + + void XmlReporter::testCaseEnded( TestCaseStats const& testCaseStats ) { + StreamingReporterBase::testCaseEnded( testCaseStats ); + XmlWriter::ScopedElement e = m_xml.scopedElement( "OverallResult" ); + e.writeAttribute( "success", testCaseStats.totals.assertions.allOk() ); + + if ( m_config->showDurations() == ShowDurations::Always ) + e.writeAttribute( "durationInSeconds", m_testCaseTimer.getElapsedSeconds() ); + + if( !testCaseStats.stdOut.empty() ) + m_xml.scopedElement( "StdOut" ).writeText( trim( testCaseStats.stdOut ), false ); + if( !testCaseStats.stdErr.empty() ) + m_xml.scopedElement( "StdErr" ).writeText( trim( testCaseStats.stdErr ), false ); + + m_xml.endElement(); + } + + void XmlReporter::testGroupEnded( TestGroupStats const& testGroupStats ) { + StreamingReporterBase::testGroupEnded( testGroupStats ); + // TODO: Check testGroupStats.aborting and act accordingly. + m_xml.scopedElement( "OverallResults" ) + .writeAttribute( "successes", testGroupStats.totals.assertions.passed ) + .writeAttribute( "failures", testGroupStats.totals.assertions.failed ) + .writeAttribute( "expectedFailures", testGroupStats.totals.assertions.failedButOk ); + m_xml.endElement(); + } + + void XmlReporter::testRunEnded( TestRunStats const& testRunStats ) { + StreamingReporterBase::testRunEnded( testRunStats ); + m_xml.scopedElement( "OverallResults" ) + .writeAttribute( "successes", testRunStats.totals.assertions.passed ) + .writeAttribute( "failures", testRunStats.totals.assertions.failed ) + .writeAttribute( "expectedFailures", testRunStats.totals.assertions.failedButOk ); + m_xml.endElement(); + } + + CATCH_REGISTER_REPORTER( "xml", XmlReporter ) + +} // end namespace Catch + +#if defined(_MSC_VER) +#pragma warning(pop) +#endif +// end catch_reporter_xml.cpp + +namespace Catch { + LeakDetector leakDetector; +} + +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + +// end catch_impl.hpp +#endif + +#ifdef CATCH_CONFIG_MAIN +// start catch_default_main.hpp + +#ifndef __OBJC__ + +#if defined(WIN32) && defined(_UNICODE) && !defined(DO_NOT_USE_WMAIN) +// Standard C/C++ Win32 Unicode wmain entry point +extern "C" int wmain (int argc, wchar_t * argv[], wchar_t * []) { +#else +// Standard C/C++ main entry point +int main (int argc, char * argv[]) { +#endif + + return Catch::Session().run( argc, argv ); +} + +#else // __OBJC__ + +// Objective-C entry point +int main (int argc, char * const argv[]) { +#if !CATCH_ARC_ENABLED + NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; +#endif + + Catch::registerTestMethods(); + int result = Catch::Session().run( argc, (char**)argv ); + +#if !CATCH_ARC_ENABLED + [pool drain]; +#endif + + return result; +} + +#endif // __OBJC__ + +// end catch_default_main.hpp +#endif + +#if !defined(CATCH_CONFIG_IMPL_ONLY) + +#ifdef CLARA_CONFIG_MAIN_NOT_DEFINED +# undef CLARA_CONFIG_MAIN +#endif + +#if !defined(CATCH_CONFIG_DISABLE) +////// +// If this config identifier is defined then all CATCH macros are prefixed with CATCH_ +#ifdef CATCH_CONFIG_PREFIX_ALL + +#define CATCH_REQUIRE( ... ) INTERNAL_CATCH_TEST( "CATCH_REQUIRE", Catch::ResultDisposition::Normal, __VA_ARGS__ ) +#define CATCH_REQUIRE_FALSE( ... ) INTERNAL_CATCH_TEST( "CATCH_REQUIRE_FALSE", Catch::ResultDisposition::Normal | Catch::ResultDisposition::FalseTest, __VA_ARGS__ ) + +#define CATCH_REQUIRE_THROWS( ... ) INTERNAL_CATCH_THROWS( "CATCH_REQUIRE_THROWS", Catch::ResultDisposition::Normal, "", __VA_ARGS__ ) +#define CATCH_REQUIRE_THROWS_AS( expr, exceptionType ) INTERNAL_CATCH_THROWS_AS( "CATCH_REQUIRE_THROWS_AS", exceptionType, Catch::ResultDisposition::Normal, expr ) +#define CATCH_REQUIRE_THROWS_WITH( expr, matcher ) INTERNAL_CATCH_THROWS_STR_MATCHES( "CATCH_REQUIRE_THROWS_WITH", Catch::ResultDisposition::Normal, matcher, expr ) +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CATCH_REQUIRE_THROWS_MATCHES( expr, exceptionType, matcher ) INTERNAL_CATCH_THROWS_MATCHES( "CATCH_REQUIRE_THROWS_MATCHES", exceptionType, Catch::ResultDisposition::Normal, matcher, expr ) +#endif// CATCH_CONFIG_DISABLE_MATCHERS +#define CATCH_REQUIRE_NOTHROW( ... ) INTERNAL_CATCH_NO_THROW( "CATCH_REQUIRE_NOTHROW", Catch::ResultDisposition::Normal, __VA_ARGS__ ) + +#define CATCH_CHECK( ... ) INTERNAL_CATCH_TEST( "CATCH_CHECK", Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define CATCH_CHECK_FALSE( ... ) INTERNAL_CATCH_TEST( "CATCH_CHECK_FALSE", Catch::ResultDisposition::ContinueOnFailure | Catch::ResultDisposition::FalseTest, __VA_ARGS__ ) +#define CATCH_CHECKED_IF( ... ) INTERNAL_CATCH_IF( "CATCH_CHECKED_IF", Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define CATCH_CHECKED_ELSE( ... ) INTERNAL_CATCH_ELSE( "CATCH_CHECKED_ELSE", Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define CATCH_CHECK_NOFAIL( ... ) INTERNAL_CATCH_TEST( "CATCH_CHECK_NOFAIL", Catch::ResultDisposition::ContinueOnFailure | Catch::ResultDisposition::SuppressFail, __VA_ARGS__ ) + +#define CATCH_CHECK_THROWS( ... ) INTERNAL_CATCH_THROWS( "CATCH_CHECK_THROWS", Catch::ResultDisposition::ContinueOnFailure, "", __VA_ARGS__ ) +#define CATCH_CHECK_THROWS_AS( expr, exceptionType ) INTERNAL_CATCH_THROWS_AS( "CATCH_CHECK_THROWS_AS", exceptionType, Catch::ResultDisposition::ContinueOnFailure, expr ) +#define CATCH_CHECK_THROWS_WITH( expr, matcher ) INTERNAL_CATCH_THROWS_STR_MATCHES( "CATCH_CHECK_THROWS_WITH", Catch::ResultDisposition::ContinueOnFailure, matcher, expr ) +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CATCH_CHECK_THROWS_MATCHES( expr, exceptionType, matcher ) INTERNAL_CATCH_THROWS_MATCHES( "CATCH_CHECK_THROWS_MATCHES", exceptionType, Catch::ResultDisposition::ContinueOnFailure, matcher, expr ) +#endif // CATCH_CONFIG_DISABLE_MATCHERS +#define CATCH_CHECK_NOTHROW( ... ) INTERNAL_CATCH_NO_THROW( "CATCH_CHECK_NOTHROW", Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) + +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CATCH_CHECK_THAT( arg, matcher ) INTERNAL_CHECK_THAT( "CATCH_CHECK_THAT", matcher, Catch::ResultDisposition::ContinueOnFailure, arg ) + +#define CATCH_REQUIRE_THAT( arg, matcher ) INTERNAL_CHECK_THAT( "CATCH_REQUIRE_THAT", matcher, Catch::ResultDisposition::Normal, arg ) +#endif // CATCH_CONFIG_DISABLE_MATCHERS + +#define CATCH_INFO( msg ) INTERNAL_CATCH_INFO( "CATCH_INFO", msg ) +#define CATCH_WARN( msg ) INTERNAL_CATCH_MSG( "CATCH_WARN", Catch::ResultWas::Warning, Catch::ResultDisposition::ContinueOnFailure, msg ) +#define CATCH_CAPTURE( msg ) INTERNAL_CATCH_INFO( "CATCH_CAPTURE", #msg " := " << ::Catch::Detail::stringify(msg) ) + +#define CATCH_TEST_CASE( ... ) INTERNAL_CATCH_TESTCASE( __VA_ARGS__ ) +#define CATCH_TEST_CASE_METHOD( className, ... ) INTERNAL_CATCH_TEST_CASE_METHOD( className, __VA_ARGS__ ) +#define CATCH_METHOD_AS_TEST_CASE( method, ... ) INTERNAL_CATCH_METHOD_AS_TEST_CASE( method, __VA_ARGS__ ) +#define CATCH_REGISTER_TEST_CASE( Function, ... ) INTERNAL_CATCH_REGISTER_TESTCASE( Function, __VA_ARGS__ ) +#define CATCH_SECTION( ... ) INTERNAL_CATCH_SECTION( __VA_ARGS__ ) +#define CATCH_FAIL( ... ) INTERNAL_CATCH_MSG( "CATCH_FAIL", Catch::ResultWas::ExplicitFailure, Catch::ResultDisposition::Normal, __VA_ARGS__ ) +#define CATCH_FAIL_CHECK( ... ) INTERNAL_CATCH_MSG( "CATCH_FAIL_CHECK", Catch::ResultWas::ExplicitFailure, Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define CATCH_SUCCEED( ... ) INTERNAL_CATCH_MSG( "CATCH_SUCCEED", Catch::ResultWas::Ok, Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) + +#define CATCH_ANON_TEST_CASE() INTERNAL_CATCH_TESTCASE() + +// "BDD-style" convenience wrappers +#define CATCH_SCENARIO( ... ) CATCH_TEST_CASE( "Scenario: " __VA_ARGS__ ) +#define CATCH_SCENARIO_METHOD( className, ... ) INTERNAL_CATCH_TEST_CASE_METHOD( className, "Scenario: " __VA_ARGS__ ) +#define CATCH_GIVEN( desc ) CATCH_SECTION( std::string( "Given: ") + desc ) +#define CATCH_WHEN( desc ) CATCH_SECTION( std::string( " When: ") + desc ) +#define CATCH_AND_WHEN( desc ) CATCH_SECTION( std::string( " And: ") + desc ) +#define CATCH_THEN( desc ) CATCH_SECTION( std::string( " Then: ") + desc ) +#define CATCH_AND_THEN( desc ) CATCH_SECTION( std::string( " And: ") + desc ) + +// If CATCH_CONFIG_PREFIX_ALL is not defined then the CATCH_ prefix is not required +#else + +#define REQUIRE( ... ) INTERNAL_CATCH_TEST( "REQUIRE", Catch::ResultDisposition::Normal, __VA_ARGS__ ) +#define REQUIRE_FALSE( ... ) INTERNAL_CATCH_TEST( "REQUIRE_FALSE", Catch::ResultDisposition::Normal | Catch::ResultDisposition::FalseTest, __VA_ARGS__ ) + +#define REQUIRE_THROWS( ... ) INTERNAL_CATCH_THROWS( "REQUIRE_THROWS", Catch::ResultDisposition::Normal, __VA_ARGS__ ) +#define REQUIRE_THROWS_AS( expr, exceptionType ) INTERNAL_CATCH_THROWS_AS( "REQUIRE_THROWS_AS", exceptionType, Catch::ResultDisposition::Normal, expr ) +#define REQUIRE_THROWS_WITH( expr, matcher ) INTERNAL_CATCH_THROWS_STR_MATCHES( "REQUIRE_THROWS_WITH", Catch::ResultDisposition::Normal, matcher, expr ) +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define REQUIRE_THROWS_MATCHES( expr, exceptionType, matcher ) INTERNAL_CATCH_THROWS_MATCHES( "REQUIRE_THROWS_MATCHES", exceptionType, Catch::ResultDisposition::Normal, matcher, expr ) +#endif // CATCH_CONFIG_DISABLE_MATCHERS +#define REQUIRE_NOTHROW( ... ) INTERNAL_CATCH_NO_THROW( "REQUIRE_NOTHROW", Catch::ResultDisposition::Normal, __VA_ARGS__ ) + +#define CHECK( ... ) INTERNAL_CATCH_TEST( "CHECK", Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define CHECK_FALSE( ... ) INTERNAL_CATCH_TEST( "CHECK_FALSE", Catch::ResultDisposition::ContinueOnFailure | Catch::ResultDisposition::FalseTest, __VA_ARGS__ ) +#define CHECKED_IF( ... ) INTERNAL_CATCH_IF( "CHECKED_IF", Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define CHECKED_ELSE( ... ) INTERNAL_CATCH_ELSE( "CHECKED_ELSE", Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define CHECK_NOFAIL( ... ) INTERNAL_CATCH_TEST( "CHECK_NOFAIL", Catch::ResultDisposition::ContinueOnFailure | Catch::ResultDisposition::SuppressFail, __VA_ARGS__ ) + +#define CHECK_THROWS( ... ) INTERNAL_CATCH_THROWS( "CHECK_THROWS", Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define CHECK_THROWS_AS( expr, exceptionType ) INTERNAL_CATCH_THROWS_AS( "CHECK_THROWS_AS", exceptionType, Catch::ResultDisposition::ContinueOnFailure, expr ) +#define CHECK_THROWS_WITH( expr, matcher ) INTERNAL_CATCH_THROWS_STR_MATCHES( "CHECK_THROWS_WITH", Catch::ResultDisposition::ContinueOnFailure, matcher, expr ) +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CHECK_THROWS_MATCHES( expr, exceptionType, matcher ) INTERNAL_CATCH_THROWS_MATCHES( "CHECK_THROWS_MATCHES", exceptionType, Catch::ResultDisposition::ContinueOnFailure, matcher, expr ) +#endif // CATCH_CONFIG_DISABLE_MATCHERS +#define CHECK_NOTHROW( ... ) INTERNAL_CATCH_NO_THROW( "CHECK_NOTHROW", Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) + +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CHECK_THAT( arg, matcher ) INTERNAL_CHECK_THAT( "CHECK_THAT", matcher, Catch::ResultDisposition::ContinueOnFailure, arg ) + +#define REQUIRE_THAT( arg, matcher ) INTERNAL_CHECK_THAT( "REQUIRE_THAT", matcher, Catch::ResultDisposition::Normal, arg ) +#endif // CATCH_CONFIG_DISABLE_MATCHERS + +#define INFO( msg ) INTERNAL_CATCH_INFO( "INFO", msg ) +#define WARN( msg ) INTERNAL_CATCH_MSG( "WARN", Catch::ResultWas::Warning, Catch::ResultDisposition::ContinueOnFailure, msg ) +#define CAPTURE( msg ) INTERNAL_CATCH_INFO( "CAPTURE", #msg " := " << ::Catch::Detail::stringify(msg) ) + +#define TEST_CASE( ... ) INTERNAL_CATCH_TESTCASE( __VA_ARGS__ ) +#define TEST_CASE_METHOD( className, ... ) INTERNAL_CATCH_TEST_CASE_METHOD( className, __VA_ARGS__ ) +#define METHOD_AS_TEST_CASE( method, ... ) INTERNAL_CATCH_METHOD_AS_TEST_CASE( method, __VA_ARGS__ ) +#define REGISTER_TEST_CASE( Function, ... ) INTERNAL_CATCH_REGISTER_TESTCASE( Function, __VA_ARGS__ ) +#define SECTION( ... ) INTERNAL_CATCH_SECTION( __VA_ARGS__ ) +#define FAIL( ... ) INTERNAL_CATCH_MSG( "FAIL", Catch::ResultWas::ExplicitFailure, Catch::ResultDisposition::Normal, __VA_ARGS__ ) +#define FAIL_CHECK( ... ) INTERNAL_CATCH_MSG( "FAIL_CHECK", Catch::ResultWas::ExplicitFailure, Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define SUCCEED( ... ) INTERNAL_CATCH_MSG( "SUCCEED", Catch::ResultWas::Ok, Catch::ResultDisposition::ContinueOnFailure, __VA_ARGS__ ) +#define ANON_TEST_CASE() INTERNAL_CATCH_TESTCASE() + +#endif + +#define CATCH_TRANSLATE_EXCEPTION( signature ) INTERNAL_CATCH_TRANSLATE_EXCEPTION( signature ) + +// "BDD-style" convenience wrappers +#define SCENARIO( ... ) TEST_CASE( "Scenario: " __VA_ARGS__ ) +#define SCENARIO_METHOD( className, ... ) INTERNAL_CATCH_TEST_CASE_METHOD( className, "Scenario: " __VA_ARGS__ ) + +#define GIVEN( desc ) SECTION( std::string(" Given: ") + desc ) +#define WHEN( desc ) SECTION( std::string(" When: ") + desc ) +#define AND_WHEN( desc ) SECTION( std::string("And when: ") + desc ) +#define THEN( desc ) SECTION( std::string(" Then: ") + desc ) +#define AND_THEN( desc ) SECTION( std::string(" And: ") + desc ) + +using Catch::Detail::Approx; + +#else +////// +// If this config identifier is defined then all CATCH macros are prefixed with CATCH_ +#ifdef CATCH_CONFIG_PREFIX_ALL + +#define CATCH_REQUIRE( ... ) (void)(0) +#define CATCH_REQUIRE_FALSE( ... ) (void)(0) + +#define CATCH_REQUIRE_THROWS( ... ) (void)(0) +#define CATCH_REQUIRE_THROWS_AS( expr, exceptionType ) (void)(0) +#define CATCH_REQUIRE_THROWS_WITH( expr, matcher ) (void)(0) +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CATCH_REQUIRE_THROWS_MATCHES( expr, exceptionType, matcher ) (void)(0) +#endif// CATCH_CONFIG_DISABLE_MATCHERS +#define CATCH_REQUIRE_NOTHROW( ... ) (void)(0) + +#define CATCH_CHECK( ... ) (void)(0) +#define CATCH_CHECK_FALSE( ... ) (void)(0) +#define CATCH_CHECKED_IF( ... ) if (__VA_ARGS__) +#define CATCH_CHECKED_ELSE( ... ) if (!(__VA_ARGS__)) +#define CATCH_CHECK_NOFAIL( ... ) (void)(0) + +#define CATCH_CHECK_THROWS( ... ) (void)(0) +#define CATCH_CHECK_THROWS_AS( expr, exceptionType ) (void)(0) +#define CATCH_CHECK_THROWS_WITH( expr, matcher ) (void)(0) +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CATCH_CHECK_THROWS_MATCHES( expr, exceptionType, matcher ) (void)(0) +#endif // CATCH_CONFIG_DISABLE_MATCHERS +#define CATCH_CHECK_NOTHROW( ... ) (void)(0) + +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CATCH_CHECK_THAT( arg, matcher ) (void)(0) + +#define CATCH_REQUIRE_THAT( arg, matcher ) (void)(0) +#endif // CATCH_CONFIG_DISABLE_MATCHERS + +#define CATCH_INFO( msg ) (void)(0) +#define CATCH_WARN( msg ) (void)(0) +#define CATCH_CAPTURE( msg ) (void)(0) + +#define CATCH_TEST_CASE( ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ )) +#define CATCH_TEST_CASE_METHOD( className, ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ )) +#define CATCH_METHOD_AS_TEST_CASE( method, ... ) +#define CATCH_REGISTER_TEST_CASE( Function, ... ) (void)(0) +#define CATCH_SECTION( ... ) +#define CATCH_FAIL( ... ) (void)(0) +#define CATCH_FAIL_CHECK( ... ) (void)(0) +#define CATCH_SUCCEED( ... ) (void)(0) + +#define CATCH_ANON_TEST_CASE() INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ )) + +// "BDD-style" convenience wrappers +#define CATCH_SCENARIO( ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ )) +#define CATCH_SCENARIO_METHOD( className, ... ) INTERNAL_CATCH_TESTCASE_METHOD_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ ), className ) +#define CATCH_GIVEN( desc ) +#define CATCH_WHEN( desc ) +#define CATCH_AND_WHEN( desc ) +#define CATCH_THEN( desc ) +#define CATCH_AND_THEN( desc ) + +// If CATCH_CONFIG_PREFIX_ALL is not defined then the CATCH_ prefix is not required +#else + +#define REQUIRE( ... ) (void)(0) +#define REQUIRE_FALSE( ... ) (void)(0) + +#define REQUIRE_THROWS( ... ) (void)(0) +#define REQUIRE_THROWS_AS( expr, exceptionType ) (void)(0) +#define REQUIRE_THROWS_WITH( expr, matcher ) (void)(0) +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define REQUIRE_THROWS_MATCHES( expr, exceptionType, matcher ) (void)(0) +#endif // CATCH_CONFIG_DISABLE_MATCHERS +#define REQUIRE_NOTHROW( ... ) (void)(0) + +#define CHECK( ... ) (void)(0) +#define CHECK_FALSE( ... ) (void)(0) +#define CHECKED_IF( ... ) if (__VA_ARGS__) +#define CHECKED_ELSE( ... ) if (!(__VA_ARGS__)) +#define CHECK_NOFAIL( ... ) (void)(0) + +#define CHECK_THROWS( ... ) (void)(0) +#define CHECK_THROWS_AS( expr, exceptionType ) (void)(0) +#define CHECK_THROWS_WITH( expr, matcher ) (void)(0) +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CHECK_THROWS_MATCHES( expr, exceptionType, matcher ) (void)(0) +#endif // CATCH_CONFIG_DISABLE_MATCHERS +#define CHECK_NOTHROW( ... ) (void)(0) + +#if !defined(CATCH_CONFIG_DISABLE_MATCHERS) +#define CHECK_THAT( arg, matcher ) (void)(0) + +#define REQUIRE_THAT( arg, matcher ) (void)(0) +#endif // CATCH_CONFIG_DISABLE_MATCHERS + +#define INFO( msg ) (void)(0) +#define WARN( msg ) (void)(0) +#define CAPTURE( msg ) (void)(0) + +#define TEST_CASE( ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ )) +#define TEST_CASE_METHOD( className, ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ )) +#define METHOD_AS_TEST_CASE( method, ... ) +#define REGISTER_TEST_CASE( Function, ... ) (void)(0) +#define SECTION( ... ) +#define FAIL( ... ) (void)(0) +#define FAIL_CHECK( ... ) (void)(0) +#define SUCCEED( ... ) (void)(0) +#define ANON_TEST_CASE() INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ )) + +#endif + +#define CATCH_TRANSLATE_EXCEPTION( signature ) INTERNAL_CATCH_TRANSLATE_EXCEPTION_NO_REG( INTERNAL_CATCH_UNIQUE_NAME( catch_internal_ExceptionTranslator ), signature ) + +// "BDD-style" convenience wrappers +#define SCENARIO( ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ ) ) +#define SCENARIO_METHOD( className, ... ) INTERNAL_CATCH_TESTCASE_METHOD_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( ____C_A_T_C_H____T_E_S_T____ ), className ) + +#define GIVEN( desc ) +#define WHEN( desc ) +#define AND_WHEN( desc ) +#define THEN( desc ) +#define AND_THEN( desc ) + +using Catch::Detail::Approx; + +#endif + +#endif // ! CATCH_CONFIG_IMPL_ONLY + +// start catch_reenable_warnings.h + + +#ifdef __clang__ +# ifdef __ICC // icpc defines the __clang__ macro +# pragma warning(pop) +# else +# pragma clang diagnostic pop +# endif +#elif defined __GNUC__ +# pragma GCC diagnostic pop +#endif + +// end catch_reenable_warnings.h +// end catch.hpp +#endif // TWOBLUECUBES_SINGLE_INCLUDE_CATCH_HPP_INCLUDED + diff --git a/Assignments/A4/A4Soln/doxConfig b/Assignments/A4/A4Soln-EH/doxConfig similarity index 100% rename from Assignments/A4/A4Soln/doxConfig rename to Assignments/A4/A4Soln-EH/doxConfig diff --git a/Assignments/A4/A4Soln/experiment/main.cpp b/Assignments/A4/A4Soln-EH/experiment/main.cpp similarity index 100% rename from Assignments/A4/A4Soln/experiment/main.cpp rename to Assignments/A4/A4Soln-EH/experiment/main.cpp diff --git a/Assignments/A4/A4Soln/include/CardADT.h b/Assignments/A4/A4Soln-EH/include/CardADT.h similarity index 100% rename from Assignments/A4/A4Soln/include/CardADT.h rename to Assignments/A4/A4Soln-EH/include/CardADT.h diff --git a/Assignments/A4/A4Soln/include/Exceptions.h b/Assignments/A4/A4Soln-EH/include/Exceptions.h similarity index 100% rename from Assignments/A4/A4Soln/include/Exceptions.h rename to Assignments/A4/A4Soln-EH/include/Exceptions.h diff --git a/Assignments/A4/A4Soln/include/GameADT.h b/Assignments/A4/A4Soln-EH/include/GameADT.h similarity index 100% rename from Assignments/A4/A4Soln/include/GameADT.h rename to Assignments/A4/A4Soln-EH/include/GameADT.h diff --git a/Assignments/A4/A4Soln/include/GameTypes.h b/Assignments/A4/A4Soln-EH/include/GameTypes.h similarity index 100% rename from Assignments/A4/A4Soln/include/GameTypes.h rename to Assignments/A4/A4Soln-EH/include/GameTypes.h diff --git a/Assignments/A4/A4Soln/include/StackADT.h b/Assignments/A4/A4Soln-EH/include/StackADT.h similarity index 100% rename from Assignments/A4/A4Soln/include/StackADT.h rename to Assignments/A4/A4Soln-EH/include/StackADT.h diff --git a/Assignments/A4/A4Soln/spec/NomenclatureDiagram.png b/Assignments/A4/A4Soln-EH/spec/NomenclatureDiagram.png similarity index 100% rename from Assignments/A4/A4Soln/spec/NomenclatureDiagram.png rename to Assignments/A4/A4Soln-EH/spec/NomenclatureDiagram.png diff --git a/Assignments/A4/A4Soln/spec/spec.pdf b/Assignments/A4/A4Soln-EH/spec/spec.pdf similarity index 100% rename from Assignments/A4/A4Soln/spec/spec.pdf rename to Assignments/A4/A4Soln-EH/spec/spec.pdf diff --git a/Assignments/A4/A4Soln/spec/spec.tex b/Assignments/A4/A4Soln-EH/spec/spec.tex similarity index 100% rename from Assignments/A4/A4Soln/spec/spec.tex rename to Assignments/A4/A4Soln-EH/spec/spec.tex diff --git a/Assignments/A4/A4Soln/src/CardADT.cpp b/Assignments/A4/A4Soln-EH/src/CardADT.cpp similarity index 100% rename from Assignments/A4/A4Soln/src/CardADT.cpp rename to Assignments/A4/A4Soln-EH/src/CardADT.cpp diff --git a/Assignments/A4/A4Soln/src/GameADT.cpp b/Assignments/A4/A4Soln-EH/src/GameADT.cpp similarity index 100% rename from Assignments/A4/A4Soln/src/GameADT.cpp rename to Assignments/A4/A4Soln-EH/src/GameADT.cpp diff --git a/Assignments/A4/A4Soln-EH/src/README.md b/Assignments/A4/A4Soln-EH/src/README.md new file mode 100644 index 00000000..6d5f3a7f --- /dev/null +++ b/Assignments/A4/A4Soln-EH/src/README.md @@ -0,0 +1 @@ +Add your code in this directory \ No newline at end of file diff --git a/Assignments/A4/A4Soln/src/StackADT.cpp b/Assignments/A4/A4Soln-EH/src/StackADT.cpp similarity index 100% rename from Assignments/A4/A4Soln/src/StackADT.cpp rename to Assignments/A4/A4Soln-EH/src/StackADT.cpp diff --git a/Assignments/A4/A4Soln/test/testCardADT.cpp b/Assignments/A4/A4Soln-EH/test/testCardADT.cpp similarity index 100% rename from Assignments/A4/A4Soln/test/testCardADT.cpp rename to Assignments/A4/A4Soln-EH/test/testCardADT.cpp diff --git a/Assignments/A4/A4Soln/test/testGameADT.cpp b/Assignments/A4/A4Soln-EH/test/testGameADT.cpp similarity index 100% rename from Assignments/A4/A4Soln/test/testGameADT.cpp rename to Assignments/A4/A4Soln-EH/test/testGameADT.cpp diff --git a/Assignments/A4/A4Soln/test/testStackADT.cpp b/Assignments/A4/A4Soln-EH/test/testStackADT.cpp similarity index 100% rename from Assignments/A4/A4Soln/test/testStackADT.cpp rename to Assignments/A4/A4Soln-EH/test/testStackADT.cpp diff --git a/Assignments/A4/A4Soln-EH/test/testmain.cpp b/Assignments/A4/A4Soln-EH/test/testmain.cpp new file mode 100644 index 00000000..9bf1899f --- /dev/null +++ b/Assignments/A4/A4Soln-EH/test/testmain.cpp @@ -0,0 +1,5 @@ +// don't change or add anything to this file. +// this automatically creates a main method for testing + +#define CATCH_CONFIG_MAIN +#include "catch.h" \ No newline at end of file -- GitLab