Migrating testcases to ScalaTest from Specs2

This commit is contained in:
Naoki Takezoe
2016-02-02 00:36:08 +09:00
parent d58ed55c3a
commit bcc05f021c
5 changed files with 110 additions and 106 deletions

View File

@@ -1,15 +1,16 @@
package gitbucket.core.util
import org.specs2.mutable._
import org.scalatest.FunSpec
class DirectorySpec extends FunSpec {
class DirectorySpec extends Specification {
"GitBucketHome" should {
"set under target in test scope" in {
Directory.GitBucketHome mustEqual new java.io.File("target/gitbucket_home_for_test").getAbsolutePath
}
"exists" in {
new java.io.File(Directory.GitBucketHome).exists
describe("GitBucketHome"){
it("should set under target in test scope"){
assert(Directory.GitBucketHome === new java.io.File("target/gitbucket_home_for_test").getAbsolutePath)
}
}
// test("GitBucketHome should exists"){
// new java.io.File(Directory.GitBucketHome).exists
// }
}

View File

@@ -1,103 +1,104 @@
package gitbucket.core.util
import org.specs2.mutable._
import GitSpecUtil._
import org.scalatest.FunSuite
class JGitUtilSpec extends Specification {
class JGitUtilSpec extends FunSuite {
"getFileList(git: Git, revision: String, path)" should {
test("getFileList(git: Git, revision: String, path)"){
withTestRepository { git =>
def list(branch: String, path: String) =
JGitUtil.getFileList(git, branch, path).map(finfo => (finfo.name, finfo.message, finfo.isDirectory))
list("master", ".") mustEqual Nil
list("master", "dir/subdir") mustEqual Nil
list("branch", ".") mustEqual Nil
list("branch", "dir/subdir") mustEqual Nil
assert(list("master", ".") === Nil)
assert(list("master", "dir/subdir") === Nil)
assert(list("branch", ".") === Nil)
assert(list("branch", "dir/subdir") === Nil)
createFile(git, "master", "README.md", "body1", message = "commit1")
list("master", ".") mustEqual List(("README.md", "commit1", false))
list("master", "dir/subdir") mustEqual Nil
list("branch", ".") mustEqual Nil
list("branch", "dir/subdir") mustEqual Nil
assert(list("master", ".") === List(("README.md", "commit1", false)))
assert(list("master", "dir/subdir") === Nil)
assert(list("branch", ".") === Nil)
assert(list("branch", "dir/subdir") === Nil)
createFile(git, "master", "README.md", "body2", message = "commit2")
list("master", ".") mustEqual List(("README.md", "commit2", false))
list("master", "dir/subdir") mustEqual Nil
list("branch", ".") mustEqual Nil
list("branch", "dir/subdir") mustEqual Nil
assert(list("master", ".") === List(("README.md", "commit2", false)))
assert(list("master", "dir/subdir") === Nil)
assert(list("branch", ".") === Nil)
assert(list("branch", "dir/subdir") === Nil)
createFile(git, "master", "dir/subdir/File3.md", "body3", message = "commit3")
list("master", ".") mustEqual List(("dir/subdir", "commit3", true), ("README.md", "commit2", false))
list("master", "dir/subdir") mustEqual List(("File3.md", "commit3", false))
list("branch", ".") mustEqual Nil
list("branch", "dir/subdir") mustEqual Nil
assert(list("master", ".") === List(("dir/subdir", "commit3", true), ("README.md", "commit2", false)))
assert(list("master", "dir/subdir") === List(("File3.md", "commit3", false)))
assert(list("branch", ".") === Nil)
assert(list("branch", "dir/subdir") === Nil)
createFile(git, "master", "dir/subdir/File4.md", "body4", message = "commit4")
list("master", ".") mustEqual List(("dir/subdir", "commit4", true), ("README.md", "commit2", false))
list("master", "dir/subdir") mustEqual List(("File3.md", "commit3", false), ("File4.md", "commit4", false))
list("branch", ".") mustEqual Nil
list("branch", "dir/subdir") mustEqual Nil
assert(list("master", ".") === List(("dir/subdir", "commit4", true), ("README.md", "commit2", false)))
assert(list("master", "dir/subdir") === List(("File3.md", "commit3", false), ("File4.md", "commit4", false)))
assert(list("branch", ".") === Nil)
assert(list("branch", "dir/subdir") === Nil)
createFile(git, "master", "README5.md", "body5", message = "commit5")
list("master", ".") mustEqual List(("dir/subdir", "commit4", true), ("README.md", "commit2", false), ("README5.md", "commit5", false))
list("master", "dir/subdir") mustEqual List(("File3.md", "commit3", false), ("File4.md", "commit4", false))
list("branch", ".") mustEqual Nil
list("branch", "dir/subdir") mustEqual Nil
assert(list("master", ".") === List(("dir/subdir", "commit4", true), ("README.md", "commit2", false), ("README5.md", "commit5", false)))
assert(list("master", "dir/subdir") === List(("File3.md", "commit3", false), ("File4.md", "commit4", false)))
assert(list("branch", ".") === Nil)
assert(list("branch", "dir/subdir") === Nil)
createFile(git, "master", "README.md", "body6", message = "commit6")
list("master", ".") mustEqual List(("dir/subdir", "commit4", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("master", "dir/subdir") mustEqual List(("File3.md", "commit3", false), ("File4.md", "commit4", false))
list("branch", ".") mustEqual Nil
list("branch", "dir/subdir") mustEqual Nil
assert(list("master", ".") === List(("dir/subdir", "commit4", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("master", "dir/subdir") === List(("File3.md", "commit3", false), ("File4.md", "commit4", false)))
assert(list("branch", ".") === Nil)
assert(list("branch", "dir/subdir") === Nil)
git.branchCreate().setName("branch").setStartPoint("master").call()
list("master", ".") mustEqual List(("dir/subdir", "commit4", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("master", "dir/subdir") mustEqual List(("File3.md", "commit3", false), ("File4.md", "commit4", false))
list("branch", ".") mustEqual List(("dir/subdir", "commit4", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("branch", "dir/subdir") mustEqual List(("File3.md", "commit3", false), ("File4.md", "commit4", false))
assert(list("master", ".") === List(("dir/subdir", "commit4", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("master", "dir/subdir") === List(("File3.md", "commit3", false), ("File4.md", "commit4", false)))
assert(list("branch", ".") === List(("dir/subdir", "commit4", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("branch", "dir/subdir") === List(("File3.md", "commit3", false), ("File4.md", "commit4", false)))
createFile(git, "branch", "dir/subdir/File3.md", "body7", message = "commit7")
list("master", ".") mustEqual List(("dir/subdir", "commit4", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("master", "dir/subdir") mustEqual List(("File3.md", "commit3", false), ("File4.md", "commit4", false))
list("branch", ".") mustEqual List(("dir/subdir", "commit7", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("branch", "dir/subdir") mustEqual List(("File3.md", "commit7", false), ("File4.md", "commit4", false))
assert(list("master", ".") === List(("dir/subdir", "commit4", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("master", "dir/subdir") === List(("File3.md", "commit3", false), ("File4.md", "commit4", false)))
assert(list("branch", ".") === List(("dir/subdir", "commit7", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("branch", "dir/subdir") === List(("File3.md", "commit7", false), ("File4.md", "commit4", false)))
createFile(git, "master", "dir8/File8.md", "body8", message = "commit8")
list("master", ".") mustEqual List(("dir/subdir", "commit4", true), ("dir8", "commit8", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("master", "dir/subdir") mustEqual List(("File3.md", "commit3", false), ("File4.md", "commit4", false))
list("branch", ".") mustEqual List(("dir/subdir", "commit7", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("branch", "dir/subdir") mustEqual List(("File3.md", "commit7", false), ("File4.md", "commit4", false))
assert(list("master", ".") === List(("dir/subdir", "commit4", true), ("dir8", "commit8", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("master", "dir/subdir") === List(("File3.md", "commit3", false), ("File4.md", "commit4", false)))
assert(list("branch", ".") === List(("dir/subdir", "commit7", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("branch", "dir/subdir") === List(("File3.md", "commit7", false), ("File4.md", "commit4", false)))
createFile(git, "branch", "dir/subdir9/File9.md", "body9", message = "commit9")
list("master", ".") mustEqual List(("dir/subdir", "commit4", true), ("dir8", "commit8", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("master", "dir/subdir") mustEqual List(("File3.md", "commit3", false), ("File4.md", "commit4", false))
list("branch", ".") mustEqual List(("dir", "commit9", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("branch", "dir/subdir") mustEqual List(("File3.md", "commit7", false), ("File4.md", "commit4", false))
assert(list("master", ".") === List(("dir/subdir", "commit4", true), ("dir8", "commit8", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("master", "dir/subdir") === List(("File3.md", "commit3", false), ("File4.md", "commit4", false)))
assert(list("branch", ".") === List(("dir", "commit9", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("branch", "dir/subdir") === List(("File3.md", "commit7", false), ("File4.md", "commit4", false)))
mergeAndCommit(git, "master", "branch", message = "merge10")
list("master", ".") mustEqual List(("dir", "commit9", true), ("dir8", "commit8", true), ("README.md", "commit6", false), ("README5.md", "commit5", false))
list("master", "dir/subdir") mustEqual List(("File3.md", "commit7", false), ("File4.md", "commit4", false))
assert(list("master", ".") === List(("dir", "commit9", true), ("dir8", "commit8", true), ("README.md", "commit6", false), ("README5.md", "commit5", false)))
assert(list("master", "dir/subdir") === List(("File3.md", "commit7", false), ("File4.md", "commit4", false)))
}
}
"getFileList subfolder multi-origin (issue #721)" should {
test("getFileList subfolder multi-origin (issue #721)") {
withTestRepository { git =>
def list(branch: String, path: String) =
JGitUtil.getFileList(git, branch, path).map(finfo => (finfo.name, finfo.message, finfo.isDirectory))
createFile(git, "master", "README.md", "body1", message = "commit1")
createFile(git, "branch", "test/text2.txt", "body2", message = "commit2")
mergeAndCommit(git, "master", "branch", message = "merge3")
list("master", "test") mustEqual List(("text2.txt", "commit2", false))
assert(list("master", "test") === List(("text2.txt", "commit2", false)))
}
}
}

View File

@@ -1,66 +1,67 @@
package gitbucket.core.util
import org.specs2.mutable._
//import org.specs2.mutable._
import org.scalatest.FunSpec
class StringUtilSpec extends Specification {
class StringUtilSpec extends FunSpec {
"urlEncode" should {
"encode whitespace to %20" in {
describe("urlEncode") {
it("should encode whitespace to %20") {
val encoded = StringUtil.urlEncode("aa bb")
encoded mustEqual "aa%20bb"
assert(encoded === "aa%20bb")
}
}
"urlDecode" should {
"decode encoded string to original string" in {
describe("urlDecode") {
it("should decode encoded string to original string") {
val encoded = StringUtil.urlEncode("あいうえお")
StringUtil.urlDecode(encoded) mustEqual "あいうえお"
assert(StringUtil.urlDecode(encoded) === "あいうえお")
}
"decode en%20 to whitespace" in {
StringUtil.urlDecode("aa%20bb") mustEqual "aa bb"
it("should decode en%20 to whitespace") {
assert(StringUtil.urlDecode("aa%20bb") === "aa bb")
}
}
"splitWords" should {
"split string by whitespaces" in {
describe("splitWords") {
it("should split string by whitespaces") {
val split = StringUtil.splitWords("aa bb\tcc dd \t ee")
split mustEqual Array("aa", "bb", "cc", "dd", "ee")
assert(split === Array("aa", "bb", "cc", "dd", "ee"))
}
}
"escapeHtml" should {
"escape &, <, > and \"" in {
StringUtil.escapeHtml("<a href=\"/test\">a & b</a>") mustEqual "&lt;a href=&quot;/test&quot;&gt;a &amp; b&lt;/a&gt;"
describe("escapeHtml") {
it("should escape &, <, > and \"") {
assert(StringUtil.escapeHtml("<a href=\"/test\">a & b</a>") === "&lt;a href=&quot;/test&quot;&gt;a &amp; b&lt;/a&gt;")
}
}
"md5" should {
"generate MD5 hash" in {
StringUtil.md5("abc") mustEqual "900150983cd24fb0d6963f7d28e17f72"
describe("md5") {
it("should generate MD5 hash") {
assert(StringUtil.md5("abc") === "900150983cd24fb0d6963f7d28e17f72")
}
}
"sha1" should {
"generate SHA1 hash" in {
StringUtil.sha1("abc") mustEqual "a9993e364706816aba3e25717850c26c9cd0d89d"
describe("sha1") {
it("should generate SHA1 hash") {
assert(StringUtil.sha1("abc") === "a9993e364706816aba3e25717850c26c9cd0d89d")
}
}
"extractIssueId" should {
"extract '#xxx' and return extracted id" in {
StringUtil.extractIssueId("(refs #123)").toSeq mustEqual Seq("123")
describe("extractIssueId") {
it("should extract '#xxx' and return extracted id") {
assert(StringUtil.extractIssueId("(refs #123)").toSeq === Seq("123"))
}
"returns Nil from message which does not contain #xxx" in {
StringUtil.extractIssueId("this is test!").toSeq mustEqual Nil
it("should return Nil from message which does not contain #xxx") {
assert(StringUtil.extractIssueId("this is test!").toSeq === Nil)
}
}
"extractCloseId" should {
"extract 'close #xxx' and return extracted id" in {
StringUtil.extractCloseId("(close #123)").toSeq mustEqual Seq("123")
describe("extractCloseId") {
it("should extract 'close #xxx' and return extracted id") {
assert(StringUtil.extractCloseId("(close #123)").toSeq === Seq("123"))
}
"returns Nil from message which does not contain close command" in {
StringUtil.extractCloseId("(refs #123)").toSeq mustEqual Nil
it("should returns Nil from message which does not contain close command") {
assert(StringUtil.extractCloseId("(refs #123)").toSeq === Nil)
}
}
}

View File

@@ -1,35 +1,35 @@
package gitbucket.core.util
import org.specs2.mutable._
import org.scalatra.i18n.Messages
import org.scalatest.FunSpec
class ValidationsSpec extends Specification with Validations {
class ValidationsSpec extends FunSpec with Validations {
"identifier" should {
"validate id string " in {
identifier.validate("id", "aa_ZZ-00.01", null) mustEqual None
identifier.validate("id", "_aaaa", null) mustEqual Some("id starts with invalid character.")
identifier.validate("id", "-aaaa", null) mustEqual Some("id starts with invalid character.")
identifier.validate("id", "aa_ZZ#01", null) mustEqual Some("id contains invalid character.")
describe("identifier") {
it("should validate id string ") {
assert(identifier.validate("id", "aa_ZZ-00.01", null) === None)
assert(identifier.validate("id", "_aaaa", null) === Some("id starts with invalid character."))
assert(identifier.validate("id", "-aaaa", null) === Some("id starts with invalid character."))
assert(identifier.validate("id", "aa_ZZ#01", null) === Some("id contains invalid character."))
}
}
"color" should {
"validate color string " in {
describe("color") {
it("should validate color string ") {
val messages = Messages()
color.validate("color", "#88aaff", messages) mustEqual None
color.validate("color", "#gghhii", messages) mustEqual Some("color must be '#[0-9a-fA-F]{6}'.")
assert(color.validate("color", "#88aaff", messages) === None)
assert(color.validate("color", "#gghhii", messages) === Some("color must be '#[0-9a-fA-F]{6}'."))
}
}
"date" should {
describe("date") {
// "validate date string " in {
// date().validate("date", "2013-10-05", Map[String, String]()) mustEqual Nil
// date().validate("date", "2013-10-5" , Map[String, String]()) mustEqual List(("date", "date must be '\\d{4}-\\d{2}-\\d{2}'."))
// }
"convert date string " in {
it("should convert date string ") {
val result = date().convert("2013-10-05", null)
new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(result) mustEqual "2013-10-05 00:00:00"
assert(new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(result) === "2013-10-05 00:00:00")
}
}