--  Licensed to the Apache Software Foundation (ASF) under one
--  or more contributor license agreements.  See the NOTICE file
--  distributed with this work for additional information
--  regarding copyright ownership.  The ASF licenses this file
--  to you under the Apache License, Version 2.0 (the
--  "License"); you may not use this file except in compliance
--  with the License.  You may obtain a copy of the License at
--
--  http://www.apache.org/licenses/LICENSE-2.0
--
--  Unless required by applicable law or agreed to in writing, software
--  distributed under the License is distributed on an "AS IS" BASIS,
--  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
--  See the License for the specific language governing permissions and
--  limitations under the License.


--- Global configuration file. Copy, customize and store in your
-- project folder as '.luacov' for project specific configuration
-- @class module
-- @name luacov.defaults
return {

  -- default filename to load for config options if not provided
  -- only has effect in 'luacov.defaults.lua'
  ["configfile"] = ".luacov",

  -- filename to store stats collected
  ["statsfile"] = "luacov.stats.out",

  -- filename to store report
  ["reportfile"] = "luacov.report.out",

  -- luacov.stats file updating frequency.
  -- The lower this value - the more frequenty results will be written out to luacov.stats
  -- You may want to reduce this value for short lived scripts (to for example 2) to avoid losing coverage data.
  ["savestepsize"] = 100,

  -- Run reporter on completion? (won't work for ticks)
  runreport = false,

  -- Delete stats file after reporting?
  deletestats = false,
  
  -- Process Lua code loaded from raw strings
  -- (that is, when the 'source' field in the debug info
  -- does not start with '@')
  codefromstrings = false,

  -- Patterns for files to include when reporting
  -- all will be included if nothing is listed
  -- (exclude overrules include, do not include
  -- the .lua extension, path separator is always '/')
  ["include"] = {
  },

  -- Patterns for files to exclude when reporting
  -- all will be included if nothing is listed
  -- (exclude overrules include, do not include
  -- the .lua extension, path separator is always '/')
  ["exclude"] = {
    "luacov$",
    "luacov/reporter$",
    "luacov/defaults$",
    "luacov/runner$",
    "luacov/stats$",
    "luacov/tick$",
    "busted/.*",
    "luarocks/.*",
    "luassert/.*",
    "pl/.*",
    "mediator$",
    "term/.*",
    "say/.*",
    ".*_test$",
  },


}
