Autofixture: AutoFixture рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдХреНрдпрд╛ рд╣реИ?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 24 рдлрд╝рд░ре░ 2020  ┬╖  40рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: AutoFixture/AutoFixture

рдирдорд╕реНрддреЗ,

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреЛрд▓ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд╕рдВрдж рд╣реИ рдФрд░ рдореИрдВ рдпрд╣ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдХреА рдпреЛрдЬрдирд╛рдПрдВ рдХреНрдпрд╛ рд╣реИрдВред рдЕрднреА рдпрд╣ рдереЛрдбрд╝рд╛ рдкрд░рд┐рддреНрдпрдХреНрдд рд▓рдЧрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ рднреА рдЕрдиреБрд░рдХреНрд╖рдХ рдореБрджреНрджреЛрдВ рдФрд░ рдкреБрд▓ рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗ рд░рд╣рд╛ рд╣реИред

@ploeh @zvirja @ecampidoglio @moodmosaic @adamchester

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВ!

рдпрд╣рд╛рдВ рдореЗрд░реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рднреА рдЧрд╛рдпрдм рд╣реИред рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдРрд╕реА рдЙрдореНрдореАрджреЗрдВ рд╣реИрдВ рдХрд┐ рдореИрдВ рдЕрднреА рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рдХреНрд░рд┐рдп/рд▓реАрдб рдореЗрдВрдЯреЗрдирд░ рдерд╛ред

рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ рдореИрдВ рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рднрд╛рд╡реБрдХ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рдереЗ рдЬрд┐рдиреНрд╣реЗрдВ рдФрд░ рдмреЗрд╣рддрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛ред рдЖрдЬ рднреА рдореИрдВ рдЙрди рдЪреАрдЬреЛрдВ рдХреЛ рджреЗрдЦрддрд╛ рд╣реВрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдХрдо рд╕реЗ рдХрдо рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рдирдЬрд░рд┐рдП рд╕реЗ (рдЬреИрд╕реЗ рдбреНрд░реЙрдк .NET рдорд╛рдирдХ 1.x рд╕рдорд░реНрдерди)ред

рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдореИрдВрдиреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рдкреАрдЫреЗ рд╣рдЯ рдЧрдП рдФрд░ рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдХреБрдЫ рдХрд╛рд░рдгреЛрдВ рдХреА рд╕реНрд╡рдпрдВ рдкрд╣рдЪрд╛рди рдХреАред

рдЕрд╕реНрд╡реАрдХрд░рдг : рдЙрджреНрджреЗрд╢реНрдп рдХрд┐рд╕реА рдХреЛ рджреЛрд╖ рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рди рд▓реЗрдВред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдореИрдВ рд╕рд┐рд░реНрдл рдЕрдкрдирд╛ рдЕрдиреБрднрд╡ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рд╣рдо рджреЗрдЦ рд╕рдХреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдо рдХреБрдЫ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреНрдпрд╛ рдпрд╣ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рд╣реИред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдмрджрд▓рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред

рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдмрджрд▓рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рджреГрдврд╝ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рд╣рд░ рдХреЛрдИ рдорд╛рд░реНрдХ рджреНрд╡рд╛рд░рд╛ рдЫреЛрдбрд╝реА рдЧрдИ рд╡рд┐рд░рд╛рд╕рдд рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред рдорд╛рд░реНрдХ рдХреНрдпрд╛ рдХрд░реЗрдЧрд╛, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рдФрд░ рдХрд░рдиреЗ рдХреА рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рдирд╣реАрдВ рд╣реИред рдорд╛рд░реНрдХ рдХреЛ рд▓рдЧрднрдЧ рд╣рд░ рдкреАрдЖрд░ рдореЗрдВ рдЙрджреНрдзреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрд╣рд╛рдВ рдЙрдиреНрд╣реЛрдВрдиреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рднрд╛рдЧ рдирд╣реАрдВ рд▓рд┐рдпрд╛ рдерд╛ :)

рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░ рдореБрдЭреЗ рд▓рдЧрдиреЗ рд▓рдЧрд╛ рдХрд┐ рдпрд╣рд╛рдБ рдХреБрдЫ рднреА рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдХрдард┐рди рд╣реЛ рдЧрдпрд╛ рд╣реИред рдФрд░ рдЗрд╕рдиреЗ рдЙрд╕ рдЬреБрдиреВрди рдХреЛ рдорд╛рд░ рдбрд╛рд▓рд╛ рдЬреЛ рдореЗрд░реЗ рдкрд╛рд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдерд╛ред

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

рд╢рд╛рдпрдж рдореЗрд░реА рдЙрдореНрдореАрджреЛрдВ рдФрд░ рд╣рдХреАрдХрдд рдореЗрдВ рдмрд╕ рдЗрддрдирд╛ рд╣реА рдлрд░реНрдХ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдФрд░ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ, рдХрд┐ рдпрд╣ рдЪреБрд╕реНрдд, рддрд╛рдЬрд╛ рдФрд░ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рд╕реЗ рднрд░рд╛ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдПрдХ рд╡рд┐рд░рд╛рд╕рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рддрд░рд╣ рд▓рдЧрд╛ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рдмрд╣реБрдд рдХреБрдЫ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЪреАрдЬреЗрдВ рд╡реИрд╕реЗ рднреА рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИрдВред

рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░реЗ рдХреБрдЫ рдкреНрд░рд╕реНрддрд╛рд╡ рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рдереЗ рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдореИрдВ рд╕рдореНрдорд╛рдирдиреАрдп рдорд╛рд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдРрд╕рд╛ рдЕрдиреБрднрд╡реА рдирд╣реАрдВ рд╣реВрдВред рд▓реЗрдХрд┐рди рд╣рдо рдЕрдкрдиреЗ рдирд┐рд░реНрдгрдпреЛрдВ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реНрд╡рддрдВрддреНрд░ рд╣реЛ рд╕рдХрддреЗ рдереЗ, рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЕрдзрд┐рдХ рдЬреАрд╡рдВрдд рд╣реИред

рдереЛрдбрд╝рд╛ рдЕрдХреЗрд▓рд╛ рд╣реИ

рдЬрдм рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реБрдЖ, рддреЛ рдореБрдЭреЗ рджреВрд╕рд░реЛрдВ рдХреЗ рдмреАрдЪ рдЪреБрд╕реНрдд рдЪрд░реНрдЪрд╛рдУрдВ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ, рдЯреАрдо рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирдиреЗ, рджреВрд╕рд░реЛрдВ рдХреЗ рд╕рд╛рде рдореЗрд▓рдЬреЛрд▓ рдмрдврд╝рд╛рдиреЗ рдХреА рдЙрдореНрдореАрдж рдереАред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╕рдордп рдХреЗ рднрд╛рдЧреНрдп рдФрд░/рдпрд╛ рдЕрдиреНрдп рдХрд╛рд░рдХреЛрдВ рдХреЗ рдХрд╛рд░рдг рдЕрдиреНрдп рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдиреЗ рдЪрд░реНрдЪрд╛рдУрдВ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд╛рдЧ рдирд╣реАрдВ рд▓рд┐рдпрд╛ рдФрд░ рдЕрдВрддрддрдГ рдореБрдЭреЗ рд▓рдЧрдиреЗ рд▓рдЧрд╛ рдХрд┐ рдореИрдВ рдпрд╣рд╛рдБ рдЕрдХреЗрд▓рд╛ рд╣реВрдБред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдордп рдЕрдиреНрдп рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдХреЗ рдкрд╛рд╕ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдордп/рдЬреБрдиреВрди рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдЦрд┐рд░рдХрд╛рд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред

рдореИрдВ рдЕрднреА AutoFixture рдХреЗ рд╕рд╛рде рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ

рдЗрд╕ рд╕рдордп рдореИрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдмреИрдХ-рдПрдВрдб рдХреЛрдб рдирд╣реАрдВ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдБ, рдЗрд╕рд▓рд┐рдП AutoFixture рдХрд╛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред рдореБрдЭреЗ рдЕрднреА рднреА рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдордЬрд╝рд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЕрд╡рд╢реНрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рднреА рдмрджрд▓рд╛рд╡ рдХреА рдорд╛рдВрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВред


рдЖрдЧреЗ рдЬрд╛рдХрд░ рдореБрдЭреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдЬреАрд╡рди рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдФрд░ рдЕрдкрдиреЗ рдЬреНрдЮрд╛рди рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реИ, рдЪрд╛рд╣реЗ рд╡рд╣ рд▓рд╛рдЧреВ рд╣реЛред рдпрджрд┐ рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдХреЛрдб/рд░рдЦрд░рдЦрд╛рд╡ рдореЗрдВ рднреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдЗрд╕ рд╕рдордп, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореЗрд░реЗ рдкрд╛рд╕ рд▓реАрдб рдореЗрдВрдЯреЗрдирд░ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬреБрдиреВрди рдФрд░ рдКрд░реНрдЬрд╛ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╣реИ рдЬрд┐рд╕ рдкрд░ рд╣рдо рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЬреЛ рдЬреБрдиреВрди рд╕реЗ рднрд░рд╛ рд╣реИ, рддреЛ рд╣рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрд╕реЗ рдЖрдордВрддреНрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд░рдЦрд░рдЦрд╛рд╡ рдореЗрдВ рд╕реЗ рдПрдХ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рднреА 40 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

@Kralizek , рдкреВрдЫрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдореИрдВ рдХреЗрд╡рд▓ рдЕрдкрдиреЗ рд▓рд┐рдП рдмреЛрд▓ рд╕рдХрддрд╛ рд╣реВрдВ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ (рдЕрднреА рднреА) рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ https://github.com/AutoFixture/AutoFixture/issues/703#issuecomment -275347457 рдореЗрдВ рд▓рд┐рдЦрд╛ рд╣реИ:

рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдареАрдХ рд╣реИ, рдЕрдЧрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдкреАрдЖрд░ (рдУрдВ) рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬреНрдЮрд╛рди рд╣реИред рдЖрдорддреМрд░ рдкрд░, рдореИрдВ (рдЦреБрд╢реА рд╕реЗ) рдХреЛрдб-рдмреЗрд╕ рдХреЗ рдЙрди рд╣рд┐рд╕реНрд╕реЛрдВ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реВрдВ, рдЬрд╣рд╛рдВ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рдмрдирд╛рдпрд╛ рд╣реИ, рдпрд╛ рдпреЛрдЧрджрд╛рди рджрд┐рдпрд╛ рд╣реИред

рдЕрдЧрд░ рдореБрдЭреЗ рдХреЛрдИ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдпрд╛ рд╕рдорд╕реНрдпрд╛ рдпрд╛рдж рдЖрддреА рд╣реИ рдЬрд╣рд╛рдВ рдореЗрд░рд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреБрдЫ рд╕рдордп рд╣реЛ рдЧрдпрд╛ рд╣реИ рдЬрдм рдХрд┐рд╕реА рдиреЗ рдореБрдЭреЗ рдПрдХ рд╕рдореАрдХреНрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рд╣реИ, рдпрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдореБрдЭреЗ рдореБрджреНрджреЛрдВ рдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ ...

#703 рдкрд░ рд╡рд╛рдкрд╕ рдЗрд╢рд╛рд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП @moodmosaic рдзрдиреНрдпрд╡рд╛рджред рдореЗрд░реА рд╕реНрдерд┐рддрд┐ рдЕрднреА рднреА рдкрд╣рд▓реЗ рдЬреИрд╕реА рд╣реА рд╣реИ: рдореИрдВ рдСрдЯреЛрдлрд┐рдХреНрдЪрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдмрд╛рд╣рд░ рд╣реВрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рдкрд░ рд╕рд▓рд╛рд╣ рдХреЗ рд╕рд╛рде рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдореБрдЭреЗ рдЦреБрд╢реА рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдХреБрдЫ рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИ рддреЛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреЛрд▓рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореМрдЬреВрджрд╛ рдЕрдиреБрд░рдХреНрд╖рдХ рднреА рдЖрдЧреЗ рдмрдврд╝ рдЧрдП рд╣реЛрдВред рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рдЙрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рд╕реЗ рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдорд┐рд▓рддреА рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдлрд┐рд░ рд╕реЗ рдкрд┐рдВрдЧ рдХрд░реЗрдВ, рдХреНрдпрд╛ рд╣рдореЗрдВ рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП, рдПрдХ рдпрд╛ рджреЛ рд╕рдкреНрддрд╛рд╣?

рдореИрдВ рдЕрднреА рднреА рдЙрди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдХрднреА-рдХрднреА рдкреАрдЖрд░ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдореБрдЭреЗ рдЕрдиреБрднрд╡ рд╣реБрдЖ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдХреНрд╖реЗрддреНрд░ рд╢рд╛рдпрдж рдХрдо рд╣реИрдВ рдФрд░ рдЗрди рджрд┐рдиреЛрдВ рдХреЗ рдмреАрдЪ рдмрд╣реБрдд рджреВрд░ рд╣реИрдВред

рдЕрдЧрд░ рдЪреАрдЬреЗрдВ рдЖрдЧреЗ рдирд╣реАрдВ рдмрдврд╝ рд░рд╣реА рд╣реИрдВ, рддреЛ рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╣рдо рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╣рдо рдЬрд╝рд░реВрд░рдд рдкрдбрд╝рдиреЗ рдкрд░ рдФрд░ рд▓реЛрдЧреЛрдВ рдХреА рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд┐рдпрдВрддреНрд░рдг рд╡рд╛рдкрд╕ рд▓реЗрдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ рд░рдЦрддрд╛, рд▓реЗрдХрд┐рди рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдореИрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА рднрдВрдбрд╛рд░ рдореЗрдВ рд▓реЗрдЦрди рдкрд╣реБрдВрдЪ рд╣реИред рдЕрдЧрд░ рдХреЛрдИ рдФрд░ рд╕реНрд╡реЗрдЪреНрдЫрд╛ рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЗрд╕реЗ рдкреВрд░рд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВ!

рдпрд╣рд╛рдВ рдореЗрд░реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рднреА рдЧрд╛рдпрдм рд╣реИред рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдРрд╕реА рдЙрдореНрдореАрджреЗрдВ рд╣реИрдВ рдХрд┐ рдореИрдВ рдЕрднреА рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рдХреНрд░рд┐рдп/рд▓реАрдб рдореЗрдВрдЯреЗрдирд░ рдерд╛ред

рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ рдореИрдВ рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рднрд╛рд╡реБрдХ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рдереЗ рдЬрд┐рдиреНрд╣реЗрдВ рдФрд░ рдмреЗрд╣рддрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛ред рдЖрдЬ рднреА рдореИрдВ рдЙрди рдЪреАрдЬреЛрдВ рдХреЛ рджреЗрдЦрддрд╛ рд╣реВрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдХрдо рд╕реЗ рдХрдо рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рдирдЬрд░рд┐рдП рд╕реЗ (рдЬреИрд╕реЗ рдбреНрд░реЙрдк .NET рдорд╛рдирдХ 1.x рд╕рдорд░реНрдерди)ред

рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдореИрдВрдиреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рдкреАрдЫреЗ рд╣рдЯ рдЧрдП рдФрд░ рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдХреБрдЫ рдХрд╛рд░рдгреЛрдВ рдХреА рд╕реНрд╡рдпрдВ рдкрд╣рдЪрд╛рди рдХреАред

рдЕрд╕реНрд╡реАрдХрд░рдг : рдЙрджреНрджреЗрд╢реНрдп рдХрд┐рд╕реА рдХреЛ рджреЛрд╖ рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рди рд▓реЗрдВред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдореИрдВ рд╕рд┐рд░реНрдл рдЕрдкрдирд╛ рдЕрдиреБрднрд╡ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рд╣рдо рджреЗрдЦ рд╕рдХреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдо рдХреБрдЫ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреНрдпрд╛ рдпрд╣ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рд╣реИред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдмрджрд▓рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред

рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдмрджрд▓рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рджреГрдврд╝ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рд╣рд░ рдХреЛрдИ рдорд╛рд░реНрдХ рджреНрд╡рд╛рд░рд╛ рдЫреЛрдбрд╝реА рдЧрдИ рд╡рд┐рд░рд╛рд╕рдд рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред рдорд╛рд░реНрдХ рдХреНрдпрд╛ рдХрд░реЗрдЧрд╛, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рдФрд░ рдХрд░рдиреЗ рдХреА рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рдирд╣реАрдВ рд╣реИред рдорд╛рд░реНрдХ рдХреЛ рд▓рдЧрднрдЧ рд╣рд░ рдкреАрдЖрд░ рдореЗрдВ рдЙрджреНрдзреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрд╣рд╛рдВ рдЙрдиреНрд╣реЛрдВрдиреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рднрд╛рдЧ рдирд╣реАрдВ рд▓рд┐рдпрд╛ рдерд╛ :)

рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░ рдореБрдЭреЗ рд▓рдЧрдиреЗ рд▓рдЧрд╛ рдХрд┐ рдпрд╣рд╛рдБ рдХреБрдЫ рднреА рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдХрдард┐рди рд╣реЛ рдЧрдпрд╛ рд╣реИред рдФрд░ рдЗрд╕рдиреЗ рдЙрд╕ рдЬреБрдиреВрди рдХреЛ рдорд╛рд░ рдбрд╛рд▓рд╛ рдЬреЛ рдореЗрд░реЗ рдкрд╛рд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдерд╛ред

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

рд╢рд╛рдпрдж рдореЗрд░реА рдЙрдореНрдореАрджреЛрдВ рдФрд░ рд╣рдХреАрдХрдд рдореЗрдВ рдмрд╕ рдЗрддрдирд╛ рд╣реА рдлрд░реНрдХ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдФрд░ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ, рдХрд┐ рдпрд╣ рдЪреБрд╕реНрдд, рддрд╛рдЬрд╛ рдФрд░ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рд╕реЗ рднрд░рд╛ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдПрдХ рд╡рд┐рд░рд╛рд╕рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рддрд░рд╣ рд▓рдЧрд╛ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рдмрд╣реБрдд рдХреБрдЫ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЪреАрдЬреЗрдВ рд╡реИрд╕реЗ рднреА рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИрдВред

рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░реЗ рдХреБрдЫ рдкреНрд░рд╕реНрддрд╛рд╡ рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рдереЗ рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдореИрдВ рд╕рдореНрдорд╛рдирдиреАрдп рдорд╛рд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдРрд╕рд╛ рдЕрдиреБрднрд╡реА рдирд╣реАрдВ рд╣реВрдВред рд▓реЗрдХрд┐рди рд╣рдо рдЕрдкрдиреЗ рдирд┐рд░реНрдгрдпреЛрдВ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реНрд╡рддрдВрддреНрд░ рд╣реЛ рд╕рдХрддреЗ рдереЗ, рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЕрдзрд┐рдХ рдЬреАрд╡рдВрдд рд╣реИред

рдереЛрдбрд╝рд╛ рдЕрдХреЗрд▓рд╛ рд╣реИ

рдЬрдм рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реБрдЖ, рддреЛ рдореБрдЭреЗ рджреВрд╕рд░реЛрдВ рдХреЗ рдмреАрдЪ рдЪреБрд╕реНрдд рдЪрд░реНрдЪрд╛рдУрдВ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ, рдЯреАрдо рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирдиреЗ, рджреВрд╕рд░реЛрдВ рдХреЗ рд╕рд╛рде рдореЗрд▓рдЬреЛрд▓ рдмрдврд╝рд╛рдиреЗ рдХреА рдЙрдореНрдореАрдж рдереАред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╕рдордп рдХреЗ рднрд╛рдЧреНрдп рдФрд░/рдпрд╛ рдЕрдиреНрдп рдХрд╛рд░рдХреЛрдВ рдХреЗ рдХрд╛рд░рдг рдЕрдиреНрдп рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдиреЗ рдЪрд░реНрдЪрд╛рдУрдВ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд╛рдЧ рдирд╣реАрдВ рд▓рд┐рдпрд╛ рдФрд░ рдЕрдВрддрддрдГ рдореБрдЭреЗ рд▓рдЧрдиреЗ рд▓рдЧрд╛ рдХрд┐ рдореИрдВ рдпрд╣рд╛рдБ рдЕрдХреЗрд▓рд╛ рд╣реВрдБред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдордп рдЕрдиреНрдп рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдХреЗ рдкрд╛рд╕ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдордп/рдЬреБрдиреВрди рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдЦрд┐рд░рдХрд╛рд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред

рдореИрдВ рдЕрднреА AutoFixture рдХреЗ рд╕рд╛рде рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ

рдЗрд╕ рд╕рдордп рдореИрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдмреИрдХ-рдПрдВрдб рдХреЛрдб рдирд╣реАрдВ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдБ, рдЗрд╕рд▓рд┐рдП AutoFixture рдХрд╛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред рдореБрдЭреЗ рдЕрднреА рднреА рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдордЬрд╝рд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЕрд╡рд╢реНрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рднреА рдмрджрд▓рд╛рд╡ рдХреА рдорд╛рдВрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВред


рдЖрдЧреЗ рдЬрд╛рдХрд░ рдореБрдЭреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдЬреАрд╡рди рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдФрд░ рдЕрдкрдиреЗ рдЬреНрдЮрд╛рди рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реИ, рдЪрд╛рд╣реЗ рд╡рд╣ рд▓рд╛рдЧреВ рд╣реЛред рдпрджрд┐ рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдХреЛрдб/рд░рдЦрд░рдЦрд╛рд╡ рдореЗрдВ рднреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдЗрд╕ рд╕рдордп, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореЗрд░реЗ рдкрд╛рд╕ рд▓реАрдб рдореЗрдВрдЯреЗрдирд░ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬреБрдиреВрди рдФрд░ рдКрд░реНрдЬрд╛ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╣реИ рдЬрд┐рд╕ рдкрд░ рд╣рдо рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЬреЛ рдЬреБрдиреВрди рд╕реЗ рднрд░рд╛ рд╣реИ, рддреЛ рд╣рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрд╕реЗ рдЖрдордВрддреНрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд░рдЦрд░рдЦрд╛рд╡ рдореЗрдВ рд╕реЗ рдПрдХ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ #703 рдЪрд░реНрдЪрд╛ рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╡рд╛рдкрд╕ рди рдЖрдиреЗ рдХреЗ рд▓рд┐рдП @AutoFixture/core рдЯреАрдо рд╕реЗ рдорд╛рдлреА рдорд╛рдВрдЧрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рд╣рд╛рдБ, рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрд╕реНрдд рд╕рдордп рдерд╛ (рдФрд░ рдЕрднреА рднреА рд╣реИ) рд▓реЗрдХрд┐рди рдореИрдВ рдЗрддрдирд╛ рд╡реНрдпрд╕реНрдд рдирд╣реАрдВ рдерд╛ рдХрд┐ рдореИрдВ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ рдерд╛ред рдореБрдЭреЗ рдЕрдкрдиреЗ рдХрд┐рд╕реА рднреА рдЙрд▓реНрд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕реВрдЪрдирд╛ рдирд╣реАрдВ рдорд┐рд▓реА рдФрд░ рдореИрдВрдиреЗ рдЪрд░реНрдЪрд╛ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╕реЛрдЪрд╛ред рдЬрдм рдореИрдВрдиреЗ #703 рдкрд░ рджреЛрдмрд╛рд░рд╛ рдЧреМрд░ рдХрд┐рдпрд╛ рддреЛ рдореБрдЭреЗ рд╕рдЪрдореБрдЪ рдЕрднреА рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛ред рдлрд┐рд░ рд╕реЗ, рдореБрдЭреЗ рдЦреЗрдж рд╣реИред рдореИрдВ

AutoFixture рдХреЗ рднрд╡рд┐рд╖реНрдп рдкрд░ рдореЗрд░реА рд╕реНрдерд┐рддрд┐ рд╡рд╣реА рд╣реИ рдЬреЛ рдореИрдВрдиреЗ 2016 рдореЗрдВ рд╡реНрдпрдХреНрдд рдХреА рдереА ред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ AutoFixture рдХрд╛рдлреА рд╕реНрдерд┐рд░ рд╣реИ рдФрд░ рдЕрдм рд╕рд╛рд▓реЛрдВ рд╕реЗ рд╣реИред рдЕрдЧрд░ рдХреЛрдИ рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рджрд┐рд╢рд╛ рдореЗрдВ рд▓реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╕рд╛рдл рд╕реНрд▓реЗрдЯ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ред рдСрдЯреЛ-рдЬрдирд░реЗрдЯрд┐рдВрдЧ рдЯреЗрд╕реНрдЯ рдбреЗрдЯрд╛ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рд╣реИ рдФрд░ рдСрдЯреЛрдлрд┐рдХреНрд╕реНрдЪрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ _only_ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ .NET рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рдХрд╣рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ AutoFixture рдмрдЧ-рдореБрдХреНрдд рд╣реИред рдореИрдВ рдЬреЛ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд░рдЦрд░рдЦрд╛рд╡ рдХреА рдорд╛рддреНрд░рд╛ рдФрд░ рджрд╛рдпрд░рд╛ рдЗрддрдирд╛ рдЫреЛрдЯрд╛ рд╣реИ рдХрд┐ рдпрд╣ @AutoFixture/core рдЯреАрдо рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдмрдиреА рд░рд╣ рд╕рдХрддреА рд╣реИред

рдХреНрдпрд╛ рд╣рдореЗрдВ рд▓реАрдб рдбреЗрд╡рд▓рдкрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдУрдкрди рд╕реЛрд░реНрд╕ рдХрд╛ рдЗрддрд┐рд╣рд╛рд╕ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд▓реАрдб рдХреЗ рдмрд┐рдирд╛ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЕрдВрддрддрдГ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд▓реЗрдХрд┐рди рд▓реАрдб рдХреЗ рд╕рдореВрд╣ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?

рдореИрдВ рдХрд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдо рдореМрдЬреВрджрд╛ рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рдпреБрдХреНрдд рд▓реАрдб рдШрдЯрд╛рдХрд░ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреИрд╕рд╛ рдЪрд▓ рд░рд╣рд╛ рд╣реИред

AutoFixture рдЗрддрдирд╛ рдЕрдЪреНрдЫрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ, рдЗрд╕реЗ рдзреАрд░реЗ-рдзреАрд░реЗ рдорд┐рдЯрддрд╛ рд╣реБрдЖ рджреЗрдЦрдХрд░ рдмрд╣реБрдд рджреБрдЦ рд╣реЛрдЧрд╛ред

рдЪреВрдВрдХрд┐ @zvirja рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рд╕рдмрд╕реЗ рд╕рдХреНрд░рд┐рдп/рд▓реАрдб рдореЗрдВрдЯреЗрдирд░ рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдЙрдирдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреИрд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдЧреАред рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдореЗрдВ рдмрд╣реБрдд рдкреНрд░рдпрд╛рд╕ рдФрд░ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореБрдЭреЗ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реИред рдФрд░ рдзрдиреНрдпрд╡рд╛рдж @zvirja

рдХрд┐рд╕реА рдХреЛ рд╣рд╛рдереА рдХреЛ рдХрдорд░реЗ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рдореИрдВ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВред

рдпрд╣ рдзрд╛рдЧрд╛ рдмрд╣реБрдд рдХреБрдЫ рдЕрдВрддрд┐рдо рд╕рдВрд╕реНрдХрд╛рд░ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ (рдпрд╛ рдЦреЗрджрдЬрдирдХ)

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рд╣рдореЗрдВ (рд╕рдореБрджрд╛рдп рдХреЛ) рдЙрд╕ рд╕реНрдерд┐рддрд┐ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рдЦреЛрдЬрдиреЗ рдкрд░ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдореЗрдВ рд╣рдордиреЗ рдЦреБрдж рдХреЛ рдорд╛рдлреА рдорд╛рдВрдЧрдиреЗ рдХреЗ рдмрдЬрд╛рдп рдкрд╛рдпрд╛ред
рдЕрдм рддрдХ рдпрд╣ рдзрд╛рдЧрд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд░рд╣рд╛ рд╣реИ (рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ):

  1. рд╡рд░реНрддрдорд╛рди рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдХреЗ рдкрд╛рд╕ рд╕рдордп рдирд╣реАрдВ рд╣реИ/рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд░реБрдЪрд┐ рдирд╣реАрдВ рд╣реИ
  2. рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдХрдард┐рди рд╣реИ
  3. рдХреЛрдб рд╕рдореАрдХреНрд╖рд╛ рдмрд╣реБрдд рдкреНрд░рддрд┐рдмрдВрдзрд╛рддреНрдордХ рд╣реИ

рдЕрдм рдХреНрдпрд╛ рд╣рдо рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рдпрд╣рд╛рдВ рдкрд░рд╡рд╛рд╣ рд╣реИ рддреЛ рдЗрд╕ рдкрд░ рдореЗрд░реА рд░рд╛рдп рд╣реИ:

  1. рд╕рдореБрджрд╛рдп рдореЗрдВ рдирдП рд╕рджрд╕реНрдпреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВред @Kralizek рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЖрд╕рдкрд╛рд╕ рд░рд╣рд╛ рд╣реИ, рд╡рд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ @AutoFixture/core рдХреЗ рд╕рд╛рде рдХреЛрдИ рдФрд░ рдЯреАрдо рд╣реЛ?
  2. рдореБрджреНрджреЛрдВ рдХрд╛ рдПрдХ рдмреИрдХрд▓реЙрдЧ рдмрдирд╛рдПрдВ, рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдВ, рд╕рдореБрджрд╛рдп рд╕реЗ рдорджрдж рдорд╛рдВрдЧреЗрдВ
  3. рдХреЛрдб рд╕рдореАрдХреНрд╖рд╛ рдХреЛ рдвреАрд▓рд╛ рдХрд░реЗрдВред рдпрджрд┐ рдкрд┐рдЫрд▓реЗ рдорд╛рд▓рд┐рдХ рджреНрд╡рд╛рд░рд╛ рд▓рдЧрд╛рддрд╛рд░ рдЙрд╕рдХреЗ рд╣рд╛рдереЛрдВ рдкрд░ рдердкреНрдкрдбрд╝ рдорд╛рд░рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдХреЛрдИ рдХрд┐рд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╕реНрд╡рд╛рдорд┐рддреНрд╡ рдирд╣реАрдВ рд▓реЗ рд╕рдХрддрд╛ рд╣реИред
    рдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рд╛рдорд╛рди рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрдХреЗрдЬ AutoFixture.Experimental рдмрдирд╛рдПрдВ, рдЬрд┐рд╕рдХреА рдЕрднреА рддрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдореВрд▓ рд╕рдВрд╕реНрдХрд░рдг рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдирд╣реАрдВ рд╣реБрдИ рд╣реИ (рдЬреИрд╕реЗ рдмреВрд╕реНрдЯ рдорд╛рдирдХ рд╕реА ++ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд▓рд┐рдП рд╣реИ)ред

рдореИрдВ @zvirja рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ, рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрд╣реБрдд рдбрд░рд╛рдиреЗ рд╡рд╛рд▓реА рд╣реИред рдореИрдВрдиреЗ рд▓рдЧрднрдЧ рджреЛ рд╕рд╛рд▓ рдкрд╣рд▓реЗ AutoFixture рдХреА рдЦреЛрдЬ рдХреА рд╣реИ рдФрд░ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдореБрдЭреЗ PR рдЬрдорд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рд╛рд╣рд╕ рдорд┐рд▓рд╛ рд╣реИред
рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдХреБрдЫ рдФрд░ рднреА рд╣реИрдВ рдЬреЛ рдРрд╕рд╛ рд╣реА рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВред рдЬреЛ рд▓реЛрдЧ рдЗрд╕ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдлрд▓рддреЗ-рдлреВрд▓рддреЗ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдХрдорд░реЗ рдореЗрдВ рд╣рд╛рдереА рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП @aivascu рдзрдиреНрдпрд╡рд╛рджред

рдореИрдВ рдЖрдкрдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкрд╛рд╕ рдЪреМрдерд╛ рд╡рд┐рдХрд▓реНрдк рднреА рд╣реЛрдЧрд╛ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдЗрд╕рд╕реЗ рдирдлрд░рдд рд╣реЛрдЧреА): рдПрдХ рдирдпрд╛ рдХрд╛рдВрдЯрд╛ рдЬреЛ рдЕрдкрдиреЗ рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдХреЛ рдШреВрдордиреЗ рдФрд░ рдЧрдбрд╝рдмрдбрд╝ рдХрд░рдиреЗ рдХреА рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рджреЗрддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореЗрд░рд╛ рдирд╛рдо рд╕реВрдЪреА рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореИрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдЖрдВрддрд░рд┐рдХ рдХреЗ рд╕рд╛рде рдЗрддрдирд╛ рдЕрдиреБрднрд╡реА рдирд╣реАрдВ рд╣реВрдВ рдФрд░ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдЦреБрдж рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрднрд╡ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ рддреЛ рдореИрдВ рд╕рд╣рд░реНрд╖ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ...

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЙрддреНрд╕рд╛рд╣ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╛рдпреЛрдЬрди/рд╕рдорд░реНрдердХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ?
рдпрд╣ рдЖрдЦрд┐рд░рдХрд╛рд░ рдПрдХ рд▓реЛрдХрдкреНрд░рд┐рдп рд░реЗрдкреЛ рд╣реИред

рдореЗрд░реЗ рджреЛ рд╕реЗрдВрдЯ рдкрд┐рдЫрд▓реЗ рддреАрди рд╡рд░реНрд╖реЛрдВ рдореЗрдВ AutoFixture рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ:

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ AutoFixture рдХрд╛ рдмреНрд░рд╛рдВрдб рдирд╛рдо рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИред рдорд╕реНрдд рдирд╛рдо рд╣реИред

рдпрд╣ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдкрд░ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИред [autofixture] рдореЗрдВ 506 рдкреНрд░рд╢реНрди рд╣реИрдВ, рдЬрдмрдХрд┐ [xunit.net] рдореЗрдВ 801 рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП .NET рдХреЛрд░ рдХреЗ рдЕрд░реНрдз-рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкрд░реАрдХреНрд╖рдг рдврд╛рдВрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рдЧрднрдЧ рдЙрддрдирд╛ рд╣реА рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реЛрдирд╛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ, рдФрд░ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдорд╛рд░реНрдХ рдХреЗ рдЕрдердХ рд╕рдорд░реНрдкрдг рдХреЗ рдХрд╛рд░рдг рдкрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП (рдФрд░ рдПрдХ рдорд╣рд╛рди рд╢рд┐рдХреНрд╖рдХ рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ)ред рдФрд░ рдорд╛рд░реНрдХ рдХрд╛ рдмреНрд▓реЙрдЧ рдореБрдлреНрдд рдкрд░реАрдХреНрд╖рдг рдЬреНрдЮрд╛рди рдХреЗ рдлрд╡реНрд╡рд╛рд░реЗ рдХреА рддрд░рд╣ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдСрдЯреЛрдлрд┐рдХреНрдЪрд░ рдХрд╛ рдПрдкреАрдЖрдИ рд╕реАрдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред

AutoFixture рдХреЗ рднрд╛рдЧ рдЬреЛ рдореБрдЭреЗ рдкрд╕рдВрдж рд╣реИрдВ:

  • рдСрдЯреЛ-рдореЙрдХрд┐рдВрдЧ рдХрдВрдЯреЗрдирд░ рдбрд┐рдЬрд╝рд╛рдЗрди рдкреИрдЯрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ (рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдкрд░реАрдХреНрд╖рдг рдЕрд╡рдзрд╛рд░рдгрд╛ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдПрдХ рдЗрдВрдЬреАрдирд┐рдпрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкреЗрд╢ рдХрд┐рдпрд╛ рд╣реИ)ред
  • Fixture.Freeze рдЕрджреНрднреБрдд рд╣реИ
  • AutoMoq рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд▓реНрджреА рд╕реЗ рдЬреБрдбрд╝рдирд╛рд░ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдирдХрд▓реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
  • рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЗрдХрд╛рдИ рдСрдмреНрдЬреЗрдХреНрдЯ рдЧреНрд░рд╛рдлрд╝ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдФрд░ рдореЗрд░реЗ рд╕рд╛рдорд╛рдиреНрдп рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдкреИрдЯрд░реНрди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдФрд░ рдореЗрд░реЗ рдПрдВрдЯрд┐рдЯреА рдлреНрд░реЗрдорд╡рд░реНрдХ рднрдВрдбрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдВрдб-рдЯреВ-рдПрдВрдб рдПрдХреАрдХрд░рдг рдкрд░реАрдХреНрд╖рдг рдХреЛрдб рдХрд╡рд░реЗрдЬ рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред

AutoFixture рдХреЗ рднрд╛рдЧ рдЬрд┐рдирдХрд╛ рдореИрдВ рд╕реАрдзреЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛:

  • рд╕реНрдерд┐рд░рддрд╛ред рдЗрдВрдЬреЗрдХреНрдЯ

AutoFixture рдХреЗ рд╡реЗ рднрд╛рдЧ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдмреЗрд╣рддрд░/рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛/рдЪрд╛рд╣рддреА рд╣реВрдВ

  • рдХрд▓ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдореЗрд░рд╛ рдореБрджреНрджрд╛ рджреЗрдЦреЗрдВ: #1179
  • рд╡рдлрд╝рд▓ рдЯреЗрдХреНрд╕реНрдЯ рдЬреЗрдирд░реЗрдЯрд░ рдЬреИрд╕реЗ рдХреБрдЫ рдЕрдЪреНрдЫреЗ рдХреЗ рд╕рд╛рде рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд▓рд┐рдП рдЧрд╛рдЗрдбреНрд╕ рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕реНрд╡реИрдк рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдЖрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ #1179 рдкрд░ рдХрд╛рдо рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рд╣рдо рдХрд╕реНрдЯрдо рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд╕рд╛рде рдордирдорд╛рдиреА рддрддреНрд╡ рдкрд┐рдХрд░реНрд╕ рдореЗрдВ рдкреНрд▓рдЧ рдЗрди рдХрд░ рд╕рдХрддреЗ рдереЗред
  • AutoFixture рдзреАрдорд╛ рд╣реИ, рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕рдВрдХрд▓рди рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдЖрдзреБрдирд┐рдХ рддрд░рдХреАрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдореИрдХреНрд╕рд┐рдо рд╡реЛрд▓реНрдХрд╛рдЙ рдХреА рдбреНрд░рд╛рдИрдЖрдИрдУрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореИрдХреНрд╕рд┐рдо рдХреЗ FastExpressionCompiler рдХреЗ рд╕рд╛рде рдХрд░рддреА рд╣реИ https://github.com/dadhi/FastExpressionCompiler

AutoFixture рдХреЗ рднрд╛рдЧ рдЬреЛ рдореБрдЭреЗ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИрдВ (рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдореВрд▓реА):

  • рд╕реНрдерд┐рд░рддрд╛ред рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░реЗрдВрд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдЗрдВрдЯреЗрд▓рд┐рдЬреЗрдВрд╕ рдХреЗ рд╕рд╛рде рд╣рдореЗрд╢рд╛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
  • рдЕрдиреБрдХреВрд▓рди рд▓рд┐рдЦрдирд╛, рдФрд░ рдХреНрдпреЛрдВ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░реЗрдВ рд╡рд┐рдзрд┐ рдЖрдкрдХреЛ рдЕрдиреБрдХреВрд▓рди рдХреЛ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддреА рд╣реИред рдЙрд╕ рддрд░рд╣ рдХрд╛ рд╕рд╛рдорд╛рди рдмрд╛рд░реЛрдХ рдФрд░ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИ рдФрд░ рд╕реАрдЦрдиреЗ рдХреА рдПрдХ рдмрдбрд╝реА рдЕрд╡рд╕реНрдерд╛ рдмрдирд╛рддрд╛ рд╣реИред
  • рдЕрдиреБрдХреВрд▓рди рдФрд░ рдирдореВрдирд╛ рдирд┐рд░реНрдорд╛рддрд╛ рдФрд░ рдЪреАрдЬреЗрдВ рд╣рд░ рдЬрдЧрд╣ рд╣реИрдВред рдпрд╣ рдЕрд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реИред
  • рдХреБрдЫ рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдЬреАрдм рд╢рдмреНрджрд╛рд╡рд▓реА
  • рд╕рдВрдкреВрд░реНрдг Do..Without рдбрд┐рдЬрд╝рд╛рдЗрди рдкреИрдЯрд░реНрди рдХреА рдЖрджрдд рдбрд╛рд▓рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд░реНрдмреЛрдЬрд╝ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдкреБрдирд░рд╛рд╡рд░реНрддреА рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ рд╕рд╛рде рдорджрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЙрд╕рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рдмрдирд╛рдИ рдЧрдИ рд╡рд╕реНрддреБрдУрдВ рдХреА рд╣реИрд╢ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП AutoFixture рдХреЛ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
  • рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рд░рд▓реАрдХреГрдд рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдирд╣реАрдВ
  • рдореЛрдиреЛрд▓рд┐рдерд┐рдХ рдбрд┐рдЬрд╝рд╛рдЗрди рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдВрддрд░рд┐рдХ рдХреА рдЧрд╣рд░реА рд╕рдордЭ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЖрдк рдХреЗрд╡рд▓ рдмрд┐рдЯреНрд╕ рдФрд░ рдЯреБрдХрдбрд╝реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдЖрдкрдХреЛ рд╢реБрд░реБрдЖрддреА рд╕реАрдЦрдиреЗ рдХреА рдЕрд╡рд╕реНрдерд╛ рдХреЛ рдкрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рд░реНрдХ рдХреЗ рдкреНрд▓реБрд░рд▓рд╕рд╛рдЗрдЯ рдХреЛрд░реНрд╕ рдХреЛ рдмрд╣реБрдд рдЬреНрдпрд╛рджрд╛ рджреЗрдЦрдирд╛ рд╣реЛрдЧрд╛, рдпрд╛ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдСрдЯреЛрдлрд┐рдХреНрд╕реНрдЪрд░ рдореЗрдВ рдПрдХ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╣реИ, рддрд╛рдХрд┐ рдпрд╣ рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛ рд╕рдХреЗ рдХрд┐ рдСрдЯреЛрдлрд┐рдХреНрд╕реНрдЪрд░ рдЗрддрдирд╛ рднрдпрд╛рдирдХ рдХреНрдпреЛрдВ рд╣реИред
  • рдорд╛рд░реНрдХ рдХрд╛ рдпрд╣ рд░реБрдЦ рдХрд┐ AutoFixture рдХреЛ рдХреЗрд╡рд▓ "рдЧреБрдордирд╛рдо рдорд╛рди" рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдХрд╛рдо рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рддреГрддреАрдп-рдкрдХреНрд╖ рдХреЛрдб рд▓реЗрдЦрди рдмрдирд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдкреЛрд╕реНрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

рдЬрд┐рди рд╣рд┐рд╕реНрд╕реЛрдВ рдореЗрдВ рдореБрдЭреЗ рдирд╡рд╛рдЪрд╛рд░ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реА рд╣реИ:

  • рдЪреВрдВрдХрд┐ рд╕реА # рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ (рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди, рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рдХрд╛рд░, рдЖрджрд┐) рдмрди рдЬрд╛рддрд╛ рд╣реИ, рдСрдЯреЛрдлрд┐рдХреНрдЪрд░ рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдПрдл # рдореЗрдВ рдПрдлрдПрд╕рдЪреЗрдХ рдФрд░ рд╣реЗрдЬрд╣реЛрдЧ рдХреА рддрд░рд╣ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред
  • рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ AutoFixture Arb рд╕реБрд╡рд┐рдзрд╛ рдХреА рддрд░рд╣, FsCheck рд╕реЗ рдХреБрдЫ рд╢рдВрдХреНрд╡рд╛рдХрд╛рд░ рдкрд░реАрдХреНрд╖рдг рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рд╕реБрдзрд╛рд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред
  • рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХреЛ рд╕реБрдкрд░ рдордЬрдмреВрдд, рд╡рд┐рд╡рд┐рдз рдкрд░реАрдХреНрд╖рдг рдЗрдирдкреБрдЯ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП RLCheck рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рддрд░рд╣ рдирд╡рд╛рдЪрд╛рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ (рдЧрд╛рдЗрдб рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдПрдХ рд╣реИрдХ рд╣реИ!) https://www.carolemieux.com/rlcheck_preprint.pdf

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрд┐рди рдореБрджреНрджреЛрдВ рдХреА рдореИрдВ рдпрд╣рд╛рдВ рд░реВрдкрд░реЗрдЦрд╛ рджреЗ рд░рд╣рд╛ рд╣реВрдВ рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ рд╣реИрдВ рдХрд┐ Microsoft .NET рдХреЛрд░ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдХрд┐рд╕реА рднреА рдкрд░реАрдХреНрд╖рдг рдореЗрдВ AutoFixture рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдХрд╛рдВрдЯрд╛ рдЬрд╛рдиреЗ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред AutoFixture рдЙрди рдХреБрдЫ рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ рд╕реЗ рд╣реИ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд░реЛрдЬрдорд░реНрд░рд╛ рдХреЗ рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╣реИрдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреНрд╖рдорддрд╛рдУрдВ рдФрд░ рдмреЗрд╣рддрд░ рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рд▓рд╛рдн рдЙрдард╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рдХреЗ рдкреАрдЫреЗ рдПрдХ рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓рд╛ рдХреЛрдбрдмреЗрд╕ рд╣реИред рдореИрдВ рдХрд▓реНрдкрдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХрд┐ рдмреНрдпрд╛рдЬ рдХрдо рд╣реЛрдЧрд╛ рдпрджрд┐ рдпреЛрдЧрджрд╛рди рдФрд░ рджрд┐рд╢рд╛ рдмрджрд▓рдиреЗ рдкрд░ рдЪрд┐рдВрддрд╛рдУрдВ рдХреЛ рдХрдо рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЬреЛ рдПрдХ рд╕рдХреНрд░рд┐рдп рдХрд╛рдВрдЯрд╛ рдХрд░реЗрдЧрд╛ред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдХрд╛рдВрдЯрд╛ рдЬрд╛рдиреЗ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдЖрдк рдРрд╕рд╛ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реЛ? рдЖрдкрдХреЛ рд╡рд╣ рдХрд╛рдВрдЯрд╛ рдмрдирд╛рдП рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рдЖрдк рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рд╣реИрдВ, рддреЛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЗрд╕ рднрдВрдбрд╛рд░ рдХреЗ рдЕрдиреБрд░рдХреНрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрджрдо рдХреНрдпреЛрдВ рди рдЙрдард╛рдПрдВ?

рдПрдХ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдХрд╛рдВрдЯрд╛ рдХреЗ рдмрдЬрд╛рдп, рдореИрдВ рдКрдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдХреНрдпреВрдУрдПрд▓ рд╕реБрдзрд╛рд░реЛрдВ рдХреЛ рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рд░реЗрдкреЛ (рдпрд╛ рдЗрд╕ рдкрд░ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛) рдмрдирд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВред

AutoFixture рдореЗрдВ рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА API рд╣реИ рдЬреЛ рдмрд╣реБрдд рдХреБрдЫ рд╣рд╛рд╕рд┐рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдбрд░рд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рдЪреАрдЬреЛрдВ рдХреЛ рд╕рд╛рдзрд╛рд░рдг рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рдЪреАрдиреА рдХреЗ рд░реВрдк рдореЗрдВ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

QoL рд╕реБрдзрд╛рд░ рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП

рд░реЗрдирд╛рдЯреЛ ( @Kralizek ), QoL рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИ? рдЬреАрд╡рди рд╕реНрддрд░?

рд╣рд╛рдВред

рдпрджрд┐ рдЖрдк рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рд╣реИрдВ, рддреЛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЗрд╕ рднрдВрдбрд╛рд░ рдХреЗ рдЕрдиреБрд░рдХреНрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрджрдо рдХреНрдпреЛрдВ рди рдЙрдард╛рдПрдВ?

@ploeh рднрдВрдбрд╛рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрд░рдХреНрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХреИрд╕реЗ рдХрджрдо рдмрдврд╝рд╛рддрд╛ рд╣реИ? рдХреНрдпрд╛ рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд╣реИрдВ?
рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реВрдЪреА рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рдХрд╣реВрдВ рддреЛ, рдХреБрдЫ рдмрдбрд╝реЗ рдЬреВрддреЗ рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрдВред
рдореИрдВ рдСрдЯреЛрдлрд┐рдХреНрдЪрд░ рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд╢рд╛рдпрдж рдПрдХ рд░рдЦрд░рдЦрд╛рд╡ (рдПрдХ рджрд┐рди) рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдФрд░ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдЕрдиреНрдп рднреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЛрдИ рднреА рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рдЗрд╕ рд▓реЛрдХрдкреНрд░рд┐рдп рднрдВрдбрд╛рд░ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЖрдк рдРрд╕рд╛ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реЛ? рдЖрдкрдХреЛ рд╡рд╣ рдХрд╛рдВрдЯрд╛ рдмрдирд╛рдП рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред

рдореИрдВ рдЙрд╕ рдмреЛрд▓реА рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред рдЬрдм рдореИрдВрдиреЗ рд╢реБрд░реВ рдореЗрдВ рдПрдХ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдкреИрдХреЗрдЬ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рдпрд╛ рдерд╛, рддреЛ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ, рдореИрдВ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП @zvirja рдХреЗ рдореБрджреНрджреЛрдВ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ред рдкреИрдХреЗрдЬ рдореЗрдВ AutoFixture рдХреЛрд░ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдирд┐рд░реНрдорд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реЛрдВрдЧреА, рди рдХрд┐ рдПрдХ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд╛рдВрдЯрд╛ред рдХреБрдЫ рдРрд╕рд╛ рдЬреЛ @Kralizek рдиреЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рд╣реИред
рдмреЗрд╢рдХ, рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреИрдХреЗрдЬ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рддрдХрдиреАрдХреА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрдЬрд╛рдп рд▓реЛрдЧреЛрдВ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рддрдХрдиреАрдХреА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрдЬрд╛рдп рд▓реЛрдЧреЛрдВ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИред рд╣рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рдмрддрд╛рдПрдБред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рддрдХрдиреАрдХреА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрдЬрд╛рдп рд▓реЛрдЧреЛрдВ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИред рд╣рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рдмрддрд╛рдПрдБред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрдирдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ AutoFixture рдХреЛ рдкреНрд░рддрд┐рдмрджреНрдз рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдХрд▓рд╛ рдХреЗ рдПрдХ рд╕реБрдВрджрд░ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдирд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рдбрд░ рдХреЗ рдмрд┐рдирд╛ рдирд╡рд╛рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ, рдЬреИрд╕рд╛ рдХрд┐ @zvirja рдиреЗ рдЕрдкрдиреА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдХрд╣рд╛ рдерд╛ред

рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдорд╣рд╕реВрд╕ рдХрд░рдирд╛ рдХрдард┐рди рд╣реИ рдЬрд╣рд╛рдБ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рд╣рд╛рде рдкрд┐рдЫрд▓реЗ рдирд┐рд░реНрдгрдпреЛрдВ рдФрд░ рдиреЗрддреГрддреНрд╡ рджреНрд╡рд╛рд░рд╛ рдбрд╛рд▓реА рдЧрдИ рдЫрд╛рдпрд╛ рд╕реЗ рдмрдВрдзреЗ рд╣реИрдВред

рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдареБрдХрд░рд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ "рдкреБрд░рд╛рдиреЗ рддрд░реАрдХреЛрдВ" рдХреЗ рд╡рд┐рд░реЛрдз рдореЗрдВ рдереЗред рдпрд╣ рдХрд┐рд╕реА рдХреА рдкреНрд░реЗрд░рдгрд╛ рдХреЛ рдорд╛рд░ рджреЗрдЧрд╛ред рдЙрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдПрдХ рдХрд╛рдВрдЯрд╛ рдЗрд╕ рд╕рд╛рдорд╛рди рдХрд╛ рдмрд╣реБрдд рдХреБрдЫ рдореБрдХреНрдд рдХрд░ рджреЗрдЧрд╛ред

рдареАрдХ рд╣реИ, рдореИрдВ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЖрджрдореА рд╣реВрдБ, рдореБрдЭреЗ рдмрд╕ https://github.com/AutoFixture/AutoFixture/pull/928 рдЬреИрд╕реЗ рд╕рд╛рдорд╛рди рдХрд╛ рд╡рд┐рд▓рдп рдХрд░рдирд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ, AutoFixture рдХреЗ рдкрд╛рд╕ рдЕрджреНрд╡рд┐рддреАрдп рдорд╛рди рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рдЕрдЪреНрдЫреЗ рддрд░реАрдХреЗ рдирд╣реАрдВ рд╣реИрдВред рдЧреБрдгрдХ рд░реИрдЦрд┐рдХ рд╕рд░реНрд╡рд╛рдВрдЧрд╕рдо рдЬрдирд░реЗрдЯрд░ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫреЗ рдЖрдзрд╛рд░ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред рд╣рдордиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЕрдкрдирд╛ рд▓рд┐рдЦрд╛ рдерд╛ рдФрд░ рдЗрд╕ рдЪрд╛рд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд╛рд▓рд╛рдХ рдирд╣реАрдВ рдерд╛, рдФрд░ рдореБрдЭреЗ рдХреЗрд╡рд▓ рдмрд╛рдж рдореЗрдВ рдкреАрдЖрд░ рдорд┐рд▓рд╛ред

рдореБрдЭреЗ рдкрд╕рдВрдж рд╣реИ, "рд╣рд╛рдБ, рдЪрд▓реЛ рдЗрд╕ рдмрдврд╝рд┐рдпрд╛ рд╕рд╛рдорд╛рди рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдХрд░рддреЗ рд╣реИрдВред"

рднрдВрдбрд╛рд░ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░рдХреНрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЛрдИ рдХреИрд╕реЗ рдХрджрдо рдмрдврд╝рд╛рддрд╛ рд╣реИ?

рдЖрдк рдореВрд▓ рд░реВрдк рд╕реЗ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЙрд╕ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХреЛ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВред рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдореИрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА рднрдВрдбрд╛рд░ рдХреЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЕрдзрд┐рдХрд╛рд░ рд╣реИрдВ, рдФрд░ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХрд┐рд╕реА рднреА рдореМрдЬреВрджрд╛ рд░рдЦрд░рдЦрд╛рд╡ рдиреЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ рдирд╣реАрдВ рдХрд╣рд╛ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдЗрд╕реЗ рдЖрдЧреЗ рдирд╣реАрдВ рд▓реЗ рдЬрд╛рдПрдЧрд╛ред

рдХреНрдпрд╛ рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд╣реИрдВ? рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реВрдЪреА рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рдХрд╣реВрдВ рддреЛ, рдХреБрдЫ рдмрдбрд╝реЗ рдЬреВрддреЗ рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрдВред

рдЕрддреАрдд рдХреА рдЪрд┐рдВрддрд╛ рдордд рдХрд░реЛред рдЕрднреА, рдЕрдЧрд░ рдореИрдВ рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкрдврд╝реВрдВ, рддреЛ рдкрд╛рдиреА рдореЗрдВ AutoFixture рдорд░ рдЪреБрдХрд╛ рд╣реИред рдЬрдм рддрдХ рдХреЛрдИ рдЗрд╕реЗ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рдирд╣реАрдВ рдХрд░рддрд╛, рддрдм рддрдХ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрдк рджреБрдирд┐рдпрд╛ рдореЗрдВ рд╕рднреА рдЧрд▓рддрд┐рдпрд╛рдБ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЖрдк рд╢рд╛рдпрдж рд╣реА рдЪреАрдЬреЛрдВ рдХреЛ рдмрджрддрд░ рдмрдирд╛ рдкрд╛рдПрдВрдЧреЗред

@ploeh рдЕрдЧрд░ рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд░рдЦрддреЗ рд╣реИрдВ рддреЛ рдореБрдЭреЗ рдПрдХ рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдХрджрдо рдЙрдард╛рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреА рдФрд░ рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЕрдиреНрдп рднреА рдХрджрдо рдЙрдард╛рдПрдВрдЧреЗред

@aivascu рдзрдиреНрдпрд╡рд╛рдж, рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИред

рдореИрдВ рдЗрд╕ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рд░рдЦрд░рдЦрд╛рд╡ рдФрд░ рд╣реИрдВрдЧрдЕрд░рд╛рдЙрдВрдб @zvirja , @moodmosaic , @adamchester , @ecampidoglio рдХреЛ рд▓рдЧрднрдЧ 24 рдШрдВрдЯреЗ рджреВрдВрдЧрд╛, рдФрд░ рдпрджрд┐ рдореБрдЭреЗ рдХреЛрдИ рд╡рд┐рд░реЛрдз рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдЖрдкрдХреЛ рдЕрдиреБрд░рдХреНрд╖рдХ рдЕрдзрд┐рдХрд╛рд░ рджреВрдВрдЧрд╛ред

@ploeh рдореЗрд░реА рддрд░рдл рд╕реЗ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВред
@aivascu рдмреЛрд░реНрдб рдкрд░ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЖрдкрдХреЛ рд╡рд╣ рдордЬрд╝рд╛ рджреЗрдЧреА рдЬрд┐рд╕рдХреА рдЖрдк рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ

@aivascu рдореИрдВ рдПрдХ рдЕрдиреБрд░рдХреНрд╖рдХ рдирд╣реАрдВ рд╣реВрдВ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд╕рдВрдж рд╣реИред рдЕрдЧрд░ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЙрдЫрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдХреА рдЬрд░реВрд░рдд рд╣реИ рддреЛ рдмрд╕ рдореБрдЭреЗ рдкрд┐рдВрдЧ рдХрд░реЗрдВред

@ploeh , @aivascu , рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдареАрдХ: +1:: рд░реЙрдХреЗрдЯ:

рдореБрдЭреЗ рдХреЛрдб-рдмреЗрд╕ рдХреЗ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИ рдЬрд╣рд╛рдВ рдореИрдВрдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рдмрдирд╛рдпрд╛ рд╣реИ, рдпрд╛ рдпреЛрдЧрджрд╛рди рджрд┐рдпрд╛ рд╣реИред рдЕрдЧрд░ рдореБрдЭреЗ рдкреБрд▓ рдЕрдиреБрд░реЛрдз (рдпрд╛ рдХреЛрдИ рдореБрджреНрджрд╛) рдпрд╛рдж рдЖрдпрд╛ рдЬрд╣рд╛рдВ рдореЗрд░рд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВред

@aivascu рдЖрдкрдХреЛ рдореЗрд░реА рд╢реБрднрдХрд╛рдордирд╛рдПрдВред рдореЗрд░реА рдПрдХрдорд╛рддреНрд░ рд╕рд▓рд╛рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдХреЛрдбрдмреЗрд╕ рдореЗрдВ рдХреЛрдб рдХреА рдкреНрд░рддреНрдпреЗрдХ 20,000 рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ 6 рдорд╣реАрдиреЗ рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдЕрдЧрд░ рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ "рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдирд┐рд░реНрдгрдп рд░рд┐рдХреЙрд░реНрдб" рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ, рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдкрд░, рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рддрд╛рдХрд┐ рд▓реЛрдЧ рдХреЛрдб рдХреА "рд╢реИрд▓реА" рдХреЛ рд╕рдордЭ рд╕рдХреЗрдВред рдорд╛рд░реНрдХ рдиреЗ рдЗрдиреНрд╣реЗрдВ рд▓рд┐рдЦрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреНрдпрд╛рджрд╛рддрд░ рдЕрдкрдиреЗ рдмреНрд▓реЙрдЧ рдФрд░/рдпрд╛ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдкрд░ред @moodmosaic рдиреЗ рдРрд╕рд╛ рд╣реА рдХрд┐рдпрд╛ рд╣реИред рдореИрдВ рдХрд╣реВрдВрдЧрд╛, рдЖрдЧреЗ рдЬрд╛рдХрд░, рд░реЗрдкреЛ рд░реВрдЯ рдореЗрдВ adr рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдВ рдЬреЛ рдХрд┐рд╕реА рднреА рдбрд┐рдЬрд╝рд╛рдЗрди рддрд░реНрдХ рдХреЛ рджрд╕реНрддрд╛рд╡реЗрдЬ рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЙрд╕рдХреЗ рд▓рд┐рдП .md рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЬрдЯрд┐рд▓ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рдорд╛рд░реНрдХрдбрд╛рдЙрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рдмрдЬрд╛рдп html рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдЧрд░реНрдордЬреЛрд╢реА рд╕реЗ рд╕реНрд╡рд╛рдЧрдд рдХреЗ рд▓рд┐рдП рдЖрдк рд╕рднреА рдХрд╛ рдзрдиреНрдпрд╡рд╛рджред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдореИрдВ @jzabroski рд╕реЗ рд╕рд▓рд╛рд╣ рд▓реЗрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдирдП рд░рдЦрд░рдЦрд╛рд╡ рдФрд░ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рдСрди-рдмреЛрд░реНрдбрд┐рдВрдЧ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рдЕрдВрддрд░рд╛рд▓ рдХреЛ рднрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреВрдВрдЧрд╛ред
рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рд╢рд╛рдпрдж рдореИрдВ рдореМрдЬреВрджрд╛ рдмреИрдХрд▓реЙрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд▓рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред
рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЗрд╕ рдЕрджреНрднреБрдд рдЙрдкрдХрд░рдг рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рд╕рдореБрджрд╛рдп рдХреЗ рд╕рджрд╕реНрдп рдЖрдЧреЗ рдЖрдПрдВрдЧреЗред

рдмрдзрд╛рдИ рд╣реЛ @aivascuред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдм рдЖрдк рдкреНрд░рдореБрдЦ рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВред рдореИрдВ рдпрд╣ рдЗрд╕рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЪреАрдЬреЗрдВ рд╡рд╛рдкрд╕ 'рдореГрдд' рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЪрд▓реА рдЬрд╛рдПрдВрдЧреА, рдЬреИрд╕реЗ рд╣реА рдЖрдк рд░реБрдХреЗрдВрдЧреЗ - рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЕрдм рдЖрдкрдХреЛ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ :)

рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдСрдЯреЛрдлрд┐рдХреНрд╕реНрдЪрд░ рдЯреАрдо рдкрд╣рд▓реЗ рдмрддрд╛рдП рдЧрдП рдЕрдХреЗрд▓реЗ рдпрд╛рддреНрд░рд╛ рдХреЗ рдореБрджреНрджреЗ рдХреЗ рдЬреЛрдЦрд┐рдо рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП рдЯреАрдо рдХреЗ рд╕рджрд╕реНрдпреЛрдВ рдХреЛ 'рд╢рд┐рдХрд╛рд░' рдХрд░рддреА рд╣реИред рдореБрдЭреЗ рдХреЗрд╡рд▓ рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИ, рдЕрдЧрд░ рдХреЛрдИ рдЗрд╕ https://github.com/AutoFixture/AutoFixture/pull/1164 рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддрд╛ рд╣реИред

@aivascu рдореИрдВрдиреЗ рдЖрдкрдХреЛ AutoFixture рдХреА рдХреЛрд░ рдЯреАрдо рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдордВрддреНрд░рдг рднреЗрдЬрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдордВрддреНрд░рдг рдЕрднреА рднреА рд▓рдВрдмрд┐рдд рд╣реИред

@ploeh рдореИрдВрдиреЗ рдЕрднреА рдирд┐рдордВрддреНрд░рдг рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИред рдЖрдкрдХреЛ рдзрдиреНрдпрд╡рд╛рдж!

@aivascu рдЯреАрдо рдореЗрдВ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред

рдЕрдЧрд░ рдореИрдВ рдЖрдкрдХреА рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреБрдЫ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ, рддреЛ рдореБрдЭреЗ рдЦреБрд╢реА рд╣реЛрдЧреАред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд░рд╣рд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдЕрдм рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреЛрдИ рднреА рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рд╛рдордЧреНрд░реА рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ @zvirja рдЖрдкрдХреЛ рдЙрди рд╡рд┐рд╡рд░рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЖрдкрдХреЛ рдзрдиреНрдпрд╡рд╛рдж!

рд╕реНрд╡рд╛рдЧрдд рд╣реИ @aivascu

@aivascu рдореБрдЭреЗ рдЖрдкрдХреЛ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред рдЕрдЧрд░ рдЖрдкрдХреЛ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реИ рддреЛ рдореБрдЭреЗ рдЖрдкрдХреЗ рд╕рд╛рде рдПрдХ рдЖрд╡рд╛рдЬ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдЦреБрд╢реА рд╣реЛрдЧреА, рдЗрд╕рд▓рд┐рдП рдореИрдВ рд╕рдм рдХреБрдЫ рджрд┐рдЦрд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рджреЗ рд╕рдХрддрд╛ рд╣реВрдВред рдпрджрд┐ рдЖрдк рдЗрд╕рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдПрдХ рдореЗрд▓ рд▓рд┐рдЦреЗрдВ (рдЖрдк рдХрдорд┐рдЯ рдореЗрдВ рдкрддрд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ) рддрд╛рдХрд┐ рд╣рдо рд╡рд┐рд╡рд░рдг рдкрд░ рд╕рд╣рдордд рд╣реЛ рд╕рдХреЗрдВред

рдФрд░ рдлрд┐рд░ рд╕реЗ рд╕реНрд╡рд╛рдЧрдд рд╣реИред

@zvirja рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рдореИрдВ рдЖрдкрдХреЛ рдПрдХ рдИрдореЗрд▓ рдЫреЛрдбрд╝ рджреВрдВрдЧрд╛ред

рд╕реНрд╡рд╛рдЧрдд рд╣реИ @aivascu :+1 :

рдЬрд╣рд╛рдЬ рдкрд░ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ, @aivascu! рдореИрдВ

@aivascu рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреБрдиреВрди рдФрд░ рдКрд░реНрдЬрд╛ рд╕реЗ рднрд░реЗ рдПрдХ рдирдП рдЕрдиреБрд░рдХреНрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрджрдо рд░рдЦрд╛, рдХреНрдпрд╛ рд╣рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдФрд░ рдЕрдирдкрд┐рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рдпрд╣ рдХрд╣рдирд╛ рдХрд┐ рдЕрднреА рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░рд╛ рднрд╡рд┐рд╖реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реИ? рдореИрдВ

@zvirja рдореИрдВ рдереЛрдбрд╝реЗ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдХреЛрдИ рдФрд░ рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рд░реИрдВрдХ рдХреЛ рднрд░рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ

рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд╣ рдЗрд╕ рднрдВрдбрд╛рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрд░рдХреНрд╖рдХ рд╣реЛрдиреЗ рдХрд╛ рдЖрдирдВрдж рд▓реЗ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдПрдХ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВ рдпрд╛ рд╣рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╢ рдЫреЛрдбрд╝ рджреЗрдВред
рдореИрдВ рдЕрдм рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░ рджреВрдВрдЧрд╛ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕