[COVER] add first set of ODF feature test files

For providing coverage data of features in the LibreOffice code base,
here's a set of files with orthogonal, high-level ODF features like
bold & italic text, an image, a table in several variants etc.

Use `make coverage` or `make sw.coverage` to generate coverage data
for the entire code base, or subsets thereof.

Change-Id: If27f720e8728788c421e16a3abbc1cf39521a2fd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139765
Tested-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
This commit is contained in:
Thorsten Behrens 2022-09-11 12:21:22 +02:00
parent 992b393be8
commit 23118ce68a
19 changed files with 158 additions and 13 deletions

View file

@ -9,7 +9,7 @@
gb_Top_MODULE_CHECK_TARGETS := slowcheck unitcheck subsequentcheck perfcheck uicheck screenshot gb_Top_MODULE_CHECK_TARGETS := slowcheck unitcheck subsequentcheck perfcheck uicheck screenshot
.PHONY : check-if-root bootstrap gbuild build build-non-l10n-only build-l10n-only check clean clean-build clean-host test-install distclean distro-pack-install docs download etags fetch get-submodules id install install-gdb-printers install-strip tags debugrun help showmodules translations packageinfo internal.clean $(gb_Top_MODULE_CHECK_TARGETS) .PHONY : check-if-root bootstrap gbuild build build-non-l10n-only build-l10n-only check clean clean-build clean-host test-install distclean distro-pack-install docs download etags fetch get-submodules id install install-gdb-printers install-strip tags debugrun help showmodules translations packageinfo coverage internal.clean $(gb_Top_MODULE_CHECK_TARGETS)
MAKECMDGOALS?=build MAKECMDGOALS?=build
build_goal:=$(if $(filter build uicheck,$(MAKECMDGOALS)),build)\ build_goal:=$(if $(filter build uicheck,$(MAKECMDGOALS)),build)\
@ -83,13 +83,13 @@ PARALLELISM_OPTION := $(if $(filter-out 0,$(PARALLELISM)),-j $(PARALLELISM),)
# Partial Build # Partial Build
# #
define gb_Top_GbuildModuleRules define gb_Top_GbuildModuleRules
.PHONY: $(1) $(1).build $(1).all $(1).check $(1).clean $(1).showdeliverables $(foreach target,$(gb_Top_MODULE_CHECK_TARGETS),$(1).$(target)) .PHONY: $(1) $(1).build $(1).all $(1).check $(1).clean $(1).showdeliverables $(1).coverage $(foreach target,$(gb_Top_MODULE_CHECK_TARGETS),$(1).$(target))
.PHONY: $(1).allbuild $(1).buildall $(1).allcheck $(1).checkall .PHONY: $(1).allbuild $(1).buildall $(1).allcheck $(1).checkall
$(1): bootstrap fetch $(1): bootstrap fetch
cd $(SRCDIR)/$(2) && $$(MAKE) $(PARALLELISM_OPTION) $(GMAKE_OPTIONS) cd $(SRCDIR)/$(2) && $$(MAKE) $(PARALLELISM_OPTION) $(GMAKE_OPTIONS)
$(1).build $(1).check $(foreach target,$(gb_Top_MODULE_CHECK_TARGETS),$(1).$(target)): bootstrap fetch $(1).build $(1).check $(1).coverage $(foreach target,$(gb_Top_MODULE_CHECK_TARGETS),$(1).$(target)): bootstrap fetch
cd $(SRCDIR)/$(2) && $$(MAKE) $(PARALLELISM_OPTION) $(GMAKE_OPTIONS) $$(patsubst $(1).%,%,$$@) cd $(SRCDIR)/$(2) && $$(MAKE) $(PARALLELISM_OPTION) $(GMAKE_OPTIONS) $$(patsubst $(1).%,%,$$@)
$(1).clean $(1).showdeliverables: $(1).clean $(1).showdeliverables:
@ -291,7 +291,7 @@ ifeq ($(OS),iOS)
$(MAKE) $(PARALLELISM_OPTION) $(GMAKE_OPTIONS) ios $(MAKE) $(PARALLELISM_OPTION) $(GMAKE_OPTIONS) ios
endif endif
build-non-l10n-only build-l10n-only check debugrun translations packageinfo $(gb_Top_MODULE_CHECK_TARGETS): build build-non-l10n-only build-l10n-only check debugrun translations packageinfo coverage $(gb_Top_MODULE_CHECK_TARGETS): build
help showmodules gbuildtojson: help showmodules gbuildtojson:
$(MAKE) $(PARALLELISM_OPTION) $(GMAKE_OPTIONS) -f $(SRCDIR)/Makefile.gbuild $@ $(MAKE) $(PARALLELISM_OPTION) $(GMAKE_OPTIONS) -f $(SRCDIR)/Makefile.gbuild $@

View file

@ -221,7 +221,7 @@ endef
# otherwise cyclic dependencies ruin everything. # otherwise cyclic dependencies ruin everything.
# do not serialize on a partial build as that may fail due to missing deps. # do not serialize on a partial build as that may fail due to missing deps.
# the default goal is build (see Module.mk) # the default goal is build (see Module.mk)
ifeq (,$(filter-out build check unitcheck slowcheck screenshot subsequentcheck uicheck,$(MAKECMDGOALS))) ifeq (,$(filter-out build check unitcheck slowcheck screenshot subsequentcheck uicheck coverage,$(MAKECMDGOALS)))
$(eval $(call repositorymodule_serialize,\ $(eval $(call repositorymodule_serialize,\
scfilt \ scfilt \
$(call gb_Helper_optional,SCRIPTING,vbaobj) \ $(call gb_Helper_optional,SCRIPTING,vbaobj) \

View file

@ -27,12 +27,14 @@
# recursive Module/checks # recursive Module/checks
# Module/slowcheck run all slow unit tests # Module/slowcheck run all slow unit tests
# Module/screenshot create all screenshots # Module/screenshot create all screenshots
# Module/coverage run all feature coverage tests
# Module/subsequentcheck run system tests all system tests # Module/subsequentcheck run system tests all system tests
# Module/uicheck run uitests all uitests # Module/uicheck run uitests all uitests
# recursive Module/subsequentchecks # recursive Module/subsequentchecks
# build (global) build the product top-level Module # build (global) build the product top-level Module
# unitcheck (global) run unit tests top-level Module/unitcheck # unitcheck (global) run unit tests top-level Module/unitcheck
# slowcheck (global) run slow unit tests top-level Module/slowcheck # slowcheck (global) run slow unit tests top-level Module/slowcheck
# coverage (global) run feature coverage tests top-level Module/coverage
# screenshot (global) create all screenshots top-level Module/screenshot # screenshot (global) create all screenshots top-level Module/screenshot
# subsequentcheck (global) run system tests top-level Module/subsequentcheck # subsequentcheck (global) run system tests top-level Module/subsequentcheck
# perfcheck (global) run performance unit tests top-level Module/perfcheck # perfcheck (global) run performance unit tests top-level Module/perfcheck
@ -48,6 +50,7 @@ gb_Module_L10NTARGETSTACK :=
gb_Module_CHECKTARGETSTACK := gb_Module_CHECKTARGETSTACK :=
gb_Module_SLOWCHECKTARGETSTACK := gb_Module_SLOWCHECKTARGETSTACK :=
gb_Module_SCREENSHOTTARGETSTACK := gb_Module_SCREENSHOTTARGETSTACK :=
gb_Module_COVERAGETARGETSTACK :=
gb_Module_SUBSEQUENTCHECKTARGETSTACK := gb_Module_SUBSEQUENTCHECKTARGETSTACK :=
gb_Module_PERFCHECKTARGETSTACK := gb_Module_PERFCHECKTARGETSTACK :=
gb_Module_UICHECKTARGETSTACK := gb_Module_UICHECKTARGETSTACK :=
@ -73,7 +76,7 @@ $(call gb_Module_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),MOD,5) $(call gb_Output_announce,$*,$(false),MOD,5)
$(call gb_Output_announce_title,module $* cleared.) $(call gb_Output_announce_title,module $* cleared.)
-$(call gb_Helper_abbreviate_dirs,\ -$(call gb_Helper_abbreviate_dirs,\
rm -f $(call gb_Module_get_target,$*) $(call gb_Module_get_nonl10n_target,$*) $(call gb_Module_get_l10n_target,$*) $(call gb_Module_get_check_target,$*) $(call gb_Module_get_slowcheck_target,$*) $(call gb_Module_get_screenshot_target,$*) $(call gb_Module_get_subsequentcheck_target,$*) $(call gb_Module_get_perfcheck_target,$*) $(call gb_Module_get_uicheck,$*)) rm -f $(call gb_Module_get_target,$*) $(call gb_Module_get_nonl10n_target,$*) $(call gb_Module_get_l10n_target,$*) $(call gb_Module_get_check_target,$*) $(call gb_Module_get_slowcheck_target,$*) $(call gb_Module_get_screenshot_target,$*) $(call gb_Module_get_coverage_target,$*) $(call gb_Module_get_subsequentcheck_target,$*) $(call gb_Module_get_perfcheck_target,$*) $(call gb_Module_get_uicheck,$*))
$(call gb_Module_get_l10n_target,%) : $(call gb_Module_get_l10n_target,%) :
$(call gb_Output_announce,$*,$(true),LOC,5) $(call gb_Output_announce,$*,$(true),LOC,5)
@ -107,6 +110,14 @@ $(call gb_Module_get_screenshot_target,%) :
mkdir -p $(dir $@) && \ mkdir -p $(dir $@) && \
touch $@) touch $@)
$(call gb_Module_get_coverage_target,%) :
$(call gb_Output_announce,$*,$(true),SCR,5)
$(call gb_Trace_MakeMark,$*,SCR)
$(call gb_Output_announce_title,module $* coverage done.)
-$(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $@) && \
touch $@)
$(call gb_Module_get_subsequentcheck_target,%) : $(call gb_Module_get_subsequentcheck_target,%) :
$(call gb_Output_announce,$*,$(true),SCK,5) $(call gb_Output_announce,$*,$(true),SCK,5)
$(call gb_Trace_MakeMark,$*,SCK) $(call gb_Trace_MakeMark,$*,SCK)
@ -139,7 +150,7 @@ $(call gb_Module_get_target,%) :
mkdir -p $(dir $@) && \ mkdir -p $(dir $@) && \
touch $@) touch $@)
.PHONY : build build-l10n-only build-non-l10n-only unitcheck slowcheck screenshot subsequentcheck perfcheck uicheck clean check debugrun help showmodules translations .PHONY : build build-l10n-only build-non-l10n-only coverage unitcheck slowcheck screenshot subsequentcheck perfcheck uicheck clean check debugrun help showmodules translations
.DEFAULT_GOAL := build .DEFAULT_GOAL := build
ifeq ($(gb_Side),build) ifeq ($(gb_Side),build)
@ -186,6 +197,11 @@ screenshot :
$(call gb_Output_announce_title,all screenshots checked.) $(call gb_Output_announce_title,all screenshots checked.)
$(call gb_Output_announce_bell) $(call gb_Output_announce_bell)
coverage :
$(if $(gb_VERBOSE),$(call gb_Output_announce,loaded modules: $(sort $(gb_Module_ALLMODULES)),$(true),COV,6))
$(call gb_Output_announce_title,all coverage checked.)
$(call gb_Output_announce_bell)
# removing the dependency on build for now until we can make a full build with gbuild # removing the dependency on build for now until we can make a full build with gbuild
#subsequentcheck : build #subsequentcheck : build
subsequentcheck : subsequentcheck :
@ -255,6 +271,7 @@ gb_Module_L10NTARGETSTACK := $(call gb_Module_get_l10n_target,$(1)) $(gb_Module_
gb_Module_CHECKTARGETSTACK := $(call gb_Module_get_check_target,$(1)) $(gb_Module_CHECKTARGETSTACK) gb_Module_CHECKTARGETSTACK := $(call gb_Module_get_check_target,$(1)) $(gb_Module_CHECKTARGETSTACK)
gb_Module_SLOWCHECKTARGETSTACK := $(call gb_Module_get_slowcheck_target,$(1)) $(gb_Module_SLOWCHECKTARGETSTACK) gb_Module_SLOWCHECKTARGETSTACK := $(call gb_Module_get_slowcheck_target,$(1)) $(gb_Module_SLOWCHECKTARGETSTACK)
gb_Module_SCREENSHOTTARGETSTACK := $(call gb_Module_get_screenshot_target,$(1)) $(gb_Module_SCREENSHOTTARGETSTACK) gb_Module_SCREENSHOTTARGETSTACK := $(call gb_Module_get_screenshot_target,$(1)) $(gb_Module_SCREENSHOTTARGETSTACK)
gb_Module_COVERAGETARGETSTACK := $(call gb_Module_get_coverage_target,$(1)) $(gb_Module_COVERAGETARGETSTACK)
gb_Module_UICHECKTARGETSTACK := $(call gb_Module_get_uicheck_target,$(1)) $(gb_Module_UICHECKTARGETSTACK) gb_Module_UICHECKTARGETSTACK := $(call gb_Module_get_uicheck_target,$(1)) $(gb_Module_UICHECKTARGETSTACK)
gb_Module_SUBSEQUENTCHECKTARGETSTACK := $(call gb_Module_get_subsequentcheck_target,$(1)) $(gb_Module_SUBSEQUENTCHECKTARGETSTACK) gb_Module_SUBSEQUENTCHECKTARGETSTACK := $(call gb_Module_get_subsequentcheck_target,$(1)) $(gb_Module_SUBSEQUENTCHECKTARGETSTACK)
gb_Module_PERFCHECKTARGETSTACK := $(call gb_Module_get_perfcheck_target,$(1)) $(gb_Module_PERFCHECKTARGETSTACK) gb_Module_PERFCHECKTARGETSTACK := $(call gb_Module_get_perfcheck_target,$(1)) $(gb_Module_PERFCHECKTARGETSTACK)
@ -269,6 +286,7 @@ $(if $(filter-out libreoffice instsetoo_native android ios,$(1)),\
$(call gb_Postprocess_get_target,AllModuleTests) : $(call gb_Module_get_check_target,$(1)) $(call gb_Postprocess_get_target,AllModuleTests) : $(call gb_Module_get_check_target,$(1))
$(call gb_Postprocess_get_target,AllModuleSlowtests) : $(call gb_Module_get_slowcheck_target,$(1)) $(call gb_Postprocess_get_target,AllModuleSlowtests) : $(call gb_Module_get_slowcheck_target,$(1))
$(call gb_Postprocess_get_target,AllModuleScreenshots) : $(call gb_Module_get_screenshot_target,$(1)) $(call gb_Postprocess_get_target,AllModuleScreenshots) : $(call gb_Module_get_screenshot_target,$(1))
$(call gb_Postprocess_get_target,AllModuleCoverage) : $(call gb_Module_get_coverage_target,$(1))
$(call gb_Postprocess_get_target,AllModuleUITest) : $(call gb_Module_get_uicheck_target,$(1)) $(call gb_Postprocess_get_target,AllModuleUITest) : $(call gb_Module_get_uicheck_target,$(1))
endef endef
@ -338,6 +356,14 @@ $(call gb_Module_get_clean_target,$(1)) : $$(gb_Module_CURRENTCLEANTARGET)
endef endef
define gb_Module_add_coverage_target
$(call gb_Module__read_targetfile,$(1),$(2),coverage target)
$(call gb_Module_get_coverage_target,$(1)) : $$(gb_Module_CURRENTTARGET)
$(call gb_Module_get_clean_target,$(1)) : $$(gb_Module_CURRENTCLEANTARGET)
endef
# has order dependency on AllModulesButInstsetNative to be able to run # has order dependency on AllModulesButInstsetNative to be able to run
# subsequentcheck in the same make process on "make check" # subsequentcheck in the same make process on "make check"
define gb_Module_add_subsequentcheck_target define gb_Module_add_subsequentcheck_target
@ -385,6 +411,7 @@ $(call gb_Module_get_l10n_target,$(1)) : $$(firstword $$(gb_Module_L10NTARGETSTA
$(call gb_Module_get_check_target,$(1)) : $$(firstword $$(gb_Module_CHECKTARGETSTACK)) $(call gb_Module_get_check_target,$(1)) : $$(firstword $$(gb_Module_CHECKTARGETSTACK))
$(call gb_Module_get_slowcheck_target,$(1)) : $$(firstword $$(gb_Module_SLOWCHECKTARGETSTACK)) $(call gb_Module_get_slowcheck_target,$(1)) : $$(firstword $$(gb_Module_SLOWCHECKTARGETSTACK))
$(call gb_Module_get_screenshot_target,$(1)) : $$(firstword $$(gb_Module_SCREENSHOTTARGETSTACK)) $(call gb_Module_get_screenshot_target,$(1)) : $$(firstword $$(gb_Module_SCREENSHOTTARGETSTACK))
$(call gb_Module_get_coverage_target,$(1)) : $$(firstword $$(gb_Module_COVERAGETARGETSTACK))
$(call gb_Module_get_subsequentcheck_target,$(1)) : $$(firstword $$(gb_Module_SUBSEQUENTCHECKTARGETSTACK)) $(call gb_Module_get_subsequentcheck_target,$(1)) : $$(firstword $$(gb_Module_SUBSEQUENTCHECKTARGETSTACK))
$(call gb_Module_get_perfcheck_target,$(1)) : $$(firstword $$(gb_Module_PERFCHECKTARGETSTACK)) $(call gb_Module_get_perfcheck_target,$(1)) : $$(firstword $$(gb_Module_PERFCHECKTARGETSTACK))
$(call gb_Module_get_uicheck_target,$(1)) : $$(firstword $$(gb_Module_UICHECKTARGETSTACK)) $(call gb_Module_get_uicheck_target,$(1)) : $$(firstword $$(gb_Module_UICHECKTARGETSTACK))
@ -394,6 +421,7 @@ gb_Module_L10NTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_L10NTARGETSTACK
gb_Module_CHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_CHECKTARGETSTACK)),$$(gb_Module_CHECKTARGETSTACK)) gb_Module_CHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_CHECKTARGETSTACK)),$$(gb_Module_CHECKTARGETSTACK))
gb_Module_SLOWCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SLOWCHECKTARGETSTACK)),$$(gb_Module_SLOWCHECKTARGETSTACK)) gb_Module_SLOWCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SLOWCHECKTARGETSTACK)),$$(gb_Module_SLOWCHECKTARGETSTACK))
gb_Module_SCREENSHOTTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SCREENSHOTTARGETSTACK)),$$(gb_Module_SCREENSHOTTARGETSTACK)) gb_Module_SCREENSHOTTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SCREENSHOTTARGETSTACK)),$$(gb_Module_SCREENSHOTTARGETSTACK))
gb_Module_COVERAGETARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_COVERAGETARGETSTACK)),$$(gb_Module_COVERAGETARGETSTACK))
gb_Module_SUBSEQUENTCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SUBSEQUENTCHECKTARGETSTACK)),$$(gb_Module_SUBSEQUENTCHECKTARGETSTACK)) gb_Module_SUBSEQUENTCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SUBSEQUENTCHECKTARGETSTACK)),$$(gb_Module_SUBSEQUENTCHECKTARGETSTACK))
gb_Module_PERFCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_PERFCHECKTARGETSTACK)),$$(gb_Module_PERFCHECKTARGETSTACK)) gb_Module_PERFCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_PERFCHECKTARGETSTACK)),$$(gb_Module_PERFCHECKTARGETSTACK))
gb_Module_UICHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_UICHECKTARGETSTACK)),$$(gb_Module_UICHECKTARGETSTACK)) gb_Module_UICHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_UICHECKTARGETSTACK)),$$(gb_Module_UICHECKTARGETSTACK))
@ -430,6 +458,11 @@ $(foreach target,$(2),$(call gb_Module_add_screenshot_target,$(1),$(target)))
endef endef
define gb_Module_add_coverage_targets
$(foreach target,$(2),$(call gb_Module_add_coverage_target,$(1),$(target)))
endef
define gb_Module_add_subsequentcheck_targets define gb_Module_add_subsequentcheck_targets
$(foreach target,$(2),$(call gb_Module_add_subsequentcheck_target,$(1),$(target))) $(foreach target,$(2),$(call gb_Module_add_subsequentcheck_target,$(1),$(target)))
@ -460,6 +493,7 @@ include $(1)
build : build-non-l10n-only build-l10n-only build : build-non-l10n-only build-l10n-only
build-non-l10n-only : $$(firstword $$(gb_Module_TARGETSTACK)) build-non-l10n-only : $$(firstword $$(gb_Module_TARGETSTACK))
build-l10n-only : $$(firstword $$(gb_Module_L10NTARGETSTACK)) build-l10n-only : $$(firstword $$(gb_Module_L10NTARGETSTACK))
coverage : $$(firstword $$(gb_Module_COVERAGETARGETSTACK))
unitcheck : $$(firstword $$(gb_Module_CHECKTARGETSTACK)) unitcheck : $$(firstword $$(gb_Module_CHECKTARGETSTACK))
slowcheck : $$(firstword $$(gb_Module_SLOWCHECKTARGETSTACK)) slowcheck : $$(firstword $$(gb_Module_SLOWCHECKTARGETSTACK))
screenshot : $$(firstword $$(gb_Module_SCREENSHOTTARGETSTACK)) screenshot : $$(firstword $$(gb_Module_SCREENSHOTTARGETSTACK))
@ -480,12 +514,13 @@ gb_Module_L10NTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_L10NTARGETSTACK
gb_Module_CHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_CHECKTARGETSTACK)),$$(gb_Module_CHECKTARGETSTACK)) gb_Module_CHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_CHECKTARGETSTACK)),$$(gb_Module_CHECKTARGETSTACK))
gb_Module_SLOWCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SLOWCHECKTARGETSTACK)),$$(gb_Module_SLOWCHECKTARGETSTACK)) gb_Module_SLOWCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SLOWCHECKTARGETSTACK)),$$(gb_Module_SLOWCHECKTARGETSTACK))
gb_Module_SCREENSHOTTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SCREENSHOTTARGETSTACK)),$$(gb_Module_SCREENSHOTTARGETSTACK)) gb_Module_SCREENSHOTTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SCREENSHOTTARGETSTACK)),$$(gb_Module_SCREENSHOTTARGETSTACK))
gb_Module_COVERAGETARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_COVERAGETARGETSTACK)),$$(gb_Module_COVERAGETARGETSTACK))
gb_Module_SUBSEQUENTCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SUBSEQUENTCHECKTARGETSTACK)),$$(gb_Module_SUBSEQUENTCHECKTARGETSTACK)) gb_Module_SUBSEQUENTCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_SUBSEQUENTCHECKTARGETSTACK)),$$(gb_Module_SUBSEQUENTCHECKTARGETSTACK))
gb_Module_UICHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_UICHECKTARGETSTACK)),$$(gb_Module_UICHECKTARGETSTACK)) gb_Module_UICHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_UICHECKTARGETSTACK)),$$(gb_Module_UICHECKTARGETSTACK))
gb_Module_PERFCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_PERFCHECKTARGETSTACK)),$$(gb_Module_PERFCHECKTARGETSTACK)) gb_Module_PERFCHECKTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_PERFCHECKTARGETSTACK)),$$(gb_Module_PERFCHECKTARGETSTACK))
gb_Module_CLEANTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_CLEANTARGETSTACK)),$$(gb_Module_CLEANTARGETSTACK)) gb_Module_CLEANTARGETSTACK := $$(wordlist 2,$$(words $$(gb_Module_CLEANTARGETSTACK)),$$(gb_Module_CLEANTARGETSTACK))
ifneq ($$(and $$(gb_Module_TARGETSTACK),$$(gb_Module_CHECKTARGETSTACK),$$(gb_Module_SLOWCHECKTARGETSTACK),$$(gb_Module_SCREENSHOTTARGETSTACK),$$(gb_Module_SUBSEQUENTCHECKTARGETSTACK),$$(gb_Module_UICHECKTARGETSTACK),$$(gb_Module_PERFCHECKTARGETSTACK),$$(gb_Module_L10NTARGETSTACK)),) ifneq ($$(and $$(gb_Module_TARGETSTACK),$$(gb_Module_CHECKTARGETSTACK),$$(gb_Module_SLOWCHECKTARGETSTACK),$$(gb_Module_COVERAGETARGETSTACK),$$(gb_Module_SCREENSHOTTARGETSTACK),$$(gb_Module_SUBSEQUENTCHECKTARGETSTACK),$$(gb_Module_UICHECKTARGETSTACK),$$(gb_Module_PERFCHECKTARGETSTACK),$$(gb_Module_L10NTARGETSTACK)),)
$$(eval $$(call gb_Output_error,Corrupted module target stack!3)) $$(eval $$(call gb_Output_error,Corrupted module target stack!3))
endif endif

View file

@ -49,6 +49,7 @@ $(call gb_Postprocess_Postprocess,AllUIConfigs,All UI configuration files,$(WORK
$(call gb_Postprocess_Postprocess,AllModuleTests,All modules' tests,$(WORKDIR)/Module/check/) $(call gb_Postprocess_Postprocess,AllModuleTests,All modules' tests,$(WORKDIR)/Module/check/)
$(call gb_Postprocess_Postprocess,AllModuleSlowtests,All modules' slowtests,$(WORKDIR)/Module/slowcheck/) $(call gb_Postprocess_Postprocess,AllModuleSlowtests,All modules' slowtests,$(WORKDIR)/Module/slowcheck/)
$(call gb_Postprocess_Postprocess,AllModuleScreenshots,All modules' screenshots,$(WORKDIR)/Module/screenshot/) $(call gb_Postprocess_Postprocess,AllModuleScreenshots,All modules' screenshots,$(WORKDIR)/Module/screenshot/)
$(call gb_Postprocess_Postprocess,AllModuleCoverage,All modules' coverage,$(WORKDIR)/Module/coverage/)
$(call gb_Postprocess_Postprocess,AllModuleUITests,All modules' uitests,$(WORKDIR)/Module/uicheck/) $(call gb_Postprocess_Postprocess,AllModuleUITests,All modules' uitests,$(WORKDIR)/Module/uicheck/)
endef endef

View file

@ -142,6 +142,7 @@ gb_Module_get_l10n_target = $(WORKDIR)/Module/l10n/$(1)
gb_Module_get_check_target = $(WORKDIR)/Module/check/$(1) gb_Module_get_check_target = $(WORKDIR)/Module/check/$(1)
gb_Module_get_slowcheck_target = $(WORKDIR)/Module/slowcheck/$(1) gb_Module_get_slowcheck_target = $(WORKDIR)/Module/slowcheck/$(1)
gb_Module_get_screenshot_target = $(WORKDIR)/Module/screenshot/$(1) gb_Module_get_screenshot_target = $(WORKDIR)/Module/screenshot/$(1)
gb_Module_get_coverage_target = $(WORKDIR)/Module/coverage/$(1)
gb_Module_get_subsequentcheck_target = $(WORKDIR)/Module/subsequentcheck/$(1) gb_Module_get_subsequentcheck_target = $(WORKDIR)/Module/subsequentcheck/$(1)
gb_Module_get_perfcheck_target = $(WORKDIR)/Module/perfcheck/$(1) gb_Module_get_perfcheck_target = $(WORKDIR)/Module/perfcheck/$(1)
gb_Module_get_uicheck_target = $(WORKDIR)/Module/uicheck/$(1) gb_Module_get_uicheck_target = $(WORKDIR)/Module/uicheck/$(1)

View file

@ -9,21 +9,21 @@
ifneq ($(CROSS_COMPILING),) ifneq ($(CROSS_COMPILING),)
gb_Module_add_targets_for_build := gb_Module_add_targets_for_build :=
gb_Module_SKIPTARGETS := check slowcheck screenshot subsequentcheck uicheck gb_Module_SKIPTARGETS := check coverage slowcheck screenshot subsequentcheck uicheck
endif endif
ifeq ($(gb_Side),build) ifeq ($(gb_Side),build)
gb_Module_SKIPTARGETS := check slowcheck screenshot subsequentcheck uicheck gb_Module_SKIPTARGETS := check coverage slowcheck screenshot subsequentcheck uicheck
endif endif
ifeq ($(MAKECMDGOALS),build) ifeq ($(MAKECMDGOALS),build)
gb_Module_SKIPTARGETS := check slowcheck screenshot subsequentcheck uicheck gb_Module_SKIPTARGETS := check coverage slowcheck screenshot subsequentcheck uicheck
endif endif
ifeq (,$(filter perfcheck,$(MAKECMDGOALS))) ifeq (,$(filter perfcheck,$(MAKECMDGOALS)))
gb_Module_SKIPTARGETS += perfcheck gb_Module_SKIPTARGETS += perfcheck
else else
gb_Module_SKIPTARGETS += check slowcheck screenshot subsequentcheck uicheck gb_Module_SKIPTARGETS += check coverage slowcheck screenshot subsequentcheck uicheck
endif endif
ifneq ($(strip $(MAKECMDGOALS)),) ifneq ($(strip $(MAKECMDGOALS)),)
@ -37,7 +37,7 @@ ifeq (T,$(if $(filter-out $(gb_SpeedUpTargets_LEVEL_1),$(MAKECMDGOALS)),,T))
gb_FULLDEPS := gb_FULLDEPS :=
ifeq (T,$(if $(filter-out $(gb_SpeedUpTargets_LEVEL_2),$(MAKECMDGOALS)),,T)) ifeq (T,$(if $(filter-out $(gb_SpeedUpTargets_LEVEL_2),$(MAKECMDGOALS)),,T))
gb_Module_SKIPTARGETS += check slowcheck screenshot subsequentcheck uicheck gb_Module_SKIPTARGETS += check coverage slowcheck screenshot subsequentcheck uicheck
ifeq (T,$(if $(filter-out $(gb_SpeedUpTargets_LEVEL_3),$(MAKECMDGOALS)),,T)) ifeq (T,$(if $(filter-out $(gb_SpeedUpTargets_LEVEL_3),$(MAKECMDGOALS)),,T))
gb_Module_SKIPTARGETS += build gb_Module_SKIPTARGETS += build
@ -69,6 +69,10 @@ ifneq (,$(filter screenshot,$(gb_Module_SKIPTARGETS)))
gb_Module_add_screenshot_target = gb_Module_add_screenshot_target =
endif endif
ifneq (,$(filter coverage,$(gb_Module_SKIPTARGETS)))
gb_Module_add_coverage_target =
endif
ifneq (,$(filter subsequentcheck,$(gb_Module_SKIPTARGETS))) ifneq (,$(filter subsequentcheck,$(gb_Module_SKIPTARGETS)))
gb_Module_add_subsequentcheck_target = gb_Module_add_subsequentcheck_target =
endif endif

View file

@ -38,6 +38,7 @@ AVAILABLE TARGETS
unitcheck run unit tests unitcheck run unit tests
slowcheck run slow unit tests slowcheck run slow unit tests
screenshot create all screenshots screenshot create all screenshots
coverage run coverage tests
subsequentcheck run system tests (requires full installation) subsequentcheck run system tests (requires full installation)
perfcheck run performance/callgrind unit tests perfcheck run performance/callgrind unit tests
uicheck run UI tests uicheck run UI tests

View file

@ -0,0 +1,60 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#*************************************************************************
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
#*************************************************************************
$(eval $(call gb_CppunitTest_CppunitTest,sw_odffeatures))
$(eval $(call gb_CppunitTest_use_common_precompiled_header,sw_odffeatures))
$(eval $(call gb_CppunitTest_add_exception_objects,sw_odffeatures, \
sw/qa/extras/odfimport/odffeatures \
))
$(eval $(call gb_CppunitTest_use_libraries,sw_odffeatures, \
comphelper \
cppu \
cppuhelper \
sal \
sw \
swqahelper \
test \
unotest \
vcl \
utl \
))
$(eval $(call gb_CppunitTest_use_externals,sw_odffeatures,\
boost_headers \
libxml2 \
))
$(eval $(call gb_CppunitTest_set_include,sw_odffeatures,\
-I$(SRCDIR)/sw/inc \
-I$(SRCDIR)/sw/qa/inc \
$$(INCLUDE) \
))
$(eval $(call gb_CppunitTest_use_api,sw_odffeatures,\
udkapi \
offapi \
))
$(eval $(call gb_CppunitTest_use_ure,sw_odffeatures))
$(eval $(call gb_CppunitTest_use_vcl,sw_odffeatures))
$(eval $(call gb_CppunitTest_use_rdb,sw_odffeatures,services))
$(eval $(call gb_CppunitTest_use_configuration,sw_odffeatures))
$(eval $(call gb_CppunitTest_add_arguments,sw_odffeatures, \
-env:arg-env=$(gb_Helper_LIBRARY_PATH_VAR)"$$$${$(gb_Helper_LIBRARY_PATH_VAR)+=$$$$$(gb_Helper_LIBRARY_PATH_VAR)}" \
))
# vim: set noet sw=4 ts=4:

View file

@ -188,6 +188,11 @@ $(eval $(call gb_Module_add_screenshot_targets,sw,\
CppunitTest_sw_dialogs_test_2 \ CppunitTest_sw_dialogs_test_2 \
)) ))
# feature coverage
$(eval $(call gb_Module_add_coverage_targets,sw,\
CppunitTest_sw_odffeatures \
))
$(eval $(call gb_Module_add_uicheck_targets,sw,\ $(eval $(call gb_Module_add_uicheck_targets,sw,\
$(call gb_Helper_optional,LIBRELOGO,UITest_librelogo) \ $(call gb_Helper_optional,LIBRELOGO,UITest_librelogo) \
UITest_writer_tests \ UITest_writer_tests \

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,38 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#include <swmodeltestbase.hxx>
#include <config_features.h>
constexpr OUStringLiteral DATA_DIRECTORY = u"/sw/qa/extras/odfimport/data/";
class Test : public SwModelTestBase
{
public:
Test()
: SwModelTestBase(DATA_DIRECTORY, "writer8")
{
}
};
CPPUNIT_TEST_FIXTURE(Test, testFeatureText) { load(mpTestDocumentPath, "feature_text.odt"); }
CPPUNIT_TEST_FIXTURE(Test, testFeatureTextBold)
{
load(mpTestDocumentPath, "feature_text_bold.odt");
}
CPPUNIT_TEST_FIXTURE(Test, testFeatureTextItalic)
{
load(mpTestDocumentPath, "feature_text_italic.odt");
}
CPPUNIT_PLUGIN_IMPLEMENT();
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */