рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдПрдХ рддреГрддреАрдп-рдкрдХреНрд╖ рдЦреЛрдЬ рдЗрдВрдЬрди рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рддреЗ рд╕рдордп рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕реНрд░реЛрдд рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реИ (рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдмреЛрд▓рдирд╛, рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд░рдирд╛)ред рдРрд╕реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдЦреЛрдЬ рдкреНрд░рдгрд╛рд▓реА рдХреА рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдФрд░ рдЦреЛрдЬ рдЗрдВрдЬрди рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред рдЦреЛрдЬ рдЗрдВрдЬрди рдХреЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рдореЗрдВ рдХреНрд▓рд┐рдХреЛрдВ рдХреЗ рд╕рд┐рд░реНрдлрд╝ рдПрдХ рдЬреЛрдбрд╝реЗ рддрдХ рд╕реАрдорд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ, рд▓рд┐рдкрд┐рдпреЛрдВ рдЖрджрд┐ рдХреЛ рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдЧрд░ рд╣рдо рд╕рд┐рд╕реНрдЯрдо рдХреА рдорд╛рдирдХ рдХреНрд╖рдорддрд╛рдУрдВ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рдЖрджреА рд╣реИрдВ (рд╡рд┐рд╢реЗрд╖рдХрд░ рдпрджрд┐ рдЗрд╕рдХрд╛ рдХреЛрдб рд╕рдВрд╢реЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ), рддреЛ рд╣рдорд╛рд░реА рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдореИрдВ рдРрд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬрд┐рдирдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣рдореЗрд╢рд╛ рдЗрдВрдЬрди рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╣рдореЗрдВ рдПрдордПрд╕ рдлрд╛рд╕реНрдЯ рдИрдПрд╕рдкреА 5.3 рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдПрдХ рдЦреЛрдЬ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рдЗрд╕ рдЧрдВрднреАрд░ рдЗрдВрдЬрди рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рдХреНрд╖рдорддрд╛рдПрдВ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЛ рд╣рдордиреЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЫреБрдЖ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рдо рдЗрд╕ рдЗрдВрдЬрди рдкрд░ рдХрд╕реНрдЯрдо рдЪрд░рдгреЛрдВ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЕрдкрдиреЗ рддрд░реАрдХреЗ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдкреНрд░рд▓реЗрдЦрди рдЪрд░рдгреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рд╣рдо рдЗрд╕реЗ рджреЛрдмрд╛рд░рд╛ рдирд╣реАрдВ рд▓рд┐рдЦреЗрдВрдЧреЗ, рд╣рдо рдХреЗрд╡рд▓ рдкреВрд░реНрд╡рдЧрд╛рдореА рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рддрдХ рд╣реА рд╕реАрдорд┐рдд рд░рдЦреЗрдВрдЧреЗред
рдлрд╛рд╕реНрдЯ рдИрдПрд╕рдкреА рд╢рдмреНрджрд╛рд╡рд▓реА рдореЗрдВ, рдХрд┐рд╕реА рдПрдХрд▓ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд░рддреЗ рд╕рдордп рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рд╕рдВрдкреВрд░реНрдг рдЕрдиреБрдХреНрд░рдо рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕реНрдЯреЗрдЬ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЪрд░рдг рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдпрд╣ рдмрд╛рддрдЪреАрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рддрддреНрд╡ рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдордВрдЪ рд╕рдВрд╕рд╛рдзрд┐рдд рджрд╕реНрддрд╛рд╡реЗрдЬ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдкрдврд╝ рдФрд░ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИред рдпреЛрдЬрдирд╛рдмрджреНрдз рд░реВрдк рд╕реЗ, рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреА рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ:

рдЪрд░рдг рдХреЛ рджреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ - рдПрдХреНрд╕рдПрдордПрд▓ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди (рдлрд╛рд╕реНрдЯ рдИрдПрд╕рдкреА 5.3 рдореЗрдВ, рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд╛рдпрдерди v.2.3 рднрд╛рд╖рд╛ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ)ред
рдиреАрдЪреЗ рдПрдХ рдордВрдЪ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬреЛ рд╣реЙрдЯрдиреНрдпреВ рдбреЙрдХреНрдпреВрдореЗрдВрдЯ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕рдЪ рд╣реЛрдиреЗ рдкрд░ рдЧреБрдгрд╡рддреНрддрд╛ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ 500 рд▓рд┐рдЦрддрд╛ рд╣реИред
<рдкреНрд░реЛрд╕реЗрд╕рд░>
<рдкреНрд░реЛрд╕реЗрд╕рд░>
<рд▓реЛрдб рдореЙрдбреНрдпреВрд▓ = "рдкреНрд░реЛрд╕реЗрд╕рд░ред рд╕рд╛рдЗрдЯрдСрдирдХреНрд╡рд▓" рд╡рд░реНрдЧ = "рд╕реЗрдЯрдСрдирдХреНрд╡рд╛рд▓" />
<desc> рдЙрдЪреНрдЪ рд░реИрдВрдХ рдХреЛ рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВ, рдЬрд┐рд╕рдореЗрдВ HotOrNew = Yes рд╣реИ
</ рд╡рд░реНрдгрди>
<рдХреЙрдиреНрдлрд┐рдЧ>
<param name = "Input" value = "hotornew" type = "str" тАЛтАЛ/>
<param name = "рдЖрдЙрдЯрдкреБрдЯ" рдорд╛рди = "рдЧреБрдгрд╡рддреНрддрд╛" рдкреНрд░рдХрд╛рд░ = "str" тАЛтАЛ/>
<param name = "InputFieldValue" value = "true" рдЯрд╛рдЗрдк = "str" тАЛтАЛ/>
<param name = "OutputFieldValue" рдорд╛рди = "500" рдкреНрд░рдХрд╛рд░ = "int" />
</ рдХреЙрдиреНрдлрд┐рдЧ>
<рдСрдкреНрд╕>
<рдЬреЛрдбрд╝реЗрдВ />
</ рдСрдкреНрд╕>
</ рдкреНрд░реЛрд╕реЗрд╕рд░>
</ рдкреНрд░реЛрд╕реЗрд╕рд░>
(рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╕реАрдзреЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ, рдЪрд┐рддреНрд░ рдХреА рдЕрдЦрдВрдбрддрд╛ рдХреЗ рд▓рд┐рдП рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)
from docproc import Processor, DocumentException, ProcessorStatus class SetOnEqual(Processor.Processor): def ConfigurationChanged(self, attributes): self.input = self.GetParameter('Input') self.output = self.GetParameter('Output') self.inputfieldvalue = self.GetParameter('InputFieldValue') self.outputfieldvalue = self.GetParameter('OutputFieldValue') def Process(self, docid, document): testField = str(document.GetValue(self.input, None)) if testField == str(self.inputfieldvalue): output = int(self.outputfieldvalue) document.Set(self.output,output) else: document.Set(self.output, 0) return ProcessorStatus.OK
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдореВрд▓ рд╕рдВрджрд░реНрдн рдореЗрдВ рдмрдирд╛рдП рдЧрдП рдЪрд░рдг рдХреЗ рдХрд╛рдо рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдХреНрд░рдо рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ:
1. рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдлрд╛рдЗрд▓реЗрдВ рдбрд╛рд▓реЗрдВ;
2. рдбреЙрдХреНрдпреВрдореЗрдВрдЯ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╕рд░реНрд╡рд┐рд╕ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ - рдбреЙрдХреНрдпреВрдореЗрдВрдЯ рдкреНрд░реЙрд╕реЗрд╕рд░ (рдЦрд░реАрджрджрд╛рд░ред рдЬрдм рдпрд╣ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕реНрдЯреЗрдЬ рдХреЛрдб рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ);
3. рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рдПрдХ рдирдпрд╛ рдЪрд░рдг рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ;
4. рдкрд░реАрдХреНрд╖рдг рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд░реЗрдВ;
5. рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рджреЗрдЦреЗрдВ (рдЖрдк рдЗрд╕реЗ рдПрдХ рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЖрдк рдорд╛рдирдХ рдлреНрд░рдВрдЯрдПрдВрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдирдпрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ "рдЦреЛрдЬ рд╕рдХрддреЗ рд╣реИрдВ" рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ)ред
рдпрджрд┐ рд╣рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд┐рдд рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рдорд┐рд▓рд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рд╣рдордиреЗ рдлрд╝реАрд▓реНрдб рдХреЛ рд╣реЙрдЯрдиреНрдпреВ = рд╕рдЪ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЧреБрдгрд╡рддреНрддрд╛ рдлрд╝реАрд▓реНрдб рдХрд╛ рдореВрд▓реНрдп рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ), рддреЛ рд╣рдореЗрдВ рдбреАрдмрдЧрд┐рдВрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ:
- procserver'a рдХреЗ рд▓реЙрдЧ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП рджреЗрдЦреЛ;
- рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╣рдорд╛рд░реЗ рдЪрд░рдг рдиреЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдЪрд░рдг рдХреЗ рдкреНрд░рджрд░реНрд╢рди рд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рдмрд╛рдж рдореЗрдВ рд╕реНрдкрд╛рдИ рдЪрд░рдгреЛрдВ рдХреЛ рдбрд╛рд▓рдХрд░ рдЙрдирд╕реЗ рдкреВрдЫрд╛ рдЧрдпрд╛ рдерд╛ред (рдЬрд╛рд╕реВрд╕ рдбрд┐рд╕реНрдХ рдкрд░ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдбрдВрдк рдбрдВрдк рдХрд░рддрд╛ рд╣реИ);
- рдордВрдЪ рдХреЛрдб рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬреЗрдВред
рддреНрд░реБрдЯрд┐ рддрдп рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдлрд┐рд░ рд╕реЗ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдЕрд░реНрдерд╛рдд рдЪрд░рдг 1, 2, 4, 5 рдлрд┐рд░ рд╕реЗ рдХрд░реЗрдВред
рдпрд╣ рдиреАрд░рд╕ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рд╕реЗ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпреВрдирд┐рдЯ рдЯреЗрд╕реНрдЯ рдореЗрдВ "рдЬреИрд╕рд╛ рд╣реИ" рд╕реНрдЯреЗрдЬ рдХреЛрдб рдбрд┐рдмрдЧ рдХрд░рдирд╛ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ:

рдЗрд╕рд▓рд┐рдП, рд╕рдВрджрд░реНрдн рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдЙрди рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рдЖрджрд┐рдо рдореЛрдЪрд╛ рдХрдХреНрд╖рд╛рдПрдВ рдмрдирд╛рдИрдВ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдордВрдЪ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
class Document(object): """ Mock Document """ def GetValue(self, name, default): return getattr(self, name, default) def Set(self, field, value): setattr(self, field, str(value)) class Processor (object): """ Mock Processor """ def GetParameter(self, name): return getattr(self, name) def Set(self, field, value): setattr(self, field, str(value))
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЗрдХрд╛рдИ рдЕрдиреНрдп рддрд░реАрдХреЗ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред рд╣рдордиреЗ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдЙрди рддрдХ рд╕реАрдорд┐рдд рдХрд░ рд▓рд┐рдпрд╛, рдЬрд┐рдирдХрд╛ рд╣рдо рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдЕрдм рдЖрдк рд╕рд░реНрдЪ рдЗрдВрдЬрди рдХреЗ рдмрд┐рдирд╛ / рдбрд┐рдмрдЧ / рдЯреЗрд╕реНрдЯ рд╕реНрдЯреЗрдЬ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:
import unittest import docproc.Processor as proclib from docproc import ProcessorStatus import SetOnEqual class testSetOnEqual(unittest.TestCase): def setUp(self): self.stage = SetOnEqual.SetOnEqual() self.stage.Set('Input', 'hot') self.stage.Set('Output', 'quality') self.assertEquals(self.stage.GetParameter('Input'), 'hot') self.assertEquals(self.stage.GetParameter('Output'), 'quality') def test_true(self): self.stage.Set('InputFieldValue', 'true') self.stage.Set('OutputFieldValue', '600') doc = proclib.Document() doc.Set('hot', 'true') self.stage.ConfigurationChanged('') status = self.stage.Process("docid", doc) self.assertEquals(status, ProcessorStatus.OK) self.assertEquals(doc.GetValue('quality', ""), '600') def test_false(self): self.stage.Set('InputFieldValue', 'true') self.stage.Set('OutputFieldValue', '600') doc = proclib.Document() doc.Set('hot', 'no') self.stage.ConfigurationChanged('') status = self.stage.Process("docid", doc) self.assertEquals(status, ProcessorStatus.OK) self.assertEquals(doc.GetValue('quality', ""), '0') def suite(): suite = unittest.TestSuite() suite.addTest(unittest.makeSuite(testSetOnEqual)) return suite if __name__ == "__main__": unittest.main()
рдкреВрд░рд╛ рдХреЛрдб
рдЖрд░реНрдХрд╛рдЗрд╡ рдореЗрдВ рд╣реИ ред
рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдиреЗ рд╣рдореЗрдВ рдХреНрдпрд╛ рджрд┐рдпрд╛:
- рд╕реНрд╡рдпрдВ рдХреЗ рд▓рд┐рдП рдЬреАрд╡рди рдХрд╛ рд╕рд░рд▓реАрдХрд░рдг (рдмрд╣реБрдд рд╕рдордп рдмрдЪрд╛рддрд╛ рд╣реИ рдФрд░ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЕрднреНрдпрд╛рд╕ рд╕реЗ рд╡рд┐рджрд╛ рдирд╣реАрдВ рд╣реЛрдиреЗ рджреЗрддрд╛ рд╣реИ);
- рдкрд░реАрдХреНрд╖рдХ рдХреЛ рдЬреАрд╡рди рдХрд╛ рд╕рд░рд▓реАрдХрд░рдгред
рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛рд▓рд┐рдЖ рд╢рдмрдХрдпрд╡
рд▓реАрдб рдбреЗрд╡рд▓рдкрд░
рд╕реЙрдлреНрдЯрд▓рд╛рдЗрди рд╡рд┐рдХрд╛рд╕ рд╡рд┐рднрд╛рдЧ