Skip to content

Commit 6209c3a

Browse files
committed
enh: mappings expand <namespace> parameter
1 parent 88fb29b commit 6209c3a

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
99

1010
### Added
1111
- Expanded Baseline Export to include custom HL7, X12, ASTM schemas and Lookup Tables (#693)
12+
- Mapping configuration expands \<namespace\> parameter to support namespace-specific mappings (#710)
1213

1314
### Fixed
1415
- Deletes are now properly owned by the user who did the delete (#729)

cls/SourceControl/Git/Utils.cls

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2422,10 +2422,12 @@ ClassMethod Name(InternalName As %String, ByRef MappingExists As %Boolean) As %S
24222422

24232423
ClassMethod ExpandMappingParameters(MapDirectory, Settings As SourceControl.Git.Settings = {##class(SourceControl.Git.Settings).%New()})
24242424
{
2425-
return $replace(MapDirectory,"<env>", $zconvert($select(
2425+
set expandedDir = $replace(MapDirectory,"<env>", $zconvert($select(
24262426
Settings.environmentName = "": "DEVELOPMENT",
24272427
1: Settings.environmentName)
24282428
,"l"))
2429+
set expandedDir = $replace(expandedDir,"<namespace>", $zconvert($namespace,"l"))
2430+
return expandedDir
24292431
}
24302432

24312433
/// Implementation copied from %Library.RoutineMgr, but with results cached in a PPG.
@@ -3198,4 +3200,3 @@ ClassMethod IsSchemaStandard(pName As %String = "") As %Boolean [ Internal ]
31983200
}
31993201

32003202
}
3201-

test/UnitTest/SourceControl/Git/NameTest.cls

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,16 +64,18 @@ Method TestMixedFoldering()
6464
do $$$AssertEquals(##class(Utils).Name("TestPackage.Hello.World.mac"),"rtn/TestPackage/Hello/World.mac")
6565
}
6666

67-
Method TestEnvExpansion()
67+
Method TestParamExpansion()
6868
{
6969
try {
7070
set $$$SourceMapping("ESD","*") = "config/<env>/"
7171
set $$$SourceMapping("ESD","*","NoFolders") = 1
72+
set $$$SourceMapping("CLS","*") = "<namespace>/cls/"
7273
set settings = ##class(SourceControl.Git.Settings).%New()
7374
set oldEnvName = settings.environmentName
7475
set settings.environmentName = "TEST"
7576
$$$ThrowOnError(settings.%Save())
7677
do $$$AssertEquals(##class(SourceControl.Git.Utils).Name("Ens.Config.DefaultSettings.esd"),"config/test/Ens.Config.DefaultSettings.esd")
78+
do $$$AssertEquals(##class(SourceControl.Git.Utils).Name("test.class.cls"),$zconvert($namespace,"l")_"/cls/test/class.cls")
7779
} catch err {
7880
do $$$AssertStatusOK(err.AsStatus())
7981
}

0 commit comments

Comments
 (0)