(t *testing.T)
| 839 | } |
| 840 | |
| 841 | func TestVFSFile_NewDatabase_FileSize(t *testing.T) { |
| 842 | // Test that FileSize returns 0 for a new empty database |
| 843 | client := newWriteTestReplicaClient() |
| 844 | |
| 845 | tmpDir := t.TempDir() |
| 846 | bufferPath := tmpDir + "/.litestream-write-buffer" |
| 847 | |
| 848 | logger := slog.Default() |
| 849 | f := NewVFSFile(client, "new.db", logger) |
| 850 | f.writeEnabled = true |
| 851 | f.dirty = make(map[uint32]int64) |
| 852 | f.syncInterval = 0 |
| 853 | f.bufferPath = bufferPath |
| 854 | |
| 855 | if err := f.Open(); err != nil { |
| 856 | t.Fatal(err) |
| 857 | } |
| 858 | defer f.Close() |
| 859 | |
| 860 | // FileSize should be 0 for empty database |
| 861 | size, err := f.FileSize() |
| 862 | if err != nil { |
| 863 | t.Fatal(err) |
| 864 | } |
| 865 | if size != 0 { |
| 866 | t.Errorf("expected size 0 for new database, got %d", size) |
| 867 | } |
| 868 | |
| 869 | // Write a page |
| 870 | data := make([]byte, DefaultPageSize) |
| 871 | if _, err := f.WriteAt(data, 0); err != nil { |
| 872 | t.Fatal(err) |
| 873 | } |
| 874 | |
| 875 | // FileSize should now reflect the dirty page |
| 876 | size, err = f.FileSize() |
| 877 | if err != nil { |
| 878 | t.Fatal(err) |
| 879 | } |
| 880 | if size != int64(DefaultPageSize) { |
| 881 | t.Errorf("expected size %d after write, got %d", DefaultPageSize, size) |
| 882 | } |
| 883 | } |
| 884 | |
| 885 | func TestSetWriteEnabled_ReadValue(t *testing.T) { |
| 886 | client := newWriteTestReplicaClient() |
nothing calls this directly
no test coverage detected