aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/store/segment_test.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2025-10-31 04:20:22 +0900
committerOphestra <cat@gensokyo.uk>2025-10-31 04:20:22 +0900
commit6a0ecced9021482f1f2f05d6ec63c1e4cd33c8a0 (patch)
tree9310939469a43d6688355ec7413bd2499915f5cb /internal/store/segment_test.go
parentb667fea1cbb6e4efc4f79ea02df6471f7826a42a (diff)
internal/store: expose save via handle
The handle is otherwise inaccessible without the compat interface. This change also moves compatibility methods to separate adapter structs to avoid inadvertently using them. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/store/segment_test.go')
-rw-r--r--internal/store/segment_test.go7
1 files changed, 5 insertions, 2 deletions
diff --git a/internal/store/segment_test.go b/internal/store/segment_test.go
index 4751c01e..dbd1acd1 100644
--- a/internal/store/segment_test.go
+++ b/internal/store/segment_test.go
@@ -30,6 +30,9 @@ func newHandle(base *check.Absolute, identity int) *store.Handle
//go:linkname open hakurei.app/internal/store.(*EntryHandle).open
func open(eh *store.EntryHandle, flag int, perm os.FileMode) (*os.File, error)
+//go:linkname save hakurei.app/internal/store.(*EntryHandle).save
+func save(eh *store.EntryHandle, state *hst.State) error
+
func TestStateEntryHandle(t *testing.T) {
t.Parallel()
@@ -44,7 +47,7 @@ func TestStateEntryHandle(t *testing.T) {
if err := eh.Destroy(); !reflect.DeepEqual(err, wantErr()) {
t.Errorf("destroy: error = %v, want %v", err, wantErr())
}
- if err := eh.Save(nil); !reflect.DeepEqual(err, wantErr()) {
+ if err := save(&eh, nil); !reflect.DeepEqual(err, wantErr()) {
t.Errorf("save: error = %v, want %v", err, wantErr())
}
if _, err := eh.Load(nil); !reflect.DeepEqual(err, wantErr()) {
@@ -90,7 +93,7 @@ func TestStateEntryHandle(t *testing.T) {
eh := store.EntryHandle{Pathname: check.MustAbs(t.TempDir()).Append("entry"),
ID: newTemplateState().ID}
- if err := eh.Save(newTemplateState()); err != nil {
+ if err := save(&eh, newTemplateState()); err != nil {
t.Fatalf("save: error = %v", err)
}