From 972eaf29cf4a1c45c970eb366e9afa059adcf284 Mon Sep 17 00:00:00 2001 From: Maxim Babichev Date: Mon, 7 Aug 2023 21:36:36 +0300 Subject: [PATCH] update contract --- bench_test.go | 2 +- internal/visualize3d/main.go | 2 +- packer.go | 4 ++-- packer_test.go | 24 ++++++++---------------- 4 files changed, 12 insertions(+), 20 deletions(-) diff --git a/bench_test.go b/bench_test.go index fc89109..3e62dc7 100644 --- a/bench_test.go +++ b/bench_test.go @@ -34,6 +34,6 @@ func BenchmarkPacker(b *testing.B) { b.ResetTimer() for i := 0; i < b.N; i++ { - _, _ = packer.Pack(boxes, items) + _ = packer.Pack(boxes, items) } } diff --git a/internal/visualize3d/main.go b/internal/visualize3d/main.go index 3f8233a..40f1c3f 100644 --- a/internal/visualize3d/main.go +++ b/internal/visualize3d/main.go @@ -80,7 +80,7 @@ func main() { boxpacker3.NewItem(uuid.New().String(), 35, 100, 100, 2690), } - packResult, _ := packer.Pack(boxes, items) + packResult := packer.Pack(boxes, items) for _, box := range packResult.Boxes { if len(box.GetItems()) == 0 { diff --git a/packer.go b/packer.go index 943e7b0..8136249 100644 --- a/packer.go +++ b/packer.go @@ -17,7 +17,7 @@ func NewPacker() *Packer { return &Packer{} } -func (p *Packer) Pack(inputBoxes []*Box, inputItems []*Item) (*Result, error) { +func (p *Packer) Pack(inputBoxes []*Box, inputItems []*Item) *Result { boxes := boxSlice(copySlicePtr(inputBoxes)) items := itemSlice(copySlicePtr(inputItems)) @@ -39,7 +39,7 @@ func (p *Packer) Pack(inputBoxes []*Box, inputItems []*Item) (*Result, error) { result.UnfitItems = append(result.UnfitItems, items...) } - return result, nil + return result } func (p *Packer) preferredSort(boxes boxSlice, items itemSlice) boxSlice { diff --git a/packer_test.go b/packer_test.go index 762bb20..eac813b 100644 --- a/packer_test.go +++ b/packer_test.go @@ -92,8 +92,7 @@ func (s *PackerSuit) TestMinBox() { 5, 384) - packResult, err := packer.Pack(boxes, []*boxpacker3.Item{item}) - require.NoError(t, err) + packResult := packer.Pack(boxes, []*boxpacker3.Item{item}) require.NotNil(t, packResult) checks := map[string]int{ @@ -122,8 +121,7 @@ func (s *PackerSuit) TestRotate() { boxpacker3.NewItem(uuid.New().String(), 100, 380, 250, 2690), } - packResult, err := packer.Pack(boxes, items) - require.NoError(t, err) + packResult := packer.Pack(boxes, items) require.NotNil(t, packResult) checks := map[string]int{ @@ -152,8 +150,7 @@ func (s *PackerSuit) TestStd() { boxpacker3.NewItem(uuid.New().String(), 100, 380, 250, 2690), } - packResult, err := packer.Pack(boxes, items) - require.NoError(t, err) + packResult := packer.Pack(boxes, items) require.NotNil(t, packResult) checks := map[string]int{ @@ -188,8 +185,7 @@ func (s *PackerSuit) TestBoxTypeF() { boxpacker3.NewItem(uuid.New().String(), 35, 100, 100, 2500), } - packResult, err := packer.Pack(boxes, items) - require.NoError(t, err) + packResult := packer.Pack(boxes, items) require.NotNil(t, packResult) checks := map[string]int{ @@ -224,8 +220,7 @@ func (s *PackerSuit) TestBoxTypeF_Weight() { boxpacker3.NewItem(uuid.New().String(), 35, 100, 100, 2690), // maxWeight > 20_000 } - packResult, err := packer.Pack(boxes, items) - require.NoError(t, err) + packResult := packer.Pack(boxes, items) require.NotNil(t, packResult) checks := map[string]int{ @@ -270,8 +265,7 @@ func (s *PackerSuit) TestPacker_AllBoxes() { boxpacker3.NewItem(uuid.New().String(), 1000, 500, 500, 20000), } - packResult, err := packer.Pack(reverse, items) - require.NoError(t, err) + packResult := packer.Pack(boxes, items) require.NotNil(t, packResult) require.Len(t, packResult.UnfitItems, 0) @@ -295,8 +289,7 @@ func (s *PackerSuit) TestPacker_UnfitItems() { boxpacker3.NewItem(uuid.New().String(), 3000, 3000, 3000, 20001), } - packResult, err := packer.Pack(boxes, items) - require.NoError(t, err) + packResult := packer.Pack(boxes, items) require.NotNil(t, packResult) require.Len(t, packResult.UnfitItems, 4) @@ -341,8 +334,7 @@ func (s *PackerSuit) TestPacker_MinAndStd() { boxpacker3.NewItem(uuid.New().String(), 3000, 3000, 3000, 20000), // 14. NotStd6 } - packResult, err := packer.Pack(reverse, items) - require.NoError(t, err) + packResult := packer.Pack(boxes, items) require.NotNil(t, packResult) checks := map[string]int{