Skip to content

Commit

Permalink
Доработка теста Tests_SmokeCommonModules.epf под тонкий клиент (vanes…
Browse files Browse the repository at this point in the history
…sa-opensource#657)

* Доработка теста под тонкий клиент

* Выгрузил исходники на  8.3.10

* Догрузил форму 8.3.10
  • Loading branch information
SidnevAV authored Feb 4, 2020
1 parent 524722b commit f3ac0ff
Show file tree
Hide file tree
Showing 5 changed files with 1,080 additions and 98 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
</v8:item>
</Synonym>
<Comment/>
<DefaultForm/>
<DefaultForm>ExternalDataProcessor.Tests_SmokeCommonModules.Form.Form</DefaultForm>
<AuxiliaryForm/>
</Properties>
<ChildObjects>
Expand Down Expand Up @@ -97,6 +97,7 @@
<ChoiceHistoryOnInput>DontUse</ChoiceHistoryOnInput>
</Properties>
</Attribute>
<Form>Form</Form>
</ChildObjects>
</ExternalDataProcessor>
</MetaDataObject>
</MetaDataObject>
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@ EndProcedure // Инициализация()
//
Procedure ЗаполнитьНаборТестов(TestsSet, CoreContextParam) Export

If CurrentRunMode() = ClientRunMode.ManagedApplication Then
Return;
EndIf;

CoreContext = CoreContextParam;

LoadSettings();
Expand Down Expand Up @@ -430,6 +434,181 @@ EndProcedure // Fact_ClientServerModule()

#EndRegion // TestCases

#Region Internal

// Splits a string into parts according using the specified delimiter.
//
// Parameters:
// String - String - string to be splitted.
// Separator - String - character string where every character is
// an individual delimiter.
// IncludeBlank - Boolean - shows if it is required to include the empty
// strings which can result from a separation of
// a source string while calculating the result.
// Default value: True.
//
// Returns:
// Array - array with strings resulting from splitting of the source string.
// * ArrayItem - String - part of string.
//
Function _StrSplit(Val String, Val Separator, IncludeBlank = True) Export

SplitResult = New Array;

If IsBlankString(String) Then
If IncludeBlank Then
SplitResult.Add(String);
EndIf;
Return SplitResult;
EndIf;

Position = Find(String, Separator);
While Position > 0 Do
Substring = Left(String, Position - 1);
If IncludeBlank Or Not IsBlankString(Substring) Then
SplitResult.Add(Substring);
EndIf;
String = Mid(String, Position + StrLen(Separator));
Position = Find(String, Separator);
EndDo;

If IncludeBlank Or Not IsBlankString(String) Then
SplitResult.Add(String);
EndIf;

Return SplitResult;

EndFunction // _StrSplit()

// Inserts parameters into string by number.
//
// Parameters:
// Template – String – a string containing the substitution markers of type:
// "%1..%N". The markers are numbered starting with 0.
// Value<1-10> - String - parameters containing arbitrary values possessing
// string presentations which should be presented in a
// template.
// Returns:
// String – template string with filled parameters.
//
Function _StrTemplate(Val Template, Val Value1, Val Value2 = Undefined,
Val Value3 = Undefined, Val Value4 = Undefined, Val Value5 = Undefined,
Val Value6 = Undefined, Val Value7 = Undefined, Val Value8 = Undefined,
Val Value9 = Undefined, Val Value10 = Undefined) Export

Template = StrReplace(Template, "%1", String(Value1));
Template = StrReplace(Template, "%2", String(Value2));
Template = StrReplace(Template, "%3", String(Value3));
Template = StrReplace(Template, "%4", String(Value4));
Template = StrReplace(Template, "%5", String(Value5));
Template = StrReplace(Template, "%6", String(Value6));
Template = StrReplace(Template, "%7", String(Value7));
Template = StrReplace(Template, "%8", String(Value8));
Template = StrReplace(Template, "%9", String(Value9));
Template = StrReplace(Template, "%10", String(Value10));

Return Template;

EndFunction // _StrTemplate()

// Retuns basic smoke common modules settings.
//
// Returns:
// Structure - basic smoke common modules settings.
// * Subsystems - Array - subsystem names collection for which it's needed
// to run smoke common modules tests.
// If not set, smoke tests run without any restrictions.
// ** ArrayItem - String - subsystem name.
// * ExcludedCommonModules - Array - excluded common modules from smoke tests.
// ** ArrayItem - String - common module name.
//
Function NewSmokeCommonModulesSettings() Export

SmokeCommonModulesSettings = New Structure;
SmokeCommonModulesSettings.Insert("Subsystems", New Array);
SmokeCommonModulesSettings.Insert("ExcludedCommonModules", New Array);
SmokeCommonModulesSettings.Subsystems.Add("*");
Return SmokeCommonModulesSettings;

EndFunction // NewSmokeCommonModulesSettings()

Function ReturnValuesReuseDontUse(CommonModuleName) Export
CommonModule = Metadata.CommonModules.Find(CommonModuleName);
Return CommonModule.ReturnValuesReuse = Metadata.ObjectProperties.ReturnValuesReuse.DontUse;
EndFunction

Function DefaultRunMode() Export
Return Metadata.DefaultRunMode;
EndFunction

Function CommonModule(CommonModuleName) Export

Result = New Structure;
Result.Insert("Global", False);
Result.Insert("ClientManagedApplication", False);
Result.Insert("Server", False);
Result.Insert("ExternalConnection", False);
Result.Insert("ServerCall", False);
Result.Insert("Privileged", False);

FillPropertyValues(Result, Metadata.CommonModules.Find(CommonModuleName));

Return Result;

EndFunction

Function CommonModules() Export

Result = New Array;

For Each CommonModule In Metadata.CommonModules Do

mCommonModule = New Structure;
mCommonModule.Insert("Name", CommonModule.Name);
mCommonModule.Insert("Comment", CommonModule.Comment);
Result.Add(mCommonModule);

EndDo;

Return Result;

EndFunction

Function SubsystemContent(SubsystemName) Export

Subsystem = Metadata.Subsystems.Find(SubsystemName);
Result = New Array;

For Each Item In Subsystem.Content Do
mItem = New Structure;
mItem.Insert("Name", Item.Name);
mItem.Insert("FullName", Item.FullName());
mItem.Insert("Comment", Item.Comment);
Result.Add(mItem);
EndDo;

Return Result;

EndFunction

Function FindSubsystem(ParentSubsystemName, SubsystemName) Export

If ParentSubsystemName = "Metadata" Or ParentSubsystemName = Undefined Then
ParentSubsystem = Metadata;
Else
ParentSubsystem = Metadata.Subsystems.Find(ParentSubsystemName);
EndIf;
ParentSubsystem = ParentSubsystem.Subsystems.Find(SubsystemName);
If ParentSubsystem <> Undefined Then
Return ParentSubsystem.Name;
Else
Return Undefined;
EndIf;

EndFunction

#EndRegion // Internal

#Region ServiceProceduresAndFunctions

// Only for internal use.
Expand Down Expand Up @@ -742,100 +921,4 @@ Procedure RecursivelyLoadSmokeCommonModuleTestsFromSubsystem(TestsSet,

EndProcedure // RecursivelyLoadSmokeCommonModuleTestsFromSubsystem()

// Splits a string into parts according using the specified delimiter.
//
// Parameters:
// String - String - string to be splitted.
// Separator - String - character string where every character is
// an individual delimiter.
// IncludeBlank - Boolean - shows if it is required to include the empty
// strings which can result from a separation of
// a source string while calculating the result.
// Default value: True.
//
// Returns:
// Array - array with strings resulting from splitting of the source string.
// * ArrayItem - String - part of string.
//
Function _StrSplit(Val String, Val Separator, IncludeBlank = True)

SplitResult = New Array;

If IsBlankString(String) Then
If IncludeBlank Then
SplitResult.Add(String);
EndIf;
Return SplitResult;
EndIf;

Position = Find(String, Separator);
While Position > 0 Do
Substring = Left(String, Position - 1);
If IncludeBlank Or Not IsBlankString(Substring) Then
SplitResult.Add(Substring);
EndIf;
String = Mid(String, Position + StrLen(Separator));
Position = Find(String, Separator);
EndDo;

If IncludeBlank Or Not IsBlankString(String) Then
SplitResult.Add(String);
EndIf;

Return SplitResult;

EndFunction // _StrSplit()

// Inserts parameters into string by number.
//
// Parameters:
// Template – String – a string containing the substitution markers of type:
// "%1..%N". The markers are numbered starting with 0.
// Value<1-10> - String - parameters containing arbitrary values possessing
// string presentations which should be presented in a
// template.
// Returns:
// String – template string with filled parameters.
//
Function _StrTemplate(Val Template, Val Value1, Val Value2 = Undefined,
Val Value3 = Undefined, Val Value4 = Undefined, Val Value5 = Undefined,
Val Value6 = Undefined, Val Value7 = Undefined, Val Value8 = Undefined,
Val Value9 = Undefined, Val Value10 = Undefined)

Template = StrReplace(Template, "%1", String(Value1));
Template = StrReplace(Template, "%2", String(Value2));
Template = StrReplace(Template, "%3", String(Value3));
Template = StrReplace(Template, "%4", String(Value4));
Template = StrReplace(Template, "%5", String(Value5));
Template = StrReplace(Template, "%6", String(Value6));
Template = StrReplace(Template, "%7", String(Value7));
Template = StrReplace(Template, "%8", String(Value8));
Template = StrReplace(Template, "%9", String(Value9));
Template = StrReplace(Template, "%10", String(Value10));

Return Template;

EndFunction // _StrTemplate()

// Retuns basic smoke common modules settings.
//
// Returns:
// Structure - basic smoke common modules settings.
// * Subsystems - Array - subsystem names collection for which it's needed
// to run smoke common modules tests.
// If not set, smoke tests run without any restrictions.
// ** ArrayItem - String - subsystem name.
// * ExcludedCommonModules - Array - excluded common modules from smoke tests.
// ** ArrayItem - String - common module name.
//
Function NewSmokeCommonModulesSettings()

SmokeCommonModulesSettings = New Structure;
SmokeCommonModulesSettings.Insert("Subsystems", New Array);
SmokeCommonModulesSettings.Insert("ExcludedCommonModules", New Array);
SmokeCommonModulesSettings.Subsystems.Add("*");
Return SmokeCommonModulesSettings;

EndFunction // NewSmokeCommonModulesSettings()

#EndRegion // ServiceProceduresAndFunctions
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4">
<Form uuid="7b475ae4-0dfc-4995-85e4-a0aa80c79a57">
<Properties>
<Name>Form</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Form</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PersonalComputer</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobileDevice</v8:Value>
</UsePurposes>
<ExtendedPresentation/>
</Properties>
</Form>
</MetaDataObject>
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4">
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/>
<Attributes>
<Attribute name="Object" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Object</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:ExternalDataProcessorObject.Tests_SmokeCommonModules</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
</Attribute>
</Attributes>
</Form>
Loading

0 comments on commit f3ac0ff

Please sign in to comment.