diff --git a/test/bios-spi/meson.build b/test/bios-spi/meson.build
new file mode 100644
index 0000000..149f4a0
--- /dev/null
+++ b/test/bios-spi/meson.build
@@ -0,0 +1,23 @@
+e = executable(
+    'test_bios_spi',
+    'test_bios_spi.cpp',
+    bios_spi_src,
+    include_directories: [
+      common_include,
+      bios_spi_include,
+    ],
+    dependencies: [
+      libgpiod,
+      libpldm_dep,
+      sdbusplus_dep,
+      pdi_dep,
+      phosphor_logging_dep,
+    ],
+    link_with: [libpldmutil, software_common_lib],
+)
+
+test(
+        'test_bios_spi',
+        e,
+        workdir: meson.current_source_dir(),
+)
diff --git a/test/bios-spi/test_bios_spi.cpp b/test/bios-spi/test_bios_spi.cpp
new file mode 100644
index 0000000..aea6ebc
--- /dev/null
+++ b/test/bios-spi/test_bios_spi.cpp
@@ -0,0 +1,43 @@
+#include "bios-spi/spi_device.hpp"
+#include "spi_device_code_updater.hpp"
+
+#include <phosphor-logging/lg2.hpp>
+#include <sdbusplus/asio/connection.hpp>
+#include <sdbusplus/asio/object_server.hpp>
+#include <sdbusplus/async.hpp>
+#include <sdbusplus/server.hpp>
+#include <xyz/openbmc_project/Association/Definitions/server.hpp>
+#include <xyz/openbmc_project/Software/Update/server.hpp>
+
+#include <iostream>
+#include <memory>
+
+int main()
+{
+    sdbusplus::async::context ctx;
+
+    try
+    {
+        SPIDeviceCodeUpdater spidcu(ctx, true, false);
+        uint32_t vendorIANA = 0x0000a015;
+        std::string compatible = "com.testvendor.testcomponent";
+        SPIDeviceCodeUpdater* cu = &spidcu;
+        std::vector<std::string> gpioNames;
+        std::vector<uint8_t> gpioValues;
+
+        DeviceConfig config(vendorIANA, compatible, "SPIFlash", "HostSPI");
+
+        auto sd = std::make_unique<SPIDevice>(
+            ctx, "1e630000.spi", true, true, gpioNames, gpioValues, config, cu,
+            true, true, false);
+
+        spidcu.devices.insert(std::move(sd));
+    }
+    catch (std::exception& e)
+    {
+        std::cerr << e.what() << std::endl;
+        return 1;
+    }
+
+    return 0;
+}
diff --git a/test/meson.build b/test/meson.build
index 6c436e2..bf0ca44 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -7,3 +7,4 @@
 )
 
 subdir('common')
+subdir('bios-spi')
