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

lightningnetwork / lnd / 13408822928

19 Feb 2025 08:59AM UTC coverage: 41.123% (-17.7%) from 58.794%
13408822928

Pull #9521

github

web-flow
Merge d2f397b3c into 0e8786348
Pull Request #9521: unit: remove GOACC, use Go 1.20 native coverage functionality

92496 of 224923 relevant lines covered (41.12%)

18825.83 hits per line

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

0.0
/lntypes/hash.go
1
package lntypes
2

3
import (
4
        "encoding/hex"
5
        "fmt"
6
)
7

8
// HashSize of array used to store hashes.
9
const HashSize = 32
10

11
// ZeroHash is a predefined hash containing all zeroes.
12
var ZeroHash Hash
13

14
// Hash is used in several of the lightning messages and common structures. It
15
// typically represents a payment hash.
16
type Hash [HashSize]byte
17

18
// String returns the Hash as a hexadecimal string.
19
func (hash Hash) String() string {
×
20
        return hex.EncodeToString(hash[:])
×
21
}
×
22

23
// MakeHash returns a new Hash from a byte slice.  An error is returned if
24
// the number of bytes passed in is not HashSize.
25
func MakeHash(newHash []byte) (Hash, error) {
×
26
        nhlen := len(newHash)
×
27
        if nhlen != HashSize {
×
28
                return Hash{}, fmt.Errorf("invalid hash length of %v, want %v",
×
29
                        nhlen, HashSize)
×
30
        }
×
31

32
        var hash Hash
×
33
        copy(hash[:], newHash)
×
34

×
35
        return hash, nil
×
36
}
37

38
// MakeHashFromStr creates a Hash from a hex hash string.
39
func MakeHashFromStr(newHash string) (Hash, error) {
×
40
        // Return error if hash string is of incorrect length.
×
41
        if len(newHash) != HashSize*2 {
×
42
                return Hash{}, fmt.Errorf("invalid hash string length of %v, "+
×
43
                        "want %v", len(newHash), HashSize*2)
×
44
        }
×
45

46
        hash, err := hex.DecodeString(newHash)
×
47
        if err != nil {
×
48
                return Hash{}, err
×
49
        }
×
50

51
        return MakeHash(hash)
×
52
}
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

© 2025 Coveralls, Inc