mirror of
https://github.com/kairos-io/kcrypt.git
synced 2025-08-09 11:27:20 +00:00
Merge pull request #6 from kairos-io/dont-let-mapping-be-nil
Don't let the mapping be nil when reading an empty file
This commit is contained in:
commit
7d077c9353
@ -71,6 +71,10 @@ func (pi PartitionInfo) UpdateMapping(partitionData string) error {
|
|||||||
return pi.save()
|
return pi.save()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (pi PartitionInfo) IsMappingNil() bool {
|
||||||
|
return pi.mapping == nil
|
||||||
|
}
|
||||||
|
|
||||||
func (pi PartitionInfo) save() error {
|
func (pi PartitionInfo) save() error {
|
||||||
data, err := yaml.Marshal(&pi.mapping)
|
data, err := yaml.Marshal(&pi.mapping)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -107,6 +111,9 @@ func ParsePartitionInfoFile(file string) (map[string]string, error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return result, errors.Wrap(err, "unmarshalling partition info file")
|
return result, errors.Wrap(err, "unmarshalling partition info file")
|
||||||
}
|
}
|
||||||
|
if result == nil {
|
||||||
|
result = map[string]string{}
|
||||||
|
}
|
||||||
|
|
||||||
return result, nil
|
return result, nil
|
||||||
}
|
}
|
||||||
|
@ -38,13 +38,15 @@ var _ = Describe("Partition Info file parsing", func() {
|
|||||||
fmt.Sprintf("partition-info-%d.yaml", time.Now().UnixNano()))
|
fmt.Sprintf("partition-info-%d.yaml", time.Now().UnixNano()))
|
||||||
})
|
})
|
||||||
|
|
||||||
It("creates the file and returns 'false' and an (empty) mapping", func() {
|
It("creates the file and returns 'false' and a non nil mapping", func() {
|
||||||
result, existed, err := pi.NewPartitionInfoFromFile(fileName)
|
result, existed, err := pi.NewPartitionInfoFromFile(fileName)
|
||||||
Expect(err).ToNot(HaveOccurred())
|
Expect(err).ToNot(HaveOccurred())
|
||||||
Expect(result).ToNot(BeNil())
|
Expect(result).ToNot(BeNil())
|
||||||
Expect(existed).To(BeFalse())
|
Expect(existed).To(BeFalse())
|
||||||
_, err = os.Stat(fileName)
|
_, err = os.Stat(fileName)
|
||||||
Expect(err).ToNot(HaveOccurred())
|
Expect(err).ToNot(HaveOccurred())
|
||||||
|
Expect(result).ToNot(BeNil())
|
||||||
|
Expect(result.IsMappingNil()).To(BeFalse())
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
Loading…
Reference in New Issue
Block a user