From e7528ba7c9c8e5101364994e7c6d24b7f6e72481 Mon Sep 17 00:00:00 2001 From: Henrique Dias Date: Sat, 26 Sep 2015 13:03:02 +0100 Subject: [PATCH] add some tests --- .gitignore | 1 + utils/test_data/copied_file.txt | 9 ++++ utils/test_data/file_to_copy.txt | 9 ++++ utils/utils_test.go | 70 ++++++++++++++++++++++++++++++++ 4 files changed, 89 insertions(+) create mode 100644 utils/test_data/copied_file.txt create mode 100644 utils/test_data/file_to_copy.txt diff --git a/.gitignore b/.gitignore index fa318d3c..625c32bc 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ assets.go node_modules .sass-cache temp +copied_file.txt diff --git a/utils/test_data/copied_file.txt b/utils/test_data/copied_file.txt new file mode 100644 index 00000000..a5e04363 --- /dev/null +++ b/utils/test_data/copied_file.txt @@ -0,0 +1,9 @@ +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin faucibus augue vel ex auctor molestie. Sed id lorem quis velit eleifend vestibulum. Etiam tincidunt nulla et metus dictum imperdiet. Suspendisse ac auctor risus. Donec tempus eros quis erat interdum fringilla. Duis ac tristique lorem, quis vulputate enim. In ut est elementum, dignissim tellus quis, ultrices diam. Aenean in efficitur velit, ut imperdiet felis. Suspendisse aliquet accumsan ligula, a iaculis sem luctus vel. Integer sagittis, orci viverra lacinia efficitur, eros magna sodales sapien, in tristique ante arcu ut nunc. Maecenas odio dolor, semper quis vehicula ut, malesuada sollicitudin massa. Integer dolor ligula, hendrerit convallis quam at, luctus dignissim nibh. Fusce interdum congue justo, at imperdiet lorem maximus in. + +Curabitur dignissim id turpis ut eleifend. Pellentesque vehicula et purus et consectetur. Nulla facilisis vehicula nunc in imperdiet. Nam eget porta libero, vel dapibus leo. Maecenas iaculis, arcu quis vehicula sollicitudin, massa tortor mattis tortor, vitae venenatis erat neque et dui. Mauris eleifend vel urna ac interdum. Sed convallis, arcu et scelerisque suscipit, nulla urna laoreet mauris, quis aliquam dolor elit id mauris. Pellentesque ac pulvinar nibh. Duis vestibulum ligula orci, et mattis turpis facilisis mattis. Vivamus feugiat neque sed aliquet aliquet. Sed consequat augue sagittis eros imperdiet, ac lacinia erat tempor. Cras gravida mi a orci euismod feugiat. Mauris condimentum turpis id quam vulputate, et maximus dolor hendrerit. + +Ut nisi urna, sollicitudin ac facilisis eu, rhoncus sed urna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Nulla eu maximus mi, sed commodo diam. Nunc scelerisque tincidunt ipsum eget mattis. Fusce id finibus nisi, sit amet tempus tortor. Fusce accumsan lectus at dignissim volutpat. Nullam nisl nulla, rhoncus id arcu vitae, eleifend posuere libero. Aliquam dictum bibendum bibendum. Integer non mattis neque. Phasellus fermentum et ex vel vehicula. + +Proin eget ligula lorem. Ut vehicula quis augue sed aliquet. Nulla viverra turpis nulla. Morbi et ipsum odio. Nulla in nisi suscipit justo blandit tristique ac vitae ipsum. Donec viverra dictum arcu. Duis est elit, ultrices a massa non, lobortis maximus eros. Nulla porttitor rhoncus lectus in finibus. Duis convallis sapien porta, fringilla orci nec, ultricies nisl. Morbi pulvinar quam in nulla rutrum euismod. + +Donec et accumsan lectus, consectetur posuere nunc. Quisque et quam hendrerit, vestibulum quam eget, luctus enim. In hac habitasse platea dictumst. Nunc et est scelerisque, bibendum neque quis, ornare elit. Aliquam erat volutpat. Nulla maximus nibh vitae ex interdum, a efficitur lacus eleifend. Nam vestibulum blandit aliquet. In hac habitasse platea dictumst. Maecenas interdum quam et lorem posuere interdum. Mauris id feugiat augue. Etiam vestibulum pharetra cursus. diff --git a/utils/test_data/file_to_copy.txt b/utils/test_data/file_to_copy.txt new file mode 100644 index 00000000..a5e04363 --- /dev/null +++ b/utils/test_data/file_to_copy.txt @@ -0,0 +1,9 @@ +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin faucibus augue vel ex auctor molestie. Sed id lorem quis velit eleifend vestibulum. Etiam tincidunt nulla et metus dictum imperdiet. Suspendisse ac auctor risus. Donec tempus eros quis erat interdum fringilla. Duis ac tristique lorem, quis vulputate enim. In ut est elementum, dignissim tellus quis, ultrices diam. Aenean in efficitur velit, ut imperdiet felis. Suspendisse aliquet accumsan ligula, a iaculis sem luctus vel. Integer sagittis, orci viverra lacinia efficitur, eros magna sodales sapien, in tristique ante arcu ut nunc. Maecenas odio dolor, semper quis vehicula ut, malesuada sollicitudin massa. Integer dolor ligula, hendrerit convallis quam at, luctus dignissim nibh. Fusce interdum congue justo, at imperdiet lorem maximus in. + +Curabitur dignissim id turpis ut eleifend. Pellentesque vehicula et purus et consectetur. Nulla facilisis vehicula nunc in imperdiet. Nam eget porta libero, vel dapibus leo. Maecenas iaculis, arcu quis vehicula sollicitudin, massa tortor mattis tortor, vitae venenatis erat neque et dui. Mauris eleifend vel urna ac interdum. Sed convallis, arcu et scelerisque suscipit, nulla urna laoreet mauris, quis aliquam dolor elit id mauris. Pellentesque ac pulvinar nibh. Duis vestibulum ligula orci, et mattis turpis facilisis mattis. Vivamus feugiat neque sed aliquet aliquet. Sed consequat augue sagittis eros imperdiet, ac lacinia erat tempor. Cras gravida mi a orci euismod feugiat. Mauris condimentum turpis id quam vulputate, et maximus dolor hendrerit. + +Ut nisi urna, sollicitudin ac facilisis eu, rhoncus sed urna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Nulla eu maximus mi, sed commodo diam. Nunc scelerisque tincidunt ipsum eget mattis. Fusce id finibus nisi, sit amet tempus tortor. Fusce accumsan lectus at dignissim volutpat. Nullam nisl nulla, rhoncus id arcu vitae, eleifend posuere libero. Aliquam dictum bibendum bibendum. Integer non mattis neque. Phasellus fermentum et ex vel vehicula. + +Proin eget ligula lorem. Ut vehicula quis augue sed aliquet. Nulla viverra turpis nulla. Morbi et ipsum odio. Nulla in nisi suscipit justo blandit tristique ac vitae ipsum. Donec viverra dictum arcu. Duis est elit, ultrices a massa non, lobortis maximus eros. Nulla porttitor rhoncus lectus in finibus. Duis convallis sapien porta, fringilla orci nec, ultricies nisl. Morbi pulvinar quam in nulla rutrum euismod. + +Donec et accumsan lectus, consectetur posuere nunc. Quisque et quam hendrerit, vestibulum quam eget, luctus enim. In hac habitasse platea dictumst. Nunc et est scelerisque, bibendum neque quis, ornare elit. Aliquam erat volutpat. Nulla maximus nibh vitae ex interdum, a efficitur lacus eleifend. Nam vestibulum blandit aliquet. In hac habitasse platea dictumst. Maecenas interdum quam et lorem posuere interdum. Mauris id feugiat augue. Etiam vestibulum pharetra cursus. diff --git a/utils/utils_test.go b/utils/utils_test.go index 56634573..4af9ded2 100644 --- a/utils/utils_test.go +++ b/utils/utils_test.go @@ -37,3 +37,73 @@ func TestCanBeEdited(t *testing.T) { } } } + +func TestCopyFile(t *testing.T) { + err := CopyFile("test_data/file_to_copy.txt", "test_data/copied_file.txt") + + if err != nil { + t.Error("Can't copy the file.") + } +} + +type testDefinedData struct { + f1 string + f2 bool + f3 int + f4 func() +} + +type testDefined struct { + data interface{} + field string + result bool +} + +var testDefinedCases = []testDefined{ + {testDefinedData{}, "f1", true}, + {testDefinedData{}, "f2", true}, + {testDefinedData{}, "f3", true}, + {testDefinedData{}, "f4", true}, + {testDefinedData{}, "f5", false}, + {[]string{}, "", false}, + {map[string]int{"oi": 4}, "", false}, + {"asa", "", false}, + {"int", "", false}, +} + +func TestDefined(t *testing.T) { + for _, pair := range testDefinedCases { + v := Defined(pair.data, pair.field) + if v != pair.result { + t.Error( + "For", pair.data, + "expected", pair.result, + "got", v, + ) + } + } +} + +type testSplitCapitalize struct { + name string + result string +} + +var testSplitCapitalizeCases = []testSplitCapitalize{ + {"loremIpsum", "Lorem ipsum"}, + {"LoremIpsum", "Lorem ipsum"}, + {"loremipsum", "Loremipsum"}, +} + +func TestSplitCapitalize(t *testing.T) { + for _, pair := range testSplitCapitalizeCases { + v := SplitCapitalize(pair.name) + if v != pair.result { + t.Error( + "For", pair.name, + "expected", pair.result, + "got", v, + ) + } + } +}