diff seobeo/BUILD @ 126:e7899c93da77

Remove playground.
author June Park <parkjune1995@gmail.com>
date Thu, 08 Jan 2026 18:03:34 -0800
parents f236c895604e
children 9af248484ba2
line wrap: on
line diff
--- a/seobeo/BUILD	Thu Jan 08 08:46:49 2026 -0800
+++ b/seobeo/BUILD	Thu Jan 08 18:03:34 2026 -0800
@@ -1,12 +1,13 @@
 load("@rules_cc//cc:cc_library.bzl", "cc_library")
 
-# File group 
+# File group
 filegroup(
   name = "seobeo_hdrs",
   srcs = [
     "seobeo.h",
     "seobeo_internal.h",
     "snapshot_creator.h",
+    "s_test_generator.h",
   ],
   visibility = ["//visibility:public"],
 )
@@ -353,3 +354,63 @@
   actual = ":seobeo",
   visibility = ["//visibility:public"],
 )
+# ============================================================================
+# Testing Utilities
+# ============================================================================
+
+# Testing library with snapshot and test generation tools
+alias(
+  name = "seobeo_test",
+  actual = select({
+    "//config:macos":  ":seobeo_test_macos",
+    "//config:linux":  ":seobeo_test_linux",
+    "//conditions:default": ":seobeo_test_linux",
+  }),
+  visibility = ["//visibility:public"],
+)
+
+cc_library(
+  name = "seobeo_test_macos",
+  srcs = [
+    "snapshot_creator.c",
+    "s_test_generator.c",
+  ],
+  hdrs = [
+    "snapshot_creator.h",
+    "s_test_generator.h",
+  ],
+  deps = [
+    ":seobeo_tcp_client_macos",
+  ],
+  target_compatible_with = [
+    "@platforms//os:osx",
+  ],
+  visibility = ["//visibility:public"],
+)
+
+cc_library(
+  name = "seobeo_test_linux",
+  srcs = [
+    "snapshot_creator.c",
+    "s_test_generator.c",
+  ],
+  hdrs = [
+    "snapshot_creator.h",
+    "s_test_generator.h",
+  ],
+  deps = [
+    ":seobeo_tcp_client_linux",
+  ],
+  target_compatible_with = [
+    "@platforms//os:linux",
+  ],
+  visibility = ["//visibility:public"],
+)
+
+# Test generator tool - generates test files from route definitions
+cc_binary(
+  name = "test_generator",
+  srcs = ["tools/test_generator_main.c"],
+  deps = [":seobeo_test"],
+  visibility = ["//visibility:public"],
+)