numaru / vscode-ceedling-test-adapter

Ceedling Test Adapter for the VS Code Test Explorer
MIT License
37 stars 13 forks source link

Working project.yml is not being loaded in vscode #110

Closed embcla closed 9 months ago

embcla commented 2 years ago

Hi

I have a pretty complex project (see below). It works reliably on the command line, but in VSCode it makes the plugin output "project file not found".

I take it that something is going wrong, so how can I debug it?


# Main ceedling project file

:project:
  :use_exceptions: false
  :build_root: .build/test
  :test_file_prefix: test_
  :which_ceedling: gem
  :use_mocks: true
  :compile_threads: 4
  :test_threads: 4
  :use_test_preprocessor: true
  :test_file_prefix: test_
  :which_ceedling: gem
  :default_tasks:
    - clobber test:all
  :options_paths:
    - ./test/options/

:paths:
  :test:
    - +:test/**
    - -:test/support
  :include: # Any header files not already in the source search path.
    - include/**
    - .build/src/**
  :source:
    - src/**
  :support:
    - test/support
  :libraries:
    - "#{PROJECT_ROOT}/.build/subprojects/glog/"

:cmock:
  :mock_prefix: mock_
  :when_no_prototype: warn
  :enforce_strict_ordering: true
  :plugins:
    - :ignore
    - :ignore_arg
    - :array
    - :callback
    - :return_thru_ptr
  :treat_as:
    uint8: HEX8
    uint16: HEX16
    uint32: UINT32
    int8: INT8
    bool: UINT8
  :treat_as_array: va_list

:defines:
  # in order to add common defines:
  #  1) remove the trailing [] from the :common: section
  #  2) add entries to the :common: section (e.g. :test: has TEST defined)
  :commmon: &common_defines
    - G_LOG_DOMAIN=0
    - G_LOG_LEVEL_MESSAGE=0
    - G_LOG_LEVEL_DEBUG=1
  :test:
    - *common_defines
    - TEST
  :test_preprocess:
    - *common_defines
    - TEST

:plugins:
  :load_paths:
    - "#{Ceedling.load_path}"
  :enabled:
    - stdout_pretty_tests_report
    - gcov
    - xml_tests_report

:gcov:
  :abort_on_uncovered: true
  :uncovered_ignore_list:
    - src/main.c
  :reports:
    - HtmlDetailed
  :gcovr:
    :html_medium_threshold: 75
    :html_high_threshold: 90
    :exclude_unreachable_branches: true
    :report_include: "^src/"
    :report_exclude: "^.build/"

:flags:
  :test:
    :compile:
      :*:
        - -std=c99
        - -fshort-enums
        - -Wall
        - -Wextra
        - -Wstrict-prototypes
        - -Wunreachable-code
        - -g

  :gcov:
    :compile:
      :*:
        - -std=c99
        - -fshort-enums
        - -Werror
        - -Wall
        - -Wextra
        - -Wstrict-prototypes
        - -Wunreachable-code
numaru commented 9 months ago

It must be too late but the issue is that there is duplicate of the keys :test_file_prefix: and :which_ceedling: in the project.yml. Therefore the yaml file is invalid and not loaded by the extension.