Commit Graph

266 Commits (refactor_mbed_host_tests)

Author SHA1 Message Date
Jaeden Amero 7f7571657e test: Fix function does not return a value warnings
Many test stub functions are meant to return a value, but weren't. Clang
would generate a warning for each instance where we weren't returning
anything in a function that was meant to return a value.

    warning: non-void function does not return a value [-Wreturn-type]

For a specific example, my_radio::time_on_air() is supposed to return a
uint32_t, but wasn't returning anything. We'll return a zero instead of
relying on undefined behavior.

Without this, clang 11.0.1 was generating a virtual function
implementation with a `ud2` instruction to abort at run-time, causing
some execution of some unit tests to abort.

    Running main() from gmock_main.cc
    [==========] Running 10 tests from 1 test suite.
    [----------] Global test environment set-up.
    [----------] 10 tests from Test_LoRaPHYUS915
    [ RUN      ] Test_LoRaPHYUS915.constructor
    [       OK ] Test_LoRaPHYUS915.constructor (0 ms)
    [ RUN      ] Test_LoRaPHYUS915.restore_default_channels
    [       OK ] Test_LoRaPHYUS915.restore_default_channels (0 ms)
    [ RUN      ] Test_LoRaPHYUS915.rx_config
    [       OK ] Test_LoRaPHYUS915.rx_config (0 ms)
    [ RUN      ] Test_LoRaPHYUS915.tx_config
    Process 35669 stopped
    * thread #1, name = 'lorawan-loraphy-', stop reason = signal SIGILL: privileged instruction
        frame #0: 0x0000000000276f73 lorawan-loraphy-us915-unittest`my_radio::time_on_air(this=0x0000000800c2b048, modem=MODEM_LORA, pkt_len='\0') at Test_LoRaPHYUS915.cpp:90:5
       87       };
       88
       89       virtual uint32_t time_on_air(radio_modems_t modem, uint8_t pkt_len)
    -> 90       {
       91       };
       92
       93       virtual bool perform_carrier_sense(radio_modems_t modem,
    (lldb) disassemble --pc
    lorawan-loraphy-us915-unittest`my_radio::time_on_air:
    ->  0x276f73 <+67>: ud2
        0x276f75:       int3
        0x276f76:       int3
        0x276f77:       int3
    (lldb)
2021-05-27 09:38:18 +01:00
Rajkumar Kanagaraj 10625b35b1 CMake: Update hal and platform stub CMake linker options for coverage
- Armclang is not working when we add gcov as target_link_libraries,
modified to pass as linker options with --coverage so it can work armclang and gcc
2021-05-11 04:27:09 -07:00
Rajkumar Kanagaraj d9db59f38c sort stubs into libraries 2021-05-11 02:29:56 -07:00
Vincent Coubard 70920d442f Lora: Add LoRaWANTimer::clear in stubs 2021-03-12 09:48:50 +00:00
Arto Kinnunen d001b7a441 Update unittests 2020-11-20 10:06:57 +02:00
talorion 191ec42dd6 pwmout - UNITTESTS - add read methods for period and pulsewidth 2020-09-02 13:39:16 +02:00
Rajkumar Kanagaraj fafa0c41ed Update UNITTESTS header reference 2020-08-25 16:06:56 +01:00
Rajkumar Kanagaraj 07511d39b1 Fix UNITTESTS build failure 2020-08-14 12:32:50 +01:00
George Psimenos 76f37fb2bc Restructure events directory & move tests 2020-07-28 09:17:19 +01:00
Martin Kojtal 6bd52719f6
Merge pull request #13335 from rajkan01/netsocket_dir_restructure
Restructure netsocket directory
2020-07-27 14:35:27 +01:00
Rajkumar Kanagaraj 21325e281a Update netsocket header and source reference in other libraries 2020-07-23 06:22:15 -07:00
Rajkumar Kanagaraj d956116c36 Update greentea config, header reference 2020-07-20 07:33:52 -07:00
Martin Kojtal 2b60c871d8
Merge pull request #13264 from ashok-rao/rtos-refactor
Moving around a few items within \rtos
2020-07-20 10:39:19 +01:00
Rajkumar Kanagaraj f58c5631c0 Fix UNITTESTS issue 2020-07-19 10:02:32 -07:00
Rajkumar Kanagaraj 3bcb4eb260 Unittests and Astyle:
- Update the header reference and source reference in cmake
- Update astyleignore to ignore blockdevice UNITTESTS
- Removed the redundant debug log
2020-07-17 03:12:03 -07:00
Rajkumar Kanagaraj fdaaffdc7a Stroage unittest directory restructure
- Move UNITTESTS/features/storage to UNITTESTS/storage
- update the .cmake files to refer the new directory
2020-07-10 14:59:53 +01:00
Kevin Bracey 74a51b6782 Add ThisThread Chrono stubs 2020-05-11 14:18:04 +03:00
Kevin Bracey ee88235e69 Add Semaphore Chrono stubs 2020-05-11 14:18:04 +03:00
Kevin Bracey 3b7eae1109 Add Kernel::impl::get_tick_count() stub 2020-05-11 14:18:04 +03:00
Kevin Bracey 355b45ade1 Cellular: Convert to Chrono
Note that documentation for random_max_start_delay config setting has
been changed to indicate that the setting is in seconds, and always has
been. No functional change.
2020-05-11 14:18:04 +03:00
Martin Kojtal d1ae0d570c
Merge pull request #12425 from kjbracey-arm/chrono
C++ Chrono support
2020-04-30 11:41:43 +02:00
Martin Kojtal 1ddfa59ea7
Merge pull request #12463 from kjbracey-arm/sockstats
Clean up and optimise socket statistics
2020-04-29 22:16:54 +02:00
Rajkumar Kanagaraj c71c980ccd Fix the CI build and unit test issue 2020-04-27 10:19:08 +03:00
Kimmo Vaisanen e776a9bb72 Netsocket: Add get_dns_server API for NetworkInterface
With get_dns_server DNS servers can be queried from NetworkInterface object
2020-04-14 12:04:03 +03:00
Martin Kojtal 7fce7f552c
Merge pull request #12572 from rajkan01/waitapi_remove_deprecated
Remove mbed wait deprecated APIs
2020-04-09 14:57:46 +02:00
Martin Kojtal 149235f731
Merge pull request #12589 from u-blox/disconnect
Cellular: Add deativation of context associated with profile
2020-04-09 09:39:27 +02:00
Rajkumar Kanagaraj 83be3f24a5 Remove mbed wait deprecated APIs 2020-04-08 10:35:07 +01:00
Martin Kojtal dba3962f16
Merge pull request #12570 from kjbracey-arm/nsapics
Improve nsapi_create_stack
2020-03-31 16:34:20 +02:00
Martin Kojtal 8b929726e1
Merge pull request #12609 from rajkan01/semwait_remove_deprecation
Remove Semaphore deprecated APIs
2020-03-31 10:36:43 +02:00
Syed Fahimuddin Alavi c6b6efc456 Added deativation of context associated with profile
Added emt method in At cellular context stub file
2020-03-25 16:02:18 +05:00
Kimmo Vaisanen 62170dd721 Netsocket: Fix SocketAddress stub for new API 2020-03-24 11:05:58 +02:00
Jarno Lamsa e19cd14ced Add moduletests for FileSystemStore
Baseline for the tests is similar to the TDBStore.
Differing from TDBStore moduletests, FileSystemStore doesn't include
tests for reserved data or corrupting the blockdevice, as it corrupts
the filesystem also.
2020-03-19 12:56:45 +02:00
Rajkumar Kanagaraj a6b78c6429 Remove Semaphore deprecated APIs 2020-03-16 09:37:45 -07:00
Rajkumar Kanagaraj 3674bd1842 Remove Mutex deprecated API 2020-03-06 09:39:30 -08:00
Kevin Bracey 0cf1fd7811 Remove unnecessary NetworkStack casts 2020-03-05 16:45:36 +02:00
Kevin Bracey eb10cc18c5 Optimise SocketStats
* Remove unnecessary virtual destructor.
* Use inline empty functions when disabled.
* Remove pointless `const`s from declarations.
2020-03-04 14:54:17 +02:00
Martin Kojtal eaac84be72
Merge pull request #12467 from kjbracey-arm/nsapics
Inline nsapi_create_stack(NetworkStack)
2020-03-03 14:13:28 +00:00
Anna Bridge 8c17270306
Merge pull request #12480 from 0xc0170/fix_spdx
Fix SPDX identifiers and licenses (excluding features and targets)
2020-02-21 16:34:30 +00:00
Kevin Bracey f40c5616e1 Inline nsapi_create_stack(NetworkStack)
The rather fiddly `nsapi_create_stack` template + overloads used during
socket formation don't inline their core, which is the identity operation
for `NetworkStack *` itself. Make code generation easier by having that
core be inline.
2020-02-21 15:13:14 +02:00
Martin Kojtal 8f1bf967d3
Merge pull request #11942 from michalpasztamobica/remove_deprecated_apis
IPCore String-based API removal
2020-02-21 12:14:06 +00:00
Martin Kojtal 2d7e1ba943 unittest: fix missing licenses + spdx 2020-02-21 07:01:00 +00:00
Seppo Takalo b8361e43bd Fix license headers. 2020-02-20 16:56:30 +02:00
Seppo Takalo b013bc9563 Add EmulatedSD stubs that allow using files as a BlockDevice 2020-02-20 12:22:16 +02:00
Michal Paszta 31ce76487f unittests: BlockDevice unittests improvements
Moved the existing BufferedBlockDevice to features/storage unittests and switched it to gmock.
Added gmock-based unit tests to all other BlockDevice classes.
SlicingBlockDevice test left as a module test.
2020-02-10 19:36:52 +02:00
Martin Kojtal d847f9f164
Merge pull request #12305 from kivaisan/remove_multi_athandler_support_v2
Cellular: Remove support for multiple ATHandlers
2020-02-07 11:00:41 +00:00
Michal Paszta d9e37e7212 Unittests fixed not to use deprecated string-based API 2020-02-06 11:27:50 +02:00
Michal Paszta 458957d399 IPCore deprecated string-based API removal
String-based functions should be replaced with an explicit DNS hostname resolution and a SocketAddress-based API.
2020-02-06 11:27:49 +02:00
Martin Kojtal 8dc15ee6e1
Merge pull request #12293 from mirelachirica/remove_empty_api
Cellular: Remove API's empty default implemetations
2020-02-06 09:05:40 +00:00
Martin Kojtal 5165559a2c
Merge pull request #12142 from kjbracey-arm/thread_rm510
Thread: remove methods deprecated in 5.10
2020-02-03 15:09:34 +00:00
Kimmo Vaisanen bd0f939277 Cellular: Remove support for multiple ATHandlers
Major changes:
- Dependency to FileHandle removed from base classes
- AT_CellularDevice owns the default FileHandle and shares it with AT -classes
- Hang-up -detection moved as CellularContext::configure_hup(). Cannot be configured via CellularDevice any more.

Result on NRF52840_DK + BG96:
GCC:
Total Static RAM memory (data + bss): 29360(+296) bytes
Total Flash memory (text + data): 130660(-832) bytes

ARM:
Total Static RAM memory (data + bss): 261554(+8) bytes
Total Flash memory (text + data): 127573(-1193) bytes

IAR:
Total Static RAM memory (data + bss): 25479(+296) bytes
Total Flash memory (text + data): 102418(-527) bytes

RAM increase is because now ATHandler is no longer created with new -operator but is now member of AT_CellularDevice,
so image tool is able to count it. Actually total RAM consumption has decreased due to removed variables.
2020-01-23 09:27:44 +02:00