aboutsummaryrefslogtreecommitdiffstats
path: root/swarm/network/stream/intervals/intervals_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'swarm/network/stream/intervals/intervals_test.go')
-rw-r--r--swarm/network/stream/intervals/intervals_test.go395
1 files changed, 0 insertions, 395 deletions
diff --git a/swarm/network/stream/intervals/intervals_test.go b/swarm/network/stream/intervals/intervals_test.go
deleted file mode 100644
index b5212f0d9..000000000
--- a/swarm/network/stream/intervals/intervals_test.go
+++ /dev/null
@@ -1,395 +0,0 @@
-// Copyright 2018 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>.
-
-package intervals
-
-import "testing"
-
-// Test tests Interval methods Add, Next and Last for various
-// initial state.
-func Test(t *testing.T) {
- for i, tc := range []struct {
- startLimit uint64
- initial [][2]uint64
- start uint64
- end uint64
- expected string
- nextStart uint64
- nextEnd uint64
- last uint64
- }{
- {
- initial: nil,
- start: 0,
- end: 0,
- expected: "[[0 0]]",
- nextStart: 1,
- nextEnd: 0,
- last: 0,
- },
- {
- initial: nil,
- start: 0,
- end: 10,
- expected: "[[0 10]]",
- nextStart: 11,
- nextEnd: 0,
- last: 10,
- },
- {
- initial: nil,
- start: 5,
- end: 15,
- expected: "[[5 15]]",
- nextStart: 0,
- nextEnd: 4,
- last: 15,
- },
- {
- initial: [][2]uint64{{0, 0}},
- start: 0,
- end: 0,
- expected: "[[0 0]]",
- nextStart: 1,
- nextEnd: 0,
- last: 0,
- },
- {
- initial: [][2]uint64{{0, 0}},
- start: 5,
- end: 15,
- expected: "[[0 0] [5 15]]",
- nextStart: 1,
- nextEnd: 4,
- last: 15,
- },
- {
- initial: [][2]uint64{{5, 15}},
- start: 5,
- end: 15,
- expected: "[[5 15]]",
- nextStart: 0,
- nextEnd: 4,
- last: 15,
- },
- {
- initial: [][2]uint64{{5, 15}},
- start: 5,
- end: 20,
- expected: "[[5 20]]",
- nextStart: 0,
- nextEnd: 4,
- last: 20,
- },
- {
- initial: [][2]uint64{{5, 15}},
- start: 10,
- end: 20,
- expected: "[[5 20]]",
- nextStart: 0,
- nextEnd: 4,
- last: 20,
- },
- {
- initial: [][2]uint64{{5, 15}},
- start: 0,
- end: 20,
- expected: "[[0 20]]",
- nextStart: 21,
- nextEnd: 0,
- last: 20,
- },
- {
- initial: [][2]uint64{{5, 15}},
- start: 2,
- end: 10,
- expected: "[[2 15]]",
- nextStart: 0,
- nextEnd: 1,
- last: 15,
- },
- {
- initial: [][2]uint64{{5, 15}},
- start: 2,
- end: 4,
- expected: "[[2 15]]",
- nextStart: 0,
- nextEnd: 1,
- last: 15,
- },
- {
- initial: [][2]uint64{{5, 15}},
- start: 2,
- end: 5,
- expected: "[[2 15]]",
- nextStart: 0,
- nextEnd: 1,
- last: 15,
- },
- {
- initial: [][2]uint64{{5, 15}},
- start: 2,
- end: 3,
- expected: "[[2 3] [5 15]]",
- nextStart: 0,
- nextEnd: 1,
- last: 15,
- },
- {
- initial: [][2]uint64{{5, 15}},
- start: 2,
- end: 4,
- expected: "[[2 15]]",
- nextStart: 0,
- nextEnd: 1,
- last: 15,
- },
- {
- initial: [][2]uint64{{0, 1}, {5, 15}},
- start: 2,
- end: 4,
- expected: "[[0 15]]",
- nextStart: 16,
- nextEnd: 0,
- last: 15,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}},
- start: 2,
- end: 10,
- expected: "[[0 10] [15 20]]",
- nextStart: 11,
- nextEnd: 14,
- last: 20,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}},
- start: 8,
- end: 18,
- expected: "[[0 5] [8 20]]",
- nextStart: 6,
- nextEnd: 7,
- last: 20,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}},
- start: 2,
- end: 17,
- expected: "[[0 20]]",
- nextStart: 21,
- nextEnd: 0,
- last: 20,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}},
- start: 2,
- end: 25,
- expected: "[[0 25]]",
- nextStart: 26,
- nextEnd: 0,
- last: 25,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}},
- start: 5,
- end: 14,
- expected: "[[0 20]]",
- nextStart: 21,
- nextEnd: 0,
- last: 20,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}},
- start: 6,
- end: 14,
- expected: "[[0 20]]",
- nextStart: 21,
- nextEnd: 0,
- last: 20,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}, {30, 40}},
- start: 6,
- end: 29,
- expected: "[[0 40]]",
- nextStart: 41,
- nextEnd: 0,
- last: 40,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}, {30, 40}, {50, 60}},
- start: 3,
- end: 55,
- expected: "[[0 60]]",
- nextStart: 61,
- nextEnd: 0,
- last: 60,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}, {30, 40}, {50, 60}},
- start: 21,
- end: 49,
- expected: "[[0 5] [15 60]]",
- nextStart: 6,
- nextEnd: 14,
- last: 60,
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}, {30, 40}, {50, 60}},
- start: 0,
- end: 100,
- expected: "[[0 100]]",
- nextStart: 101,
- nextEnd: 0,
- last: 100,
- },
- {
- startLimit: 100,
- initial: nil,
- start: 0,
- end: 0,
- expected: "[]",
- nextStart: 100,
- nextEnd: 0,
- last: 0,
- },
- {
- startLimit: 100,
- initial: nil,
- start: 20,
- end: 30,
- expected: "[]",
- nextStart: 100,
- nextEnd: 0,
- last: 0,
- },
- {
- startLimit: 100,
- initial: nil,
- start: 50,
- end: 100,
- expected: "[[100 100]]",
- nextStart: 101,
- nextEnd: 0,
- last: 100,
- },
- {
- startLimit: 100,
- initial: nil,
- start: 50,
- end: 110,
- expected: "[[100 110]]",
- nextStart: 111,
- nextEnd: 0,
- last: 110,
- },
- {
- startLimit: 100,
- initial: nil,
- start: 120,
- end: 130,
- expected: "[[120 130]]",
- nextStart: 100,
- nextEnd: 119,
- last: 130,
- },
- {
- startLimit: 100,
- initial: nil,
- start: 120,
- end: 130,
- expected: "[[120 130]]",
- nextStart: 100,
- nextEnd: 119,
- last: 130,
- },
- } {
- intervals := NewIntervals(tc.startLimit)
- intervals.ranges = tc.initial
- intervals.Add(tc.start, tc.end)
- got := intervals.String()
- if got != tc.expected {
- t.Errorf("interval #%d: expected %s, got %s", i, tc.expected, got)
- }
- nextStart, nextEnd := intervals.Next()
- if nextStart != tc.nextStart {
- t.Errorf("interval #%d, expected next start %d, got %d", i, tc.nextStart, nextStart)
- }
- if nextEnd != tc.nextEnd {
- t.Errorf("interval #%d, expected next end %d, got %d", i, tc.nextEnd, nextEnd)
- }
- last := intervals.Last()
- if last != tc.last {
- t.Errorf("interval #%d, expected last %d, got %d", i, tc.last, last)
- }
- }
-}
-
-func TestMerge(t *testing.T) {
- for i, tc := range []struct {
- initial [][2]uint64
- merge [][2]uint64
- expected string
- }{
- {
- initial: nil,
- merge: nil,
- expected: "[]",
- },
- {
- initial: [][2]uint64{{10, 20}},
- merge: nil,
- expected: "[[10 20]]",
- },
- {
- initial: nil,
- merge: [][2]uint64{{15, 25}},
- expected: "[[15 25]]",
- },
- {
- initial: [][2]uint64{{0, 100}},
- merge: [][2]uint64{{150, 250}},
- expected: "[[0 100] [150 250]]",
- },
- {
- initial: [][2]uint64{{0, 100}},
- merge: [][2]uint64{{101, 250}},
- expected: "[[0 250]]",
- },
- {
- initial: [][2]uint64{{0, 10}, {30, 40}},
- merge: [][2]uint64{{20, 25}, {41, 50}},
- expected: "[[0 10] [20 25] [30 50]]",
- },
- {
- initial: [][2]uint64{{0, 5}, {15, 20}, {30, 40}, {50, 60}},
- merge: [][2]uint64{{6, 25}},
- expected: "[[0 25] [30 40] [50 60]]",
- },
- } {
- intervals := NewIntervals(0)
- intervals.ranges = tc.initial
- m := NewIntervals(0)
- m.ranges = tc.merge
-
- intervals.Merge(m)
-
- got := intervals.String()
- if got != tc.expected {
- t.Errorf("interval #%d: expected %s, got %s", i, tc.expected, got)
- }
- }
-}