1 package funk
2
3 import (
4 "testing"
5
6 "github.com/stretchr/testify/assert"
7 )
8
9 func TestSubtract(t *testing.T) {
10 is := assert.New(t)
11
12 r := Subtract([]int{1, 2, 3, 4, 5}, []int{2, 4, 6})
13 is.Equal([]int{1, 3, 5}, r)
14
15 r = Subtract([]string{"foo", "bar", "hello", "bar", "hi"}, []string{"foo", "bar"})
16 is.Equal([]string{"hello", "hi"}, r)
17
18 r = Subtract([]string{"hello", "foo", "bar", "hello", "bar", "hi"}, []string{"foo", "bar"})
19 is.Equal([]string{"hello", "hello", "hi"}, r)
20
21 r = Subtract([]int{1, 2, 3, 4, 5}, []int{})
22 is.Equal([]int{1, 2, 3, 4, 5}, r)
23
24 r = Subtract([]string{"bar", "bar"}, []string{})
25 is.Equal([]string{"bar", "bar"}, r)
26 }
27
28 func TestSubtractString(t *testing.T) {
29 is := assert.New(t)
30
31 r := SubtractString([]string{"foo", "bar", "hello", "bar"}, []string{"foo", "bar"})
32 is.Equal([]string{"hello"}, r)
33
34 r = SubtractString([]string{"foo", "bar", "hello", "bar", "world", "world"}, []string{"foo", "bar"})
35 is.Equal([]string{"hello", "world", "world"}, r)
36
37 r = SubtractString([]string{"bar", "bar"}, []string{})
38 is.Equal([]string{"bar", "bar"}, r)
39
40 r = SubtractString([]string{}, []string{"bar", "bar"})
41 is.Equal([]string{}, r)
42 }
43
View as plain text