• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

IQSS / dataverse-frontend / 19308297264

12 Nov 2025 06:45PM UTC coverage: 97.795% (-0.03%) from 97.82%
19308297264

push

github

web-flow
Merge pull request #882 from IQSS/Fix-File&Dataset-Version-Summaries

Fix Dataset and File Version Summaries

4128 of 4290 branches covered (96.22%)

Branch coverage included in aggregate %.

35 of 36 new or added lines in 7 files covered. (97.22%)

1 existing line in 1 file now uncovered.

8112 of 8226 relevant lines covered (98.61%)

10695.29 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

94.29
/src/sections/dataset/dataset-versions/view-difference/useGetDatasetVersionDiff.ts
1
import { useEffect, useState } from 'react'
2
import { DatasetRepository } from '@/dataset/domain/repositories/DatasetRepository'
3
import { getDatasetVersionDiff } from '@/dataset/domain/useCases/getDatasetVersionDiff'
4
import { DatasetVersionDiff } from '@/dataset/domain/models/DatasetVersionDiff'
5
import {
6
  DatasetNonNumericVersion,
7
  DatasetNonNumericVersionSearchParam
8
} from '@/dataset/domain/models/Dataset'
9

10
interface UseGetDatasetVersionDiff {
11
  differences: DatasetVersionDiff | undefined
12
  error: string | null
13
  isLoading: boolean
14
}
15

16
interface getDatasetVersionDiffProps {
17
  datasetRepository: DatasetRepository
18
  persistentId: string
19
  oldVersion: string
20
  newVersion: string
21
}
22

23
export const useGetDatasetVersionDiff = ({
39✔
24
  datasetRepository,
25
  persistentId,
26
  oldVersion,
27
  newVersion
28
}: getDatasetVersionDiffProps): UseGetDatasetVersionDiff => {
29
  const [differences, setDifferences] = useState<DatasetVersionDiff | undefined>()
1,387✔
30
  const [isLoading, setIsLoading] = useState<boolean>(true)
1,387✔
31
  const [error, setError] = useState<string | null>(null)
1,387✔
32

33
  useEffect(() => {
1,387✔
34
    const handleGetDatasetVersionDiff = async () => {
491✔
35
      setIsLoading(true)
491✔
36
      try {
491✔
37
        const response = await getDatasetVersionDiff(
491✔
38
          datasetRepository,
39
          persistentId,
40
          oldVersion,
41
          newVersion == DatasetNonNumericVersionSearchParam.DRAFT
491✔
42
            ? DatasetNonNumericVersion.DRAFT
43
            : newVersion,
44
          true
45
        )
46

47
        if (response) {
484!
48
          const hasAnyChanges =
49
            response.metadataChanges !== undefined ||
484✔
50
            response.filesAdded !== undefined ||
51
            response.filesRemoved !== undefined ||
52
            response.fileChanges !== undefined ||
53
            response.filesReplaced !== undefined ||
54
            response.termsOfAccess !== undefined
55

56
          setDifferences(hasAnyChanges ? response : undefined)
484✔
57
        } else {
NEW
58
          setDifferences(undefined)
×
59
        }
60
        setError(null)
484✔
61
      } catch (err) {
62
        const errorMessage =
63
          err instanceof Error && err.message
7✔
64
            ? err.message
65
            : 'Something went wrong getting the information from the dataset version differences. Try again later.'
66
        setError(errorMessage)
7✔
67
      } finally {
68
        setIsLoading(false)
491✔
69
      }
70
    }
71

72
    void handleGetDatasetVersionDiff()
491✔
73
  }, [newVersion, oldVersion, persistentId, datasetRepository])
74

75
  return {
1,387✔
76
    differences,
77
    error: error,
78
    isLoading: isLoading
79
  }
80
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc