Review comments: Re-implemented utest_printf to use RawSerial.

Re-implemented utest_safe_putc() to use Rawserial.
Minor cosmetic changes.
Anna Bridge 2016-06-08 18:01:27 +01:00
parent 0ccdfe3ca2
commit 50f1c178e9
12 changed files with 68 additions and 31 deletions

View File

@ -17,6 +17,7 @@
*/
#include "utest/case.h"
#include "utest/utest_serial.h"
using namespace utest::v1;

View File

@ -19,7 +19,7 @@
#include "utest/default_handlers.h"
#include "utest/case.h"
#include "utest/stack_trace.h"
#include "utest/utest_serial.h"
using namespace utest::v1;

View File

@ -20,6 +20,7 @@
#include "utest/case.h"
#include "greentea-client/test_env.h"
#include "utest/stack_trace.h"
#include "utest/utest_serial.h"
using namespace utest::v1;
@ -56,7 +57,7 @@ const handlers_t utest::v1::selftest_handlers = {
};
// --- SPECIAL HANDLERS ---
// --- SPECIAL HANDLERS ---
static utest::v1::status_t unknown_test_setup_handler(const size_t) {
UTEST_LOG_FUNCTION();
utest_printf(">>> I do not know how to tell greentea that the test started, since\n");

View File

@ -18,6 +18,7 @@
#include "utest/harness.h"
#include "utest/stack_trace.h"
#include "utest/utest_serial.h"
#include <stdlib.h>

View File

@ -124,20 +124,6 @@ static int32_t utest_us_ticker_run()
return 0;
}
int utest_printf(char *str, ...)
{
volatile uint32_t primask = __get_PRIMASK();\
if ( (primask & 0x1) == 0){ \
va_list vargs;
va_start(vargs, str);
vprintf(str, vargs);
va_end(vargs);
}
return 0;
}
extern "C" {
static const utest_v1_scheduler_t utest_v1_scheduler =

View File

@ -21,8 +21,7 @@
#include "utest.h"
#include "unity.h"
#include "utest/stack_trace.h"
#include <stdio.h>
#include "utest/utest_serial.h"
using namespace utest::v1;

View File

@ -16,10 +16,10 @@
****************************************************************************
*/
#include "utest/harness.h"
#include "utest/stack_trace.h"
#include "utest/unity_handler.h"
#include "utest/harness.h"
#include "utest/stack_trace.h"
#include "utest/unity_handler.h"
#include "utest/utest_serial.h"
void utest_unity_assert_failure(void)
{
@ -35,11 +35,7 @@ void utest_unity_ignore_failure(void)
void utest_safe_putc(int chr)
{
volatile uint32_t primask = __get_PRIMASK();
if ( (primask & 0x1) == 0){
(void)putchar(chr);
}
utest_serial.putc(chr);
}

View File

@ -0,0 +1,28 @@
/****************************************************************************
* Copyright (c) 2015, ARM Limited, All Rights Reserved
* SPDX-License-Identifier: Apache-2.0
*
* Licensed 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.
****************************************************************************
*/
#include "utest/utest_serial.h"
RawSerial utest_serial(USBTX, USBRX);
void utest_safe_putc(int chr)
{
utest_serial.putc(chr);
}

View File

@ -76,7 +76,6 @@ extern "C" {
/// must be implemented by the port
void utest_v1_enter_critical_section(void);
void utest_v1_leave_critical_section(void);
int utest_printf(char *str, ...);
/// This is the default scheduler implementation used by the harness.
utest_v1_scheduler_t utest_v1_get_scheduler(void);

View File

@ -20,8 +20,6 @@
#define UTEST_UNITY_ASSERT_FAILURE_H
#include <stdint.h>
#include <stdio.h>
#include "cmsis.h"
#ifdef __cplusplus
extern "C" {

View File

@ -23,6 +23,6 @@
#include "case.h"
#include "default_handlers.h"
#include "harness.h"
#include "utest/utest_serial.h"
#endif // UTEST_H

View File

@ -0,0 +1,28 @@
/****************************************************************************
* Copyright (c) 2016, ARM Limited, All Rights Reserved
* SPDX-License-Identifier: Apache-2.0
*
* Licensed 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.
****************************************************************************
*/
#ifndef UTEST_SERIAL_H
#define UTEST_SERIAL_H
#include "mbed.h"
extern RawSerial utest_serial;
#define utest_printf(...) utest_serial.printf(__VA_ARGS__)
#endif // UTEST_SERIAL_H