]> git.giacomolli.uk - onechat/blobdiff - syncer_test.go
Document private backups and a daily user timer
[onechat] / syncer_test.go
index efa174ab3a21cd43a4836bc64ab1a7a31e124115..16f334530fc5def0b111ea702589926b3b209274 100644 (file)
@@ -28,6 +28,7 @@ func TestFlushWaitsForASyncThatStartsAfterTheWrite(t *testing.T) {
        // This write comes during the first sync, so that sync does not cover
        // it.
        s.Written()
+
        flushed := make(chan error)
        go func() {
                flushed <- s.Flush(t.Context())
@@ -35,6 +36,7 @@ func TestFlushWaitsForASyncThatStartsAfterTheWrite(t *testing.T) {
 
        gate.Release()
        gate.WaitStarted(t, 2)
+
        select {
        case err := <-flushed:
                t.Fatalf("flush returned before the second sync: %v", err)
@@ -52,6 +54,7 @@ func TestOneSyncCoversTheWritesDuringTheSyncBeforeIt(t *testing.T) {
        s := newSyncer(gate.Sync)
        s.Written()
        gate.WaitStarted(t, 1)
+
        for range 10 {
                s.Written()
        }
@@ -103,6 +106,7 @@ func TestKilledWriterLosesNoLoggedMessage(t *testing.T) {
                memory, err := openMemory(t.Context(), root, time.Now, newFakeSummarizer(), discardLog())
                require.NoError(t, err)
                require.GreaterOrEqual(t, memory.log.Len(), acknowledged)
+
                for id := range memory.log.Len() {
                        message, err := memory.log.Message(id)
                        require.NoError(t, err)
@@ -146,10 +150,12 @@ type SyncerGatedSync struct {
 
 func (g *SyncerGatedSync) Sync() error {
        g.mutex.Lock()
+
        g.count++
        g.mutex.Unlock()
 
        g.started <- struct{}{}
+
        <-g.release
 
        return nil
@@ -167,6 +173,7 @@ func (g *SyncerGatedSync) WaitStarted(t *testing.T, n int) {
 // Release lets the running sync end.
 func (g *SyncerGatedSync) Release() {
        <-g.started
+
        g.release <- struct{}{}
 }
 
@@ -206,6 +213,7 @@ func syncerRunKilledWriter(t *testing.T, root string, count int) int {
        }
 
        require.NoError(t, command.Process.Kill())
+
        for scanner.Scan() {
                _, err = strconv.Atoi(strings.TrimSpace(scanner.Text()))
                if err == nil {