diff --git a/tests/nvs/cfg.json b/tests/nvs/cfg.json new file mode 100644 index 00000000000..c1b23d46842 --- /dev/null +++ b/tests/nvs/cfg.json @@ -0,0 +1,39 @@ +{ + "targets": [ + { + "name": "esp32", + "fqbn":[ + "espressif:esp32:esp32:PSRAM=enabled,PartitionScheme=huge_app,FlashMode=dio", + "espressif:esp32:esp32:PSRAM=enabled,PartitionScheme=huge_app,FlashMode=dout,FlashFreq=40", + "espressif:esp32:esp32:PSRAM=enabled,PartitionScheme=huge_app,FlashMode=qio", + "espressif:esp32:esp32:PSRAM=enabled,PartitionScheme=huge_app,FlashMode=qout,FlashFreq=40" + ] + }, + { + "name": "esp32s2", + "fqbn": [ + "espressif:esp32:esp32s2:PSRAM=enabled,PartitionScheme=huge_app,FlashMode=dio", + "espressif:esp32:esp32s2:PSRAM=enabled,PartitionScheme=huge_app,FlashMode=dout,FlashFreq=40", + "espressif:esp32:esp32s2:PSRAM=enabled,PartitionScheme=huge_app,FlashMode=qio", + "espressif:esp32:esp32s2:PSRAM=enabled,PartitionScheme=huge_app,FlashMode=qout,FlashFreq=40" + ] + }, + { + "name": "esp32c3", + "fqbn": [ + "espressif:esp32:esp32c3:PartitionScheme=huge_app,FlashMode=dio", + "espressif:esp32:esp32c3:PartitionScheme=huge_app,FlashMode=dout,FlashFreq=40", + "espressif:esp32:esp32c3:PartitionScheme=huge_app,FlashMode=qio", + "espressif:esp32:esp32c3:PartitionScheme=huge_app,FlashMode=qout,FlashFreq=40" + ] + }, + { + "name": "esp32s3", + "fqbn": [ + "espressif:esp32:esp32s3:PSRAM=opi,USBMode=default,PartitionScheme=huge_app,FlashMode=qio", + "espressif:esp32:esp32s3:PSRAM=opi,USBMode=default,PartitionScheme=huge_app,FlashMode=qio120", + "espressif:esp32:esp32s3:PSRAM=opi,USBMode=default,PartitionScheme=huge_app,FlashMode=dio" + ] + } + ] +} \ No newline at end of file diff --git a/tests/nvs/nvs.ino b/tests/nvs/nvs.ino new file mode 100644 index 00000000000..7bfe25ff00b --- /dev/null +++ b/tests/nvs/nvs.ino @@ -0,0 +1,36 @@ +#include + +Preferences preferences; + +void setup() { + Serial.begin(115200); + + while (!Serial) { + ; + } + + preferences.begin("my-app", false); + + // Get the counter value, if the key does not exist, return a default value of 0 + unsigned int counter = preferences.getUInt("counter", 0); + + // Print the counter to Serial Monitor + Serial.printf("Current counter value: %u\n", counter); + + // Increase counter by 1 + counter++; + + // Store the counter to the Preferences + preferences.putUInt("counter", counter); + + // Close the Preferences + preferences.end(); + + // Wait 1 second + delay(1000); + + // Restart ESP + ESP.restart(); +} + +void loop() {} diff --git a/tests/nvs/test_nvs.py b/tests/nvs/test_nvs.py new file mode 100644 index 00000000000..656ab544ee2 --- /dev/null +++ b/tests/nvs/test_nvs.py @@ -0,0 +1,7 @@ +def test_nvs(dut): + dut.expect('Current counter value: 0') + dut.expect('Current counter value: 1') + dut.expect('Current counter value: 2') + dut.expect('Current counter value: 3') + dut.expect('Current counter value: 4') + dut.expect('Current counter value: 5') \ No newline at end of file