Index: svn/InterfaceControleur.cls.xml =================================================================== diff -u -r1637 -r1649 --- svn/InterfaceControleur.cls.xml (.../InterfaceControleur.cls.xml) (revision 1637) +++ svn/InterfaceControleur.cls.xml (.../InterfaceControleur.cls.xml) (revision 1649) @@ -3,7 +3,7 @@ %RegisteredObject - + %DataType list 1 @@ -20,13 +20,13 @@ @@ -38,8 +38,11 @@ while itProperties.HasNext() { #dim Property As %Dictionary.PropertyDefinition = itProperties.Next() if '$length(Property.Type) { - do ..Errors.Insert("property "_Property.Name_" ( type missing ) ") + do ..Warnings.Insert("property "_Property.Name_" ( type missing ) ") } + elseif Property.Type="%Float" { + do ..Warnings.Insert("property "_Property.Name_" ( %Float DEPRECATED ) ") + } } ]]> @@ -51,16 +54,17 @@ set itMethods = ##class(TECH.ListIterator).%New(Class.Methods) while itMethods.HasNext() { #dim Method As %Dictionary.MethodDefinition = itMethods.Next() - set itFormalSpecs = ##class(TECH.PiecesIterator).%New(Method.FormalSpec,",") - while itFormalSpecs.HasNext() { - #dim FormalSpec = itFormalSpecs.Next() - #dim ParameterName As %String = $piece(FormalSpec,":",1) - #dim ParameterType As %String = $piece(FormalSpec,":",2) + set FormalSpecParser = ##class(TECH.ClassInfo.FormalSpecParser).%New() + set itParameters = ##class(TECH.ListIterator).%New(FormalSpecParser.Parse(Method.FormalSpec)) + while itParameters.HasNext() { + #dim Parameter As TECH.ClassInfo.ParameterDefinition = itParameters.Next() + #dim ParameterName As %String = Parameter.GeefNaam() + #dim ParameterType As %String = Parameter.GeefType() if '$length(ParameterType) { - do ..Errors.Insert("method "_Method.Name_" : parameter "_ParameterName_" ( type missing ) ") + do ..Warnings.Insert("method "_Method.Name_" : parameter "_ParameterName_" ( type missing ) ") } elseif $extract(ParameterType)'="%" && ( ParameterType'["." ) { - do ..Errors.Insert("method "_Method.Name_" : parameter "_ParameterName_" ( package name incomplete ) ") + do ..Warnings.Insert("method "_Method.Name_" : parameter "_ParameterName_" ( package name incomplete ) ") } } @@ -97,7 +101,7 @@ if ..Methods.IsDefined(Method.Name) { do ..Methods.SetAt(..Methods.GetAt(Method.Name)+1,Method.Name) } else { - do ..Errors.Insert(DerivedClassname_" geen abstracte method op interface gedefinieerd voor "_Method.Name) + do ..Warnings.Insert(DerivedClassname_" geen abstracte method op interface gedefinieerd voor "_Method.Name) } } } @@ -109,27 +113,27 @@ #dim AantalImplementaties As %Integer = itAantalImplementaties.Next() #dim MethodName As %String = itAantalImplementaties.Key() if AantalImplementaties = 0 { - do ..Errors.Insert(MethodName _ " niet geimplementeerd") + do ..Warnings.Insert(MethodName _ " niet geimplementeerd") } } ]]> - + - + %ListOfDataTypes - Index: svn/UnitTestAnalyser.cls.xml =================================================================== diff -u --- svn/UnitTestAnalyser.cls.xml (revision 0) +++ svn/UnitTestAnalyser.cls.xml (revision 1649) @@ -0,0 +1,95 @@ + + + +%RegisteredObject + + +%String +1 + + + +ClassName:%String +1 +%Status +1 + + + + +1 +ClassName:%String +%Boolean + + + + + + + + + + + + +1 + + + + +1 + + + + +Routine:%String + + + + +ClassName:%String + + + + + + Index: svn/Setting.cls.xml =================================================================== diff -u -r1624 -r1649 --- svn/Setting.cls.xml (.../Setting.cls.xml) (revision 1624) +++ svn/Setting.cls.xml (.../Setting.cls.xml) (revision 1649) @@ -38,6 +38,13 @@ ]]> + +1 +%Boolean + + + 1 %String Index: svn/StudioHook.cls.xml =================================================================== diff -u -r1642 -r1649 --- svn/StudioHook.cls.xml (.../StudioHook.cls.xml) (revision 1642) +++ svn/StudioHook.cls.xml (.../StudioHook.cls.xml) (revision 1649) @@ -66,6 +66,10 @@ svn.Helper + +svn.UnitTestHelper + + %String 1 @@ -79,6 +83,8 @@ + + @@ -94,59 +100,15 @@ ]]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/ -]]> - - %Status + + + + + - -Filter:%String="" - +InternalName:%String + - + InternalName:%String - -InternalName:%String -1 -%String - - - %String @@ -922,7 +885,6 @@ InternalName:%String,Object:%RegisteredObject=$$$NULLOREF %Status @@ -1030,7 +998,15 @@ do ..svnHelper.SVNExport(InternalName) do ##class(svn.InterfaceControleur).%New().Controleer($piece(InternalName,".",1,$length(InternalName,".")-1)) - + + if ##class(svn.Setting).MagUnitTestUitvoeren() { + set UnitTestAnalyser = ##class(svn.UnitTestAnalyser).%New(##class(TECH.SourceCodeUtils).StripExtension(InternalName)) + do UnitTestAnalyser.StoreUnitTestInfo() + if ##class(svn.Setting).RunUnitsTestOnCompile() { + do ..UnitTestHelper.RunUnitTestsForInternalName(InternalName) + } + } + Quit $$$OK ]]> @@ -1087,13 +1063,6 @@ if $IsObject(Repository) { do Repository.Status(InternalName) } - /* - if ##class(TECH.SourceCodeUtils).Type(InternalName)="project" { - set ..ProjectNameOriginal=$p(InternalName,".",1) - set ..ProjectNameModified = ..svnHelper.ExternalName(InternalName,$$$FULLPATH) - set ..IsNewProject=0 - } - */ quit $$$OK ]]> Index: svn/Helper.cls.xml =================================================================== diff -u -r1647 -r1649 --- svn/Helper.cls.xml (.../Helper.cls.xml) (revision 1647) +++ svn/Helper.cls.xml (.../Helper.cls.xml) (revision 1649) @@ -534,17 +534,14 @@ Do ..VoerUitCompile() Do ..VoerUitDeploy() - - If VoerUitGetLatest - { - #dim StartBackgroundJobsStatus As %Status = ..VoerUitStartBackgroundJobs() - If $$$ISERR(StartBackgroundJobsStatus){ - Do ..Failed.Insert("Starting Backgroundjobs gefaald : "_$$ParseStatus^vhLib.System(StartBackgroundJobsStatus)) - Do ..ShowFailed("VoerUitStartBackgroundJobs") - Set ..IsGetLatestGefaald = 1 - Set Message ="Starting Backgroundjobs **FAILED**" - Do ..DisplayMessage(Message) - } + #dim StartBackgroundJobsStatus As %Status + Set:VoerUitGetLatest StartBackgroundJobsStatus = ..VoerUitStartBackgroundJobs() + If $$$ISERR(StartBackgroundJobsStatus){ + Do ..Failed.Insert("Starting Backgroundjobs gefaald : "_$$ParseStatus^vhLib.System(StartBackgroundJobsStatus)) + Do ..ShowFailed("VoerUitStartBackgroundJobs") + Set ..IsGetLatestGefaald = 1 + Set Message ="Starting Backgroundjobs **FAILED**" + Do ..DisplayMessage(Message) } ]]> Index: svn/Command.cls.xml =================================================================== diff -u -r1643 -r1649 --- svn/Command.cls.xml (.../Command.cls.xml) (revision 1643) +++ svn/Command.cls.xml (.../Command.cls.xml) (revision 1649) @@ -209,7 +209,7 @@ // go and do it! // Unfortunately when svn comand fails, it fails silently so we never learn what happened - #dim OutputFilename As %String + if '(..CallOut) { set OutputFilename = ##class(TECH.File).GetTempDir()_$JOB_"SVN.txt" set ErrorFilename = ##class(TECH.File).GetTempDir()_$JOB_"SVNErr.txt" @@ -226,27 +226,9 @@ if '(..CallOut) { do ..AddOutputFileToResult(OutputFilename) do ..DisplayErrors(ErrorFilename) - do ..RemoveOutputFile(OutputFilename) } - Quit -]]> - - -OutputFilename:%String -1 - Index: svn/UnitTestInfo.cls.xml =================================================================== diff -u --- svn/UnitTestInfo.cls.xml (revision 0) +++ svn/UnitTestInfo.cls.xml (revision 1649) @@ -0,0 +1,104 @@ + + + +persistent +TECH.Persistent + + +UnitTest,Routine,ClassName + + + +UnitTest + + + +Routine + + + +ClassName + + + +%String + + + + +%String + + + + +%String + + + + +UnitTest:%String +1 +%Status +1 + + + + +1 +ClassName:%String +%ListOfDataTypes + + + + +1 +Routine:%String +%ListOfDataTypes + + + + +%Library.CacheStorage +^svn.UnitTestInfoD +UnitTestInfoDefaultData +^svn.UnitTestInfoD +^svn.UnitTestInfoI +^svn.UnitTestInfoS + + +%%CLASSNAME + + +UnitTest + + +Routine + + +ClassName + + + + + + + Index: svn/Repository.cls.xml =================================================================== diff -u -r1644 -r1649 --- svn/Repository.cls.xml (.../Repository.cls.xml) (revision 1644) +++ svn/Repository.cls.xml (.../Repository.cls.xml) (revision 1649) @@ -233,7 +233,7 @@ InternalName:%String %Boolean -InternalName +InternalName:%String %Boolean -InternalName +InternalName:%String -InternalName +InternalName:%String 1 - -TempFile:%String -1 - - - - + -ExternalName +ExternalName:%String %Boolean -InternalName +InternalName:%String %Boolean -InternalName +InternalName:%String %Boolean Delete is nodig wanneer code nog bestaat in database maar niet meer op het filesysteem en als er in de database een import/export historiek bestaat. -InternalName +InternalName:%String %Boolean + + +%RegisteredObject + + +1 +%Status + + + + +InternalName:%String + + + + +InternalNameStripped:%String,UnitTests:%ListOfDataTypes +1 + + + + +InternalNameStripped:%String,UnitTests:%ListOfDataTypes +1 + + + + +UnitTests:%ListOfDataTypes + 10 ) { + write !,"Teveel unittests om automatisch uit te voeren" + } else { + set itUnitTests = ##class(TECH.ListIterator).%New(UnitTests) + while itUnitTests.HasNext() { + do ..RunUnitTest(itUnitTests.Next()) + } + } +]]> + + + +Classname:%String + + + + +Classname:%String +%String + + + + +Filter:%String + + + + + +