Forge
csharpf8555a15
1using System.Text;
2using OutWit.Database.Core.BouncyCastle;
3using OutWit.Database.Core.Builder;
4
5BouncyCastleProviderRegistration.EnsureRegistered();
6
7if (args.Length < 1)
8{
9 Console.Error.WriteLine("usage: WitDbFixtures <output-dir>");
10 return 1;
11}
12
13var outDir = Path.GetFullPath(args[0]);
14Directory.CreateDirectory(outDir);
15
16WriteT1a(Path.Combine(outDir, "t1a-plain-btree.witdb"));
17WriteT1b(Path.Combine(outDir, "t1b-aes-intercom-like.witdb"));
18
19Console.WriteLine($"fixtures written to {outDir}");
20return 0;
21
22static void WriteT1a(string path)
23{
24 if (File.Exists(path))
25 {
26 File.Delete(path);
27 }
28
29 using var db = WitDatabase.Create(path);
30 db.Put(Encoding.UTF8.GetBytes("contract:t1a"), Encoding.UTF8.GetBytes("plain-btree"));
31}
32
33static void WriteT1b(string path)
34{
35 if (File.Exists(path))
36 {
37 File.Delete(path);
38 }
39
40 const string password = "fixture-secret";
41 using var db = WitDatabase.Create(path, password);
42 db.Put(Encoding.UTF8.GetBytes("contract:t1b"), Encoding.UTF8.GetBytes("aes-gcm"));
43}
44
View only · write via MCP/CIDE