mirror of https://github.com/ARMmbed/mbed-os.git
				
				
				
			Merge pull request #14862 from LDong-Arm/storage_stubs
Unit tests: Move storage stubs into the storage directorypull/14882/head
						commit
						8d3fc33965
					
				| 
						 | 
				
			
			@ -6,7 +6,6 @@ add_library(mbed-headers INTERFACE)
 | 
			
		|||
add_library(mbed-headers-base INTERFACE)
 | 
			
		||||
add_library(mbed-headers-platform INTERFACE)
 | 
			
		||||
add_library(mbed-headers-connectivity INTERFACE)
 | 
			
		||||
add_library(mbed-headers-storage INTERFACE)
 | 
			
		||||
add_library(mbed-headers-events INTERFACE)
 | 
			
		||||
 | 
			
		||||
target_link_libraries(mbed-headers
 | 
			
		||||
| 
						 | 
				
			
			@ -14,7 +13,6 @@ target_link_libraries(mbed-headers
 | 
			
		|||
        mbed-headers-base
 | 
			
		||||
        mbed-headers-platform
 | 
			
		||||
        mbed-headers-connectivity
 | 
			
		||||
        mbed-headers-storage
 | 
			
		||||
        mbed-headers-drivers
 | 
			
		||||
        mbed-headers-hal
 | 
			
		||||
        mbed-headers-events
 | 
			
		||||
| 
						 | 
				
			
			@ -41,26 +39,6 @@ target_include_directories(mbed-headers-base
 | 
			
		|||
        ${mbed-os_SOURCE_DIR}/UNITTESTS/target_h/sys
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
target_include_directories(mbed-headers-storage
 | 
			
		||||
    INTERFACE
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/fat/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/fat/ChaN
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/littlefs
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/littlefs/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/littlefsv2/littlefs
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/littlefsv2/littlefs/bd
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/littlefs/littlefs
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/blockdevice/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/kv_config
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/kv_config/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/tdbstore/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/filesystemstore/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/kvstore_global_api/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/blockdevice/include/blockdevice
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
target_include_directories(mbed-headers-connectivity
 | 
			
		||||
    INTERFACE
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/connectivity/libraries/nanostack-libservice
 | 
			
		||||
| 
						 | 
				
			
			@ -103,7 +81,6 @@ target_include_directories(mbed-stubs-headers
 | 
			
		|||
add_subdirectory(connectivity)
 | 
			
		||||
add_subdirectory(events)
 | 
			
		||||
add_subdirectory(platform)
 | 
			
		||||
add_subdirectory(storage)
 | 
			
		||||
 | 
			
		||||
add_library(mbed-stubs INTERFACE)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -115,5 +92,4 @@ target_link_libraries(mbed-stubs
 | 
			
		|||
        mbed-stubs-hal
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-rtos
 | 
			
		||||
        mbed-stubs-storage
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,93 +0,0 @@
 | 
			
		|||
/* Copyright (c) 2020 ARM Limited
 | 
			
		||||
 * 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 EMULATEDSD_H
 | 
			
		||||
#define EMULATEDSD_H
 | 
			
		||||
 | 
			
		||||
#include "blockdevice/BlockDevice.h"
 | 
			
		||||
 | 
			
		||||
class EmulatedSD_Private;
 | 
			
		||||
 | 
			
		||||
class EmulatedSD : public mbed::BlockDevice {
 | 
			
		||||
public:
 | 
			
		||||
    EmulatedSD(const char *path);
 | 
			
		||||
    ~EmulatedSD();
 | 
			
		||||
 | 
			
		||||
    /** Initialize a block device
 | 
			
		||||
     *
 | 
			
		||||
     *  @return         0 on success or a negative error code on failure
 | 
			
		||||
     */
 | 
			
		||||
    virtual int init();
 | 
			
		||||
 | 
			
		||||
    /** Deinitialize a block device
 | 
			
		||||
     *
 | 
			
		||||
     *  @return         0 on success or a negative error code on failure
 | 
			
		||||
     */
 | 
			
		||||
    virtual int deinit();
 | 
			
		||||
 | 
			
		||||
    /** Read blocks from a block device
 | 
			
		||||
     *
 | 
			
		||||
     *  If a failure occurs, it is not possible to determine how many bytes succeeded
 | 
			
		||||
     *
 | 
			
		||||
     *  @param buffer   Buffer to write blocks to
 | 
			
		||||
     *  @param addr     Address of block to begin reading from
 | 
			
		||||
     *  @param size     Size to read in bytes, must be a multiple of the read block size
 | 
			
		||||
     *  @return         0 on success or a negative error code on failure
 | 
			
		||||
     */
 | 
			
		||||
    virtual int read(void *buffer, bd_addr_t addr, bd_size_t size);
 | 
			
		||||
 | 
			
		||||
    /** Program blocks to a block device
 | 
			
		||||
     *
 | 
			
		||||
     *  The blocks must have been erased prior to being programmed
 | 
			
		||||
     *
 | 
			
		||||
     *  If a failure occurs, it is not possible to determine how many bytes succeeded
 | 
			
		||||
     *
 | 
			
		||||
     *  @param buffer   Buffer of data to write to blocks
 | 
			
		||||
     *  @param addr     Address of block to begin writing to
 | 
			
		||||
     *  @param size     Size to write in bytes, must be a multiple of the program block size
 | 
			
		||||
     *  @return         0 on success or a negative error code on failure
 | 
			
		||||
     */
 | 
			
		||||
    virtual int program(const void *buffer, bd_addr_t addr, bd_size_t size);
 | 
			
		||||
 | 
			
		||||
    /** Get the size of a readable block
 | 
			
		||||
     *
 | 
			
		||||
     *  @return         Size of a readable block in bytes
 | 
			
		||||
     */
 | 
			
		||||
    virtual bd_size_t get_read_size() const;
 | 
			
		||||
 | 
			
		||||
    /** Get the size of a programmable block
 | 
			
		||||
     *
 | 
			
		||||
     *  @return         Size of a programmable block in bytes
 | 
			
		||||
     *  @note Must be a multiple of the read size
 | 
			
		||||
     */
 | 
			
		||||
    virtual bd_size_t get_program_size() const;
 | 
			
		||||
 | 
			
		||||
    /** Get the total size of the underlying device
 | 
			
		||||
     *
 | 
			
		||||
     *  @return         Size of the underlying device in bytes
 | 
			
		||||
     */
 | 
			
		||||
    virtual bd_size_t size() const;
 | 
			
		||||
 | 
			
		||||
    /** Get the BlockDevice class type.
 | 
			
		||||
     *
 | 
			
		||||
     *  @return         A string represent the BlockDevice class type.
 | 
			
		||||
     */
 | 
			
		||||
    virtual const char *get_type() const;
 | 
			
		||||
private:
 | 
			
		||||
    EmulatedSD_Private *_p;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif // EMULATEDSD_H
 | 
			
		||||
| 
						 | 
				
			
			@ -1,26 +0,0 @@
 | 
			
		|||
# Copyright (c) 2021 ARM Limited. All rights reserved.
 | 
			
		||||
# SPDX-License-Identifier: Apache-2.0
 | 
			
		||||
 | 
			
		||||
add_library(mbed-stubs-storage)
 | 
			
		||||
 | 
			
		||||
target_sources(mbed-stubs-storage
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        BufferedBlockDevice_stub.cpp
 | 
			
		||||
        ChainingBlockDevice_stub.cpp
 | 
			
		||||
        EmulatedSD.cpp
 | 
			
		||||
        ExhaustibleBlockDevice_stub.cpp
 | 
			
		||||
        FlashSimBlockDevice_stub.cpp
 | 
			
		||||
        HeapBlockDevice_stub.cpp
 | 
			
		||||
        MBRBlockDevice_stub.cpp
 | 
			
		||||
        ObservingBlockDevice_stub.cpp
 | 
			
		||||
        ProfilingBlockDevice_stub.cpp
 | 
			
		||||
        ReadOnlyBlockDevice_stub.cpp
 | 
			
		||||
        SlicingBlockDevice_stub.cpp
 | 
			
		||||
        kv_config_stub.cpp
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
target_link_libraries(mbed-stubs-storage
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -1,120 +0,0 @@
 | 
			
		|||
/* Copyright (c) 2020 ARM Limited
 | 
			
		||||
 * 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 "EmulatedSD.h"
 | 
			
		||||
#include <stdio.h>
 | 
			
		||||
 | 
			
		||||
class EmulatedSD_Private {
 | 
			
		||||
public:
 | 
			
		||||
    ~EmulatedSD_Private() {
 | 
			
		||||
        if (fs) {
 | 
			
		||||
            fclose(fs);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    const char *path;
 | 
			
		||||
    FILE *fs;
 | 
			
		||||
    bd_size_t size;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
EmulatedSD::EmulatedSD(const char *path)
 | 
			
		||||
{
 | 
			
		||||
    _p = new EmulatedSD_Private;
 | 
			
		||||
    _p->path = path;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
EmulatedSD::~EmulatedSD()
 | 
			
		||||
{
 | 
			
		||||
    delete _p;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int EmulatedSD::init()
 | 
			
		||||
{
 | 
			
		||||
    _p->fs = fopen(_p->path, "r+");
 | 
			
		||||
    if (!_p->fs) {
 | 
			
		||||
        perror("fdopen():");
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    if (fseek(_p->fs, 0, SEEK_END)) {
 | 
			
		||||
        perror("fseek()");
 | 
			
		||||
        fclose(_p->fs);
 | 
			
		||||
        _p->fs = nullptr;
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    _p->size = ftell(_p->fs);
 | 
			
		||||
    rewind(_p->fs);
 | 
			
		||||
    return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int EmulatedSD::deinit()
 | 
			
		||||
{
 | 
			
		||||
    fclose(_p->fs);
 | 
			
		||||
    _p->fs = nullptr;
 | 
			
		||||
    return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int EmulatedSD::read(void *buffer, bd_addr_t addr, bd_size_t size)
 | 
			
		||||
{
 | 
			
		||||
    if (!_p->fs) {
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    if (fseek(_p->fs, addr, SEEK_SET)) {
 | 
			
		||||
        perror("fseek()");
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    size_t r = fread(buffer, size, 1, _p->fs);
 | 
			
		||||
    if (r < 1) {
 | 
			
		||||
        perror("fread()");
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int EmulatedSD::program(const void *buffer, bd_addr_t addr, bd_size_t size)
 | 
			
		||||
{
 | 
			
		||||
    if (!_p->fs) {
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    if (fseek(_p->fs, addr, SEEK_SET)) {
 | 
			
		||||
        perror("fseek()");
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    size_t r = fwrite(buffer, size, 1, _p->fs);
 | 
			
		||||
    if (r < 1) {
 | 
			
		||||
        perror("fread()");
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bd_size_t EmulatedSD::get_read_size() const
 | 
			
		||||
{
 | 
			
		||||
    return 512;
 | 
			
		||||
}
 | 
			
		||||
bd_size_t EmulatedSD::get_program_size() const
 | 
			
		||||
{
 | 
			
		||||
    return 512;
 | 
			
		||||
}
 | 
			
		||||
bd_size_t EmulatedSD::size() const
 | 
			
		||||
{
 | 
			
		||||
    if (!_p->fs) {
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    return _p->size;
 | 
			
		||||
}
 | 
			
		||||
const char *EmulatedSD::get_type() const
 | 
			
		||||
{
 | 
			
		||||
    return "SD";
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -25,6 +25,7 @@ target_link_libraries(${TEST_NAME}
 | 
			
		|||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-cellular
 | 
			
		||||
        mbed-headers-filesystem
 | 
			
		||||
        mbed-stubs
 | 
			
		||||
        mbed-stubs-cellular
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -35,6 +35,7 @@ if(${CMAKE_CROSSCOMPILING})
 | 
			
		|||
else()
 | 
			
		||||
    # Add these subdirectories for the Unit test
 | 
			
		||||
    add_subdirectory(blockdevice)
 | 
			
		||||
    add_subdirectory(filesystem)
 | 
			
		||||
    add_subdirectory(kvstore)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,3 +3,4 @@
 | 
			
		|||
 | 
			
		||||
add_subdirectory(blockdevice)
 | 
			
		||||
add_subdirectory(SFDP)
 | 
			
		||||
add_subdirectory(doubles)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -19,7 +19,8 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,8 +14,10 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
        mbed-stubs-platform   
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,8 +15,10 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,8 +14,10 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,8 +14,10 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -58,7 +58,9 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,8 +14,10 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,8 +15,10 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,8 +15,10 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,8 +15,10 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,7 +15,9 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-stubs-platform      
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-blockdevice
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,38 @@
 | 
			
		|||
# Copyright (c) 2021 ARM Limited. All rights reserved.
 | 
			
		||||
# SPDX-License-Identifier: Apache-2.0
 | 
			
		||||
 | 
			
		||||
add_library(mbed-headers-blockdevice INTERFACE)
 | 
			
		||||
 | 
			
		||||
target_include_directories(mbed-headers-blockdevice
 | 
			
		||||
    INTERFACE
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/blockdevice/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/blockdevice/include/blockdevice
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
add_library(mbed-stubs-blockdevice)
 | 
			
		||||
 | 
			
		||||
target_include_directories(mbed-stubs-blockdevice
 | 
			
		||||
    PUBLIC
 | 
			
		||||
        .
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
target_sources(mbed-stubs-blockdevice
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        BufferedBlockDevice_stub.cpp
 | 
			
		||||
        ChainingBlockDevice_stub.cpp
 | 
			
		||||
        ExhaustibleBlockDevice_stub.cpp
 | 
			
		||||
        FlashSimBlockDevice_stub.cpp
 | 
			
		||||
        HeapBlockDevice_stub.cpp
 | 
			
		||||
        MBRBlockDevice_stub.cpp
 | 
			
		||||
        ObservingBlockDevice_stub.cpp
 | 
			
		||||
        ProfilingBlockDevice_stub.cpp
 | 
			
		||||
        ReadOnlyBlockDevice_stub.cpp
 | 
			
		||||
        SlicingBlockDevice_stub.cpp
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
target_link_libraries(mbed-stubs-blockdevice
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers-base
 | 
			
		||||
        mbed-headers-platform
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -16,7 +16,6 @@
 | 
			
		|||
 */
 | 
			
		||||
 | 
			
		||||
#include "ExhaustibleBlockDevice.h"
 | 
			
		||||
#include "mbed.h"
 | 
			
		||||
#include "mbed_critical.h"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -17,7 +17,6 @@
 | 
			
		|||
 | 
			
		||||
#include "ObservingBlockDevice.h"
 | 
			
		||||
#include "ReadOnlyBlockDevice.h"
 | 
			
		||||
#include "mbed.h"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ObservingBlockDevice::ObservingBlockDevice(BlockDevice *bd)
 | 
			
		||||
| 
						 | 
				
			
			@ -1,6 +1,10 @@
 | 
			
		|||
# Copyright (c) 2020 ARM Limited. All rights reserved.
 | 
			
		||||
# SPDX-License-Identifier: Apache-2.0
 | 
			
		||||
 | 
			
		||||
if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME AND BUILD_TESTING)
 | 
			
		||||
    add_subdirectory(tests/UNITTESTS)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
add_subdirectory(fat)
 | 
			
		||||
add_subdirectory(littlefs)
 | 
			
		||||
add_subdirectory(littlefsv2)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
*
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
# Copyright (c) 2021 ARM Limited. All rights reserved.
 | 
			
		||||
# SPDX-License-Identifier: Apache-2.0
 | 
			
		||||
 | 
			
		||||
add_library(mbed-headers-filesystem INTERFACE)
 | 
			
		||||
 | 
			
		||||
target_include_directories(mbed-headers-filesystem
 | 
			
		||||
    INTERFACE
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/littlefs
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/littlefs/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/filesystem/include
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -1,6 +1,10 @@
 | 
			
		|||
# Copyright (c) 2020 ARM Limited. All rights reserved.
 | 
			
		||||
# SPDX-License-Identifier: Apache-2.0
 | 
			
		||||
 | 
			
		||||
if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME AND BUILD_TESTING)
 | 
			
		||||
    add_subdirectory(tests/UNITTESTS)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
add_subdirectory(tdbstore)
 | 
			
		||||
add_subdirectory(filesystemstore)
 | 
			
		||||
add_subdirectory(securestore)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,3 +2,4 @@
 | 
			
		|||
# SPDX-License-Identifier: Apache-2.0
 | 
			
		||||
 | 
			
		||||
add_subdirectory(FileSystemStore)
 | 
			
		||||
add_subdirectory(doubles)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,8 +33,11 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-headers-filesystem
 | 
			
		||||
        mbed-headers-kvstore
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        mbed-stubs-storage
 | 
			
		||||
        mbed-stubs-filesystemstore
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,15 @@
 | 
			
		|||
# Copyright (c) 2021 ARM Limited. All rights reserved.
 | 
			
		||||
# SPDX-License-Identifier: Apache-2.0
 | 
			
		||||
 | 
			
		||||
add_library(mbed-stubs-filesystemstore)
 | 
			
		||||
 | 
			
		||||
target_sources(mbed-stubs-filesystemstore
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        filesystemstore_kv_config_stub.cpp
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
target_link_libraries(mbed-stubs-filesystemstore
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-headers-kvstore
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -21,7 +21,9 @@ target_sources(${TEST_NAME}
 | 
			
		|||
target_link_libraries(${TEST_NAME}
 | 
			
		||||
    PRIVATE
 | 
			
		||||
        mbed-headers
 | 
			
		||||
        mbed-stubs-platform        
 | 
			
		||||
        mbed-headers-blockdevice
 | 
			
		||||
        mbed-headers-kvstore
 | 
			
		||||
        mbed-stubs-platform
 | 
			
		||||
        gmock_main
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
*
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,14 @@
 | 
			
		|||
# Copyright (c) 2021 ARM Limited. All rights reserved.
 | 
			
		||||
# SPDX-License-Identifier: Apache-2.0
 | 
			
		||||
 | 
			
		||||
add_library(mbed-headers-kvstore INTERFACE)
 | 
			
		||||
 | 
			
		||||
target_include_directories(mbed-headers-kvstore
 | 
			
		||||
    INTERFACE
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/kv_config/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/kvstore_global_api/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/securestore/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/tdbstore/include
 | 
			
		||||
        ${mbed-os_SOURCE_DIR}/storage/kvstore/filesystemstore/include
 | 
			
		||||
)
 | 
			
		||||
		Loading…
	
		Reference in New Issue