nasa / cFE

The Core Flight System (cFS) Core Flight Executive (cFE)
Apache License 2.0
408 stars 200 forks source link

fix cfe 6.6 ut_assert #277

Closed skliper closed 4 years ago

skliper commented 4 years ago

Imported from trac issue 246. Created by sduran on 2018-08-23T14:26:01, last modified: 2019-06-27T09:38:21

skliper commented 4 years ago

Trac comment by sduran on 2018-08-23 14:46:12:

works with osal: trac-201-ut_assert_updates_to_work_with_cfe6.6

skliper commented 4 years ago

Trac comment by krmoore2 on 2019-02-19 14:36:55:

I made the following changes to fix UT Assert in 6.6:

00_Update-makefile-include-paths.diff 01_Fix-compiler-opts-for-64-bit-linux-os.diff 02_Fix-missing-header.diff 03_Fix-stub-funct-def-mismatches-in-ES-API.diff 04_Fix-print-format-warnings.diff 05_Include-missing-header.diff 06_Fix-function-def-mismatch-in-SB.diff 07_Add-extern-funct-declaration.diff 08_Update-CCSDS-cmd-pkt-def-to-6-6-style.diff 09_Include-missing-header.diff 10_Fix-print-format-warnings.diff 11_Add-example-src-to-makefile-includes.diff 12_Remove-cfs-utils-o-from-ut-objs.diff all_changes.diff

For convenience, you can either view each change in the order that I made them (00 -> 12), or view the changes all at once by looking at all_changes.diff.

Note: I was compiling on a 64-bit linux system under OCI's FSW repo/directory structure, and I'm new to Babelfish so I'm not sure how to confirm whether these changes will work as-is with what's in babelfish. You may just need to look at the diffs and manually implement them (I'm hoping its the same).

skliper commented 4 years ago

Trac comment by krmoore2 on 2019-02-19 15:41:29:

As I was creating another unit test, I realized that there was another slight modification to be included.

13_Add-missing-funct-def-in-ES-hooks-header.diff

NOTE: this change is not reflected in all_changes.diff

skliper commented 4 years ago

Trac comment by jphickey on 2019-02-21 17:12:32:

Please note that the monolithic ut_assert package within tools has been deprecated, A while back this was broken apart and split into a set of distributed UT framework components. The monolithic version only remains for historical reasons because it not really maintainable in a modular system; any time CFE or any app API changes in future versions it will break again.

Going forward the UT assert architecture must distributed such that it can work with modular applications without needing updates each time an unrelated API changes.

When the CCB meetings get started again we should renew this topic of discussion to figure out what needs to be done to finally retire the monolithic ut_assert since it is still a source of issues.

skliper commented 4 years ago

Trac comment by jhageman on 2019-02-28 16:02:45:

CCB - Review depreciation plan for ut_assert, also Keegan's changes fix the unit test example to work with the new distributed ut stubs so could hijack this issue and make it "Fix unit test example to work with distributed ut stubs"

skliper commented 4 years ago

Trac comment by jhageman on 2019-03-26 12:50:50:

Note in reference to Keegan's comments there is a short term fix happening in cFS Tools repo: [cfs_tools:71] for app testing using the monolithic ut_assert but the desired path forward is to use the distributed stubs (self consistent in each delivered repo), and OSAL.

See [cfs_osal:201] for fix in osal which resolves this issue. Closing this ticket as a duplicate.

skliper commented 4 years ago

Trac comment by jhageman on 2019-03-26 14:51:15:

Reopened, didn't realize there was a changeset associated [changeset:9cb428d]

skliper commented 4 years ago

Trac comment by jhageman on 2019-03-26 14:51:32:

CCB - ready for code review

skliper commented 4 years ago

Trac comment by jhageman on 2019-05-13 15:32:53:

Needs comparison with GSFC App testing patch prior to review/discussion

skliper commented 4 years ago

Trac comment by jhageman on 2019-06-27 09:37:19:

The only change related to cFE is [changeset:9cb428d] (the rest are ut_assert changes in the tools repo). The cFE changeset is not needed based on the current implementation (confirmed with @jhickey). Closing this ticket as OBE, "worksforme".