diff --git a/APLSource/Cider/History.apla b/APLSource/Cider/History.apla index a107a7f3..5fc871e5 100644 --- a/APLSource/Cider/History.apla +++ b/APLSource/Cider/History.apla @@ -1,8 +1,10 @@ ( - '* 0.41.0 ⋄ 2024-06-20' + '* 0.41.0 ⋄ 2024-06-21' ' * API functions `CreateProject` and `CreateCreateProjectParms` added ' ' * Cider now adds its own version number to a project config file whenever it is written to disk' ' * Cider''s "Make" now re-creates the UCMD cache' + ' * Test cases added for ]addTatinDependencies' + ' * NuGet-related test cases of the UC-group improved' '* 0.40.1 ⋄ 2024-06-18' ' * NuGet-related test cases are now executed in their own, independent process' ' * Error messages for `Init` functions of a project improved' diff --git a/APLSource/Cider/Version.aplf b/APLSource/Cider/Version.aplf index 1a2ffc05..2628149a 100644 --- a/APLSource/Cider/Version.aplf +++ b/APLSource/Cider/Version.aplf @@ -1,3 +1,3 @@ r←Version ⍝ See also `History` - r←'0.41.0-beta-4+671' + r←'0.41.0-beta-5+671' diff --git a/APLSource/TestCases/Test_NuGet_001.aplf b/APLSource/TestCases/Test_NuGet_001.aplf index f6e991e7..31cdf33f 100644 --- a/APLSource/TestCases/Test_NuGet_001.aplf +++ b/APLSource/TestCases/Test_NuGet_001.aplf @@ -1,5 +1,6 @@ R←Test_NuGet_001(stopFlag batchFlag);⎕TRAP;parms;I;tempFolder;msg;rc ⍝ Open a project with no dependencies, add a NuGet dependency, close and reopen +⍝ The real test function (∆Test_NuGet_001) is executed in its own APL process ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') R←T._Failed diff --git a/APLSource/TestCases/Test_NuGet_002.aplf b/APLSource/TestCases/Test_NuGet_002.aplf index 8152df1e..6d342565 100644 --- a/APLSource/TestCases/Test_NuGet_002.aplf +++ b/APLSource/TestCases/Test_NuGet_002.aplf @@ -1,5 +1,6 @@ R←Test_NuGet_002(stopFlag batchFlag);⎕TRAP;parms;I;tempFolder;msg;rc ⍝ Open a project, add two NuGet dependencies, load, call, list, close, re-open, close +⍝ The real test function (∆Test_NuGet_002) is executed in its own APL process ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') R←T._Failed diff --git a/APLSource/TestCases/Test_NuGet_003.aplf b/APLSource/TestCases/Test_NuGet_003.aplf index 69bc6943..6ca92aa5 100644 --- a/APLSource/TestCases/Test_NuGet_003.aplf +++ b/APLSource/TestCases/Test_NuGet_003.aplf @@ -1,5 +1,6 @@ R←Test_NuGet_003(stopFlag batchFlag);⎕TRAP;parms;I;tempFolder;msg;rc ⍝ Open a project which has a Tatin dependency, add a NuGet package, close and reopen +⍝ The real test function (∆Test_NuGet_003) is executed in its own APL process ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') R←T._Failed diff --git a/APLSource/TestCases/Test_NuGet_004.aplf b/APLSource/TestCases/Test_NuGet_004.aplf index 57aaaef8..a4c838c0 100644 --- a/APLSource/TestCases/Test_NuGet_004.aplf +++ b/APLSource/TestCases/Test_NuGet_004.aplf @@ -1,5 +1,6 @@ R←Test_NuGet_004(stopFlag batchFlag);⎕TRAP;parms;I;tempFolder;msg;rc ⍝ Open a project, add two NuGet dependencies with a target namespace, load, call, list, close, re-open, close +⍝ The real test function (∆Test_NuGet_004) is executed in its own APL process ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') R←T._Failed diff --git a/APLSource/TestCases/Test_UC_045.aplf b/APLSource/TestCases/Test_UC_045.aplf index 6e2e560d..de7b4b9f 100644 --- a/APLSource/TestCases/Test_UC_045.aplf +++ b/APLSource/TestCases/Test_UC_045.aplf @@ -1,40 +1,15 @@ - R←Test_UC_045(stopFlag batchFlag);⎕TRAP;res;msg;rc;folder;parms;tempDir;success;log + R←Test_UC_045(stopFlag batchFlag);⎕TRAP;tempFolder;parms;I;rc;msg ⍝ Exercise ]Cider.AddNuGetDependencies and ListNuGetDependencies +⍝ The real test function (∆Test_UC_045) is executed in its own APL process ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') R←T._Failed - :If 1 1≢2250⌶0 ⍝ We need .NET Core and a successfully loaded .NET bridge - R←T._NotApplicable ⋄ →0 - :EndIf - - #.⎕SHADOW'TEMP' ⋄ 'TEMP'#.⎕NS'' - folder←∆GetTestPath⊃⎕SI - tempDir←∆GetFolderInTempDir⊃⎕SI - tempDir ⎕NCOPY⍠1⊢folder,'/*' - - parms←##.Cider.CreateOpenParms'' - parms.folder←∊⎕NPARTS tempDir - parms.noPkgLoad←0 - parms.batch←1 - parms.ignoreUserExec←1 - - ##.Cider.C.YesOrNo_Answers←1 2⍴'ChangeCurrentDir@' 'n' - (success log)←##.Cider.OpenProject parms - →T.GoToTidyUp~success - →T.GoToTidyUp∨/'ERROR'⍷log - - {}##.Cider.AddNuGetDependencies'Clock,NodaTime'tempDir ⍝ Clock is already installed - - (rc msg res)←∆UCMD'ListNuGetDependencies "',tempDir,'"' - →T.PassesIf rc=0 - →T.PassesIf 0=≢msg - →T.PassesIf 2=≢res - →T.PassesIf 2=2⊃⍴res - - R←T._OK + tempFolder←∆GetFolderInTempDir⊃⎕SI + parms←∆NuGetTestProcessParms(⊃⎕SI)tempFolder + I←⎕NEW APLProcess(,⊂parms) + R←I.ExitCode ∆TidyUp: - ##.Cider.C.Cleanup - {}∆LINK'Break' '#.TEMP' - FilesAndDirs.RmDir tempDir,'/..' ⍝ Does not work: the .NET DLL blocks this; there is no way around this at the time of writing (October 2023) + (rc msg)←FilesAndDirs.RmDirByForce tempFolder + msg Assert 0=rc ⍝Done diff --git a/APLSource/TestCases/Test_UC_046.aplf b/APLSource/TestCases/Test_UC_046.aplf new file mode 100644 index 00000000..c902177d --- /dev/null +++ b/APLSource/TestCases/Test_UC_046.aplf @@ -0,0 +1,42 @@ + R←Test_UC_046(stopFlag batchFlag);⎕TRAP;res;msg;rc;folder;parms;tempDir;success;log;stop;expected +⍝ Exercise ]Cider.AddTatinDependencies and ListTatinDependencies + ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') + R←T._Failed + + #.⎕SHADOW'TEMP' ⋄ 'TEMP'#.⎕NS'' + folder←∆GetTestPath⊃⎕SI + tempDir←∆GetFolderInTempDir⊃⎕SI + tempDir ⎕NCOPY⍠1⊢folder,'/*' + + parms←##.Cider.CreateOpenParms'' + parms.folder←∊⎕NPARTS tempDir + parms.noPkgLoad←0 + parms.batch←1 + parms.ignoreUserExec←1 + + ##.Cider.C.YesOrNo_Answers←1 2⍴'ChangeCurrentDir@' 'n' + (success log)←##.Cider.OpenProject parms + →T.GoToTidyUp~success + →T.GoToTidyUp∨/'ERROR'⍷log + + stop←0 + ##.Cider.C.YesOrNo_Answers←1 2⍴'AddTatinDeps@' 'y' + ##.Cider.C.YesOrNo_Answers⍪←'LoadTatinDependenciesAfterAdding@' 'y' + (rc msg res)←stop ∆UCMD'AddTatinDependencies FilesAndDirs,APLTreeUtils2 "',tempDir,'"' + →T.GoToTidyUp rc≠0 + →T.GoToTidyUp 0≠≢msg + expected←'2 Tatin dependencies added:' 'aplteam-FilesAndDirs-5.7.1' 'aplteam-APLTreeUtils2-1.4.0' '2 dependencies were loaded' + →T.GoToTidyUp expected≢APLTreeUtils2.DLB,res + + (rc msg res)←stop ∆UCMD'ListTatinDependencies "',tempDir,'" -raw' ⍝ Nothing was installed earlier + →T.GoToTidyUp rc≠0 + →T.GoToTidyUp 0≠≢msg + →T.GoToTidyUp 2≠+/res[;3] + + R←T._OK + +∆TidyUp: + ##.Cider.C.Cleanup + {}∆LINK'Break' '#.TEMP' + FilesAndDirs.RmDir tempDir,'/..' +⍝Done diff --git a/APLSource/TestCases/Test_UC_047.aplf b/APLSource/TestCases/Test_UC_047.aplf new file mode 100644 index 00000000..e9a582b5 --- /dev/null +++ b/APLSource/TestCases/Test_UC_047.aplf @@ -0,0 +1,37 @@ + R←Test_UC_047(stopFlag batchFlag);⎕TRAP;res;msg;rc;folder;parms;tempDir;success;log;stop;expected +⍝ Exercise ]Cider.AddTatinDependencies without loading + ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') + R←T._Failed + + #.⎕SHADOW'TEMP' ⋄ 'TEMP'#.⎕NS'' + folder←∆GetTestPath⊃⎕SI + tempDir←∆GetFolderInTempDir⊃⎕SI + tempDir ⎕NCOPY⍠1⊢folder,'/*' + + parms←##.Cider.CreateOpenParms'' + parms.folder←∊⎕NPARTS tempDir + parms.noPkgLoad←0 + parms.batch←1 + parms.ignoreUserExec←1 + + ##.Cider.C.YesOrNo_Answers←1 2⍴'ChangeCurrentDir@' 'n' + (success log)←##.Cider.OpenProject parms + →T.GoToTidyUp~success + →T.GoToTidyUp∨/'ERROR'⍷log + + stop←0 + ##.Cider.C.YesOrNo_Answers←1 2⍴'AddTatinDeps@' 'y' + ##.Cider.C.YesOrNo_Answers⍪←'LoadTatinDependenciesAfterAdding@' 'n' + (rc msg res)←stop ∆UCMD'AddTatinDependencies FilesAndDirs,APLTreeUtils2 "',tempDir,'"' + →T.GoToTidyUp rc≠0 + →T.GoToTidyUp 0≠≢msg + expected←'2 Tatin dependencies added:' 'aplteam-FilesAndDirs-5.7.1' 'aplteam-APLTreeUtils2-1.4.0' + →T.GoToTidyUp expected≢APLTreeUtils2.DLB,res + + R←T._OK + +∆TidyUp: + ##.Cider.C.Cleanup + {}∆LINK'Break' '#.TEMP' + FilesAndDirs.RmDir tempDir,'/..' +⍝Done diff --git a/APLSource/TestCases/Test_UC_050.aplf b/APLSource/TestCases/Test_UC_050.aplf index 7c08e123..dfffc257 100644 --- a/APLSource/TestCases/Test_UC_050.aplf +++ b/APLSource/TestCases/Test_UC_050.aplf @@ -1,50 +1,15 @@ - R←Test_UC_050(stopFlag batchFlag);⎕TRAP;folder;res;log;cals;success;tempDir;config;msg;rc;stop;batch;Cleanup;ref + R←Test_UC_050(stopFlag batchFlag);⎕TRAP;tempFolder;parms;I;rc;msg ⍝ Open project, add 2 NuGet packages to default folder, load, call, list, close, re-open, close +⍝ The real test function (∆Test_UC_050) is executed in its own APL process ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') R←T._Failed - :If 1 1≢2250⌶0 ⍝ We need .NET Core and a successfully loaded .NET bridge - R←T._NotApplicable ⋄ →0 - :EndIf - - #.⎕SHADOW'TEMP' ⋄ 'TEMP'#.⎕NS'' - folder←∆GetTestPath⊃⎕SI - tempDir←∆GetFolderInTempDir⊃⎕SI - tempDir ⎕NCOPY⍠1⊢folder,'/*' - - ref←∆GetRefToCommTools - ref.YesOrNo_Answers←1 2⍴'ChangeCurrentDir@' 'n' - stop←0 - (rc msg res)←stop ∆UCMD'OpenProject ',tempDir,' -projectSpace=TEMP -batch -ignoreUserExec' - Assert rc=0 - - ref.YesOrNo_Answers←1 2⍴'LoadNuGetDependenciesAfterAdding@' 'y' - (rc msg res)←stop ∆UCMD'AddNuGetDependencies Clock,NodaTime ',tempDir - Assert rc=0 - →T.GoToTidyUp 2≠+/'Clock' 'NodaTime'{0<≢('\b',⍺,'\b')⎕S 0⊣⍵}¨⊂res - - (rc msg res)←stop ∆UCMD'ListNuGetDependencies ',tempDir - Assert rc=0 - →T.GoToTidyUp 2≠≡res - - (rc msg res)←∆UCMD'CloseProject ',tempDir,' fast' - Assert rc=0 - →T.GoToTidyUp'Number of projects closed: 1'≢res - - #.TEMP.(⎕EX ⎕NL-⍳9) - (rc msg res)←stop ∆UCMD'OpenProject ',tempDir,' -projectSpace=TEMP -batch -ignoreUserExec' - Assert rc=0 - →T.GoToTidyUp'Project successfully opened and established in "#.TEMP"'≢res~⎕TC - →T.GoToTidyUp~(⊂'UtcNow')∊#.TEMP.Clock.⎕NL-2 - →T.GoToTidyUp~∧/'Julian' 'Gregorian'∊⍕¨#.TEMP.NodaTime.CalendarSystem.⎕NL-2 - - (rc msg res)←∆UCMD'CloseProject ',tempDir,' -fast' - Assert rc=0 - - R←T._OK + tempFolder←∆GetFolderInTempDir⊃⎕SI + parms←∆NuGetTestProcessParms(⊃⎕SI)tempFolder + I←⎕NEW APLProcess(,⊂parms) + R←I.ExitCode ∆TidyUp: - ref.Cleanup - res←∆LINK'Break' '#.TEMP' - FilesAndDirs.RmDir tempDir,'/..' ⍝ Does not work: the .NET DLL blocks this; there is no way around this at the time of writing (October 2023) + (rc msg)←FilesAndDirs.RmDirByForce tempFolder + msg Assert 0=rc ⍝Done diff --git a/APLSource/TestCases/Test_UC_051.aplf b/APLSource/TestCases/Test_UC_051.aplf index 8d4c0d1d..a87a0900 100644 --- a/APLSource/TestCases/Test_UC_051.aplf +++ b/APLSource/TestCases/Test_UC_051.aplf @@ -1,50 +1,15 @@ - R←Test_UC_051(stopFlag batchFlag);⎕TRAP;folder;res;log;cals;success;tempDir;config;msg;rc;stop;batch;ref + R←Test_UC_051(stopFlag batchFlag);⎕TRAP;tempFolder;parms;I;rc;msg ⍝ Open project, add 2 NuGet packages to non-default folder, load, call, list, close, re-open, close + ⍝ The real test function (∆Test_UC_051) is executed in its own APL process ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') R←T._Failed - :If 1 1≢2250⌶0 ⍝ We need .NET Core and a successfully loaded .NET bridge - R←T._NotApplicable ⋄ →0 - :EndIf - - #.⎕SHADOW'TEMP' ⋄ 'TEMP'#.⎕NS'' - folder←∆GetTestPath⊃⎕SI - tempDir←∆GetFolderInTempDir⊃⎕SI - tempDir ⎕NCOPY⍠1⊢folder,'/*' - - ref←∆GetRefToCommTools - ref.YesOrNo_Answers←1 2⍴'ChangeCurrentDir@' 'n' - stop←0 - (rc msg res)←stop ∆UCMD'OpenProject ',tempDir,' -projectSpace=TEMP -batch -ignoreUserExec' - Assert rc=0 - - ref.YesOrNo_Answers←1 2⍴'LoadNuGetDependenciesAfterAdding@' 'y' - (rc msg res)←stop ∆UCMD'AddNuGetDependencies clock,NODATIME ',tempDir - Assert rc=0 - →T.GoToTidyUp~'Clock' 'NodaTime'∆LazyMatch res - - (rc msg res)←stop ∆UCMD'ListNuGetDependencies ',tempDir - Assert rc=0 - →T.GoToTidyUp 2≠≡res - - (rc msg res)←∆UCMD'CloseProject ',tempDir,' -fast' - Assert rc=0 - →T.GoToTidyUp'Number of projects closed: 1'≢res - - #.TEMP.(⎕EX ⎕NL-⍳9) - (rc msg res)←stop ∆UCMD'OpenProject ',tempDir,' -projectSpace=TEMP -batch -ignoreUserExec' - Assert rc=0 - →T.GoToTidyUp'Project successfully opened and established in "#.TEMP"'≢res~⎕TC - →T.GoToTidyUp~(⊂'UtcNow')∊#.TEMP.Clock.⎕NL-2 - →T.GoToTidyUp~∧/'Julian' 'Gregorian'∊⍕¨#.TEMP.NodaTime.CalendarSystem.⎕NL-2 - - (rc msg res)←∆UCMD'CloseProject ',tempDir,' -fast' - Assert rc=0 - - R←T._OK + tempFolder←∆GetFolderInTempDir⊃⎕SI + parms←∆NuGetTestProcessParms(⊃⎕SI)tempFolder + I←⎕NEW APLProcess(,⊂parms) + R←I.ExitCode ∆TidyUp: - ref.Cleanup - res←∆LINK'Break' '#.TEMP' - FilesAndDirs.RmDir tempDir,'/..' ⍝ Does not work: the .NET DLL blocks this; there is no way around this at the time of writing (October 2023) + (rc msg)←FilesAndDirs.RmDirByForce tempFolder + msg Assert 0=rc ⍝Done diff --git "a/APLSource/TestCases/\342\210\206Test_UC_045.aplf" "b/APLSource/TestCases/\342\210\206Test_UC_045.aplf" new file mode 100644 index 00000000..b0b11082 --- /dev/null +++ "b/APLSource/TestCases/\342\210\206Test_UC_045.aplf" @@ -0,0 +1,35 @@ + R←∆Test_UC_045(stopFlag batchFlag);⎕TRAP;res;msg;rc;folder;parms;tempDir;success;log +⍝ Exercise ]Cider.AddNuGetDependencies and ListNuGetDependencies + ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') + R←T._Failed + + #.⎕SHADOW'TEMP' ⋄ 'TEMP'#.⎕NS'' + folder←∆GetTestPath⊃⎕SI + tempDir←∆TEMP_PATH + tempDir ⎕NCOPY⍠1⊢folder,'/*' + + parms←##.Cider.CreateOpenParms'' + parms.folder←∊⎕NPARTS tempDir + parms.noPkgLoad←0 + parms.batch←1 + parms.ignoreUserExec←1 + + ##.Cider.C.YesOrNo_Answers←1 2⍴'ChangeCurrentDir@' 'n' + (success log)←##.Cider.OpenProject parms + →T.GoToTidyUp~success + →T.GoToTidyUp∨/'ERROR'⍷log + + {}##.Cider.AddNuGetDependencies'Clock,NodaTime'tempDir ⍝ Clock is already installed + + (rc msg res)←∆UCMD'ListNuGetDependencies "',tempDir,'"' + →T.GoToTidyUp rc≠0 + →T.GoToTidyUp 0≠≢msg + →T.GoToTidyUp 2≠≢res + →T.GoToTidyUp 2≠2⊃⍴res + + R←T._OK + +∆TidyUp: + ##.Cider.C.Cleanup + {}∆LINK'Break' '#.TEMP' +⍝Done diff --git "a/APLSource/TestCases/\342\210\206Test_UC_050.aplf" "b/APLSource/TestCases/\342\210\206Test_UC_050.aplf" new file mode 100644 index 00000000..5fd00045 --- /dev/null +++ "b/APLSource/TestCases/\342\210\206Test_UC_050.aplf" @@ -0,0 +1,46 @@ + R←∆Test_UC_050(stopFlag batchFlag);⎕TRAP;folder;res;log;cals;success;tempDir;config;msg;rc;stop;batch;Cleanup;ref +⍝ Open project, add 2 NuGet packages to default folder, load, call, list, close, re-open, close + ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') + R←T._Failed + + #.⎕SHADOW'TEMP' ⋄ 'TEMP'#.⎕NS'' + folder←∆GetTestPath⊃⎕SI + tempDir←∆TEMP_PATH + tempDir ⎕NCOPY⍠1⊢folder,'/*' + + ref←∆GetRefToCommTools + ref.YesOrNo_Answers←1 2⍴'ChangeCurrentDir@' 'n' + stop←0 + (rc msg res)←stop ∆UCMD'OpenProject ',tempDir,' -projectSpace=TEMP -batch -ignoreUserExec' + Assert rc=0 + + ref.YesOrNo_Answers←1 2⍴'LoadNuGetDependenciesAfterAdding@' 'y' + (rc msg res)←stop ∆UCMD'AddNuGetDependencies Clock,NodaTime ',tempDir + Assert rc=0 + →T.GoToTidyUp 2≠+/'Clock' 'NodaTime'{0<≢('\b',⍺,'\b')⎕S 0⊣⍵}¨⊂res + + (rc msg res)←stop ∆UCMD'ListNuGetDependencies ',tempDir + Assert rc=0 + →T.GoToTidyUp 2≠≡res + + ref.YesOrNo_Answers⍪←1 2⍴'Do you wish to )CLEAR the workspace?' 'y' + (rc msg res)←∆UCMD'CloseProject ',tempDir,' -fast' + Assert rc=0 + →T.GoToTidyUp~∨/'Number of projects closed: 1'∊res + + #.TEMP.(⎕EX ⎕NL-⍳9) + (rc msg res)←stop ∆UCMD'OpenProject ',tempDir,' -projectSpace=TEMP -batch -ignoreUserExec' + Assert rc=0 + →T.GoToTidyUp'Project successfully opened and established in "#.TEMP"'≢res~⎕TC + →T.GoToTidyUp~(⊂'UtcNow')∊#.TEMP.Clock.⎕NL-2 + →T.GoToTidyUp~∧/'Julian' 'Gregorian'∊⍕¨#.TEMP.NodaTime.CalendarSystem.⎕NL-2 + + (rc msg res)←∆UCMD'CloseProject ',tempDir,' -fast' + Assert rc=0 + + R←T._OK + +∆TidyUp: + ref.Cleanup + res←∆LINK'Break' '#.TEMP' +⍝Done diff --git "a/APLSource/TestCases/\342\210\206Test_UC_051.aplf" "b/APLSource/TestCases/\342\210\206Test_UC_051.aplf" new file mode 100644 index 00000000..2c4ca471 --- /dev/null +++ "b/APLSource/TestCases/\342\210\206Test_UC_051.aplf" @@ -0,0 +1,46 @@ + R←∆Test_UC_051(stopFlag batchFlag);⎕TRAP;folder;res;log;cals;success;tempDir;config;msg;rc;stop;batch;ref +⍝ Open project, add 2 NuGet packages to non-default folder, load, call, list, close, re-open, close + ⎕TRAP←(999 'C' '∘∘∘ ⍝ Deliberate error')(0 'N') + R←T._Failed + + #.⎕SHADOW'TEMP' ⋄ 'TEMP'#.⎕NS'' + folder←∆GetTestPath⊃⎕SI + tempDir←∆TEMP_PATH + tempDir ⎕NCOPY⍠1⊢folder,'/*' + + ref←∆GetRefToCommTools + ref.YesOrNo_Answers←1 2⍴'ChangeCurrentDir@' 'n' + stop←0 + (rc msg res)←stop ∆UCMD'OpenProject ',tempDir,' -projectSpace=TEMP -batch -ignoreUserExec' + Assert rc=0 + + ref.YesOrNo_Answers←1 2⍴'LoadNuGetDependenciesAfterAdding@' 'y' + (rc msg res)←stop ∆UCMD'AddNuGetDependencies clock,NODATIME ',tempDir + Assert rc=0 + →T.GoToTidyUp~'clock' 'nodatime'∆LazyMatch ⎕C res + + (rc msg res)←stop ∆UCMD'ListNuGetDependencies ',tempDir + Assert rc=0 + →T.GoToTidyUp 2≠≡res + + ref.YesOrNo_Answers⍪←1 2⍴'Do you wish to )CLEAR the workspace?' 'y' + (rc msg res)←∆UCMD'CloseProject ',tempDir,' -fast' + Assert rc=0 + →T.GoToTidyUp~∨/'Number of projects closed: 1'∊res + + #.TEMP.(⎕EX ⎕NL-⍳9) + (rc msg res)←stop ∆UCMD'OpenProject ',tempDir,' -projectSpace=TEMP -batch -ignoreUserExec' + Assert rc=0 + →T.GoToTidyUp'Project successfully opened and established in "#.TEMP"'≢res~⎕TC + →T.GoToTidyUp~(⊂'UtcNow')∊#.TEMP.Clock.⎕NL-2 + →T.GoToTidyUp~∧/'Julian' 'Gregorian'∊⍕¨#.TEMP.NodaTime.CalendarSystem.⎕NL-2 + + (rc msg res)←∆UCMD'CloseProject ',tempDir,' -fast' + Assert rc=0 + + R←T._OK + +∆TidyUp: + ref.Cleanup + res←∆LINK'Break' '#.TEMP' +⍝Done diff --git a/Tests/Test_UC_046/APLSource/Hello.aplf b/Tests/Test_UC_046/APLSource/Hello.aplf new file mode 100644 index 00000000..76d2bbb1 --- /dev/null +++ b/Tests/Test_UC_046/APLSource/Hello.aplf @@ -0,0 +1,2 @@ + r←Hello + r←'World' diff --git a/Tests/Test_UC_046/cider.config b/Tests/Test_UC_046/cider.config new file mode 100644 index 00000000..99da2d48 --- /dev/null +++ b/Tests/Test_UC_046/cider.config @@ -0,0 +1,29 @@ +{ + CIDER: { + dependencies: { + nuget: "nuget-packages", + tatin: "mypackages", + }, + dependencies_dev: { + tatin: "", + }, + distributionFolder: "", + init: "", + make: "", + parent: "#", + projectSpace: "TEMP", + project_url: "", + source: "APLSource", + tests: "", + }, + LINK: { + forceFilenames: 1, + watch: "ns", + }, + SYSVARS: { + io: 1, + ml: 1, + }, + USER: { + }, +} diff --git a/Tests/Test_UC_047/APLSource/Hello.aplf b/Tests/Test_UC_047/APLSource/Hello.aplf new file mode 100644 index 00000000..76d2bbb1 --- /dev/null +++ b/Tests/Test_UC_047/APLSource/Hello.aplf @@ -0,0 +1,2 @@ + r←Hello + r←'World' diff --git a/Tests/Test_UC_047/cider.config b/Tests/Test_UC_047/cider.config new file mode 100644 index 00000000..99da2d48 --- /dev/null +++ b/Tests/Test_UC_047/cider.config @@ -0,0 +1,29 @@ +{ + CIDER: { + dependencies: { + nuget: "nuget-packages", + tatin: "mypackages", + }, + dependencies_dev: { + tatin: "", + }, + distributionFolder: "", + init: "", + make: "", + parent: "#", + projectSpace: "TEMP", + project_url: "", + source: "APLSource", + tests: "", + }, + LINK: { + forceFilenames: 1, + watch: "ns", + }, + SYSVARS: { + io: 1, + ml: 1, + }, + USER: { + }, +} diff --git a/apl-package.json b/apl-package.json index c869ee12..9124df6c 100644 --- a/apl-package.json +++ b/apl-package.json @@ -21,5 +21,5 @@ tags: "project-management", tatin_version: "0.103.0", userCommandScript: "APLSource/Cider_UC.dyalog", - version: "0.41.0+743", + version: "0.41.0+744", }