@@ -10,35 +10,37 @@ import org.scalasteward.core.mock.{MockContext, MockEff, MockState}
1010import org .scalasteward .core .vcs .data .{Repo , RepoOut , UserOut }
1111
1212class VCSRepoAlgTest extends FunSuite {
13- val repo : Repo = Repo (" fthomas" , " datapackage" )
14- val repoDir : String = (config.workspace / " fthomas/datapackage" ).toString
15- val parentRepoOut : RepoOut = RepoOut (
13+ private val repo = Repo (" fthomas" , " datapackage" )
14+ private val repoDir = (config.workspace / " fthomas/datapackage" ).toString
15+ private val parentRepoOut = RepoOut (
1616 " datapackage" ,
1717 UserOut (" fthomas" ),
1818 None ,
1919 uri " https://github.com/fthomas/datapackage " ,
2020 Branch (" master" )
2121 )
2222
23- val forkRepoOut : RepoOut = RepoOut (
23+ private val forkRepoOut = RepoOut (
2424 " datapackage" ,
25- UserOut (" scalasteward " ),
25+ UserOut (" scala-steward " ),
2626 Some (parentRepoOut),
2727 uri " https://github.com/scala-steward/datapackage " ,
2828 Branch (" master" )
2929 )
3030
31- test(" cloneAndSync" ) {
31+ private val parentUrl = s " https:// ${config.vcsLogin}@github.com/fthomas/datapackage "
32+ private val forkUrl = s " https:// ${config.vcsLogin}@github.com/scala-steward/datapackage "
33+
34+ test(" cloneAndSync: doNotFork = false" ) {
3235 val state = vcsRepoAlg.cloneAndSync(repo, forkRepoOut).runS(MockState .empty).unsafeRunSync()
33- val url0 = s " https:// ${config.vcsLogin}@github.com/fthomas/datapackage "
34- val url1 = s " https:// ${config.vcsLogin}@github.com/scala-steward/datapackage "
3536 val expected = MockState .empty.copy(
3637 trace = Vector (
37- Log (" Clone and synchronize fthomas /datapackage" ),
38- Cmd (envVars, config.workspace.toString, " git" , " clone" , url1 , repoDir),
38+ Log (" Clone scala-steward /datapackage" ),
39+ Cmd (envVars, config.workspace.toString, " git" , " clone" , forkUrl , repoDir),
3940 Cmd (envVars, repoDir, " git" , " config" , " user.email" , " bot@example.org" ),
4041 Cmd (envVars, repoDir, " git" , " config" , " user.name" , " Bot Doe" ),
41- Cmd (envVars, repoDir, " git" , " remote" , " add" , " upstream" , url0),
42+ Log (" Synchronize with fthomas/datapackage" ),
43+ Cmd (envVars, repoDir, " git" , " remote" , " add" , " upstream" , parentUrl),
4244 Cmd (envVars, repoDir, " git" , " fetch" , " --force" , " --tags" , " upstream" , " master" ),
4345 Cmd (envVars, repoDir, " git" , " checkout" , " -B" , " master" , " --track" , " upstream/master" ),
4446 Cmd (envVars, repoDir, " git" , " merge" , " upstream/master" ),
@@ -49,21 +51,30 @@ class VCSRepoAlgTest extends FunSuite {
4951 assertEquals(state, expected)
5052 }
5153
52- test(" syncFork should throw an exception when doNotFork = false and there is no parent" ) {
53- val result = vcsRepoAlg
54- .syncFork(repo, parentRepoOut)
54+ test(" cloneAndSync: doNotFork = true" ) {
55+ val config = MockContext .config.copy(doNotFork = true )
56+ val state = new VCSRepoAlg [MockEff ](config)
57+ .cloneAndSync(repo, parentRepoOut)
5558 .runS(MockState .empty)
56- .attempt
5759 .unsafeRunSync()
58- assert(clue(result).isLeft)
60+ val expected = MockState .empty.copy(
61+ trace = Vector (
62+ Log (" Clone fthomas/datapackage" ),
63+ Cmd (envVars, config.workspace.toString, " git" , " clone" , parentUrl, repoDir),
64+ Cmd (envVars, repoDir, " git" , " config" , " user.email" , " bot@example.org" ),
65+ Cmd (envVars, repoDir, " git" , " config" , " user.name" , " Bot Doe" ),
66+ Cmd (envVars, repoDir, " git" , " submodule" , " update" , " --init" , " --recursive" )
67+ )
68+ )
69+ assertEquals(state, expected)
5970 }
6071
61- test(" syncFork should do nothing when doNotFork = true" ) {
62- val config = MockContext .config.copy(doNotFork = true )
63- val state = new VCSRepoAlg [MockEff ](config)
64- .syncFork(repo, parentRepoOut)
72+ test(" cloneAndSync: doNotFork = false, no parent" ) {
73+ val result = vcsRepoAlg
74+ .cloneAndSync(repo, parentRepoOut)
6575 .runS(MockState .empty)
76+ .attempt
6677 .unsafeRunSync()
67- assertEquals(state, MockState .empty )
78+ assert(clue(result).isLeft )
6879 }
6980}
0 commit comments