Files
go-dpkg/deb822/reader_test.go
Matheus Sampaio Queiroga 8cf5fcbfc3
All checks were successful
Golang test / go-test (pull_request) Successful in 21s
Golang test / go-test (push) Successful in 21s
Refactor deb822 package: Remove deprecated files and implement new encoding/decoding logic
- Deleted old deb822_encode.go and deb822_types.go files.
- Introduced new deb822_encode.go with improved Marshall function and Writer struct for encoding.
- Added deb822_decode.go for decoding functionality with enhanced error handling.
- Created deb822_rawdata.go to define RawData type for handling raw deb822 values.
- Implemented Description type in deb822/datatype/description.go for structured description handling.
- Updated Package struct in dpkg/header.go to use new Description type.
- Refactored UnmarshalBinary method in dpkg/header.go to utilize new deb822 decoding logic.
- Added comprehensive tests for encoding and decoding in deb822_encode_test.go and deb822_decode_test.go.
- Removed internal scanner package as it was no longer needed.

Signed-off-by: Matheus Sampaio Queiroga <srherobrine20@gmail.com>
2025-06-22 22:05:41 -03:00

38 lines
547 B
Go

package deb822
import (
"io"
"os"
"testing"
)
func TestReader(t *testing.T) {
file, err := os.Open("./content/Packages")
if err != nil {
t.Skipf("cannot open Packages file to test reader: %v", err)
return
}
defer file.Close()
r := NewReader(file)
var pkgCount int
for {
_, _, err := r.Next()
switch err {
case nil:
case io.EOF:
t.Logf("Pkgs reader: %d", pkgCount)
return
case ErrInvalidDeb822:
t.Error(err)
return
case ErrNextDeb822:
pkgCount++
continue
default:
t.Error(err)
return
}
}
}