Sinon: "рдПрдкреАрдЖрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛" рд╢реИрд▓реА рдкреНрд░рд▓реЗрдЦрди

рдХреЛ рдирд┐рд░реНрдорд┐рдд 2 рдЕрдкреНрд░реИрд▓ 2019  ┬╖  14рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: sinonjs/sinon

рдЬрд╛рд╡рд╛ (рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХрд╛ рд╕реНрд╡рд░реНрдг рдорд╛рдирдХ), рдпрд╛ jQuery рдореЗрдВ рдЖрдк рдЬреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рдЙрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдореБрдЭреЗ рд╕рд┐рдиреЙрди рдХреЗ рд▓рд┐рдП рдПрдкреАрдЖрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рд╢реИрд▓реА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рджреЗрдЦрдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред

рдЧреИрд░-рд╕рдВрд╡рд╛рджрд╛рддреНрдордХ рддрд░реАрдХреЗ рд╕реЗ рд▓рд┐рдЦреА рдЧрдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдПрдХ AZ рд╡рд░реНрдгрд╛рдиреБрдХреНрд░рдорд┐рдХ рд╕реВрдЪреА (рдЬреЛ рдХрд┐ рд╡рд░реНрддрдорд╛рди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг _is_ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреИрд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ) рдЗрд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

Documentation Help wanted Needs investigation hacktoberfest pinned

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

@lucasfcosta

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

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

рдореИрдВ JSDoc рдХрд╛ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ JSDoc рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХреЗ рд▓рд┐рдП рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реЛрдЧрд╛ред

рдЗрд╕ рдкрд░ рдХреБрдЫ рд╕рдмреВрддреЛрдВ рдХреЗ рдпреЛрдЧрджрд╛рди рдХреЗ рд▓рд┐рдП, @ fatso83 , рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕ рд╕рдордп рдереЛрдбрд╝рд╛ рд╕рд╛ рд╕рдордп рд╣реИ (рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдХреМрди рдирд╣реАрдВ рд╣реИ?), рд▓реЗрдХрд┐рди рдореИрдВ рдмрд╛рдж рдореЗрдВ рд╡рд░реНрд╖ рдореЗрдВ рдмреЗрд╣рддрд░ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ . рд╕рд┐рдиреЙрди рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реАрдЦрдиреЗ рдХрд╛ рдпрд╣ рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рд╣реЛрдЧрд╛ред

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

рд╡реИрд╕реЗ, рдореИрдВ рд╡рд░реНрддрдорд╛рди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджреЗ рд░рд╣рд╛ рд╣реВрдБ, рдЬреЛ рдореВрд▓реНрдпрд╡рд╛рди рд╣реИред рдореИрдВ рдХреЗрд╡рд▓ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд, рд╡реНрдпрд╛рдкрдХ рдмрд╛рдд рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд░рд╣рд╛ рд╣реВрдВред

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

рд╣рдо рдХреЛрдб рдПрдиреЛрдЯреЗрд╢рди рдФрд░ рдереЛрдбрд╝рд╛ рдЯреВрд▓рд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдЗрдХрд╢реЗрдб рдХрд░ рд╕рдХрддреЗ рдереЗред рд╢рд╛рдпрдж рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╡рд┐рдХрд▓реНрдк рд╣реИрдВред

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

@mantoni JSDocs рдХреЛ рдСрдЯреЛ-рдЬреЗрдирд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЯреВрд▓ рд╣реИрдВред рдореБрдЭреЗ рдЗрд╕рдХрд╛ рдХреЛрдИ v1 рдореБрджреНрджрд╛ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИред рдЖрдкрдХреЛ рд╣рд░ рдЬрдЧрд╣ @typedef s рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдмрд╕ рд╣реЛ рд░рд╣рд╛ рд╣реИ

/**
  <strong i="8">@param</strong> {String} [foo] optional string
  <strong i="9">@example</strong> Create foo instance
       var foo = dooFoo('somestring') 
*/ 

рдХрд╛рдлреА рдорджрдж рдХрд░реЗрдЧрд╛ред

рд╣рд╛рдп @ 76784 , рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдЗрдирдкреБрдЯ рд╣реИ! ЁЯШК

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореБрдЭреЗ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рд╣реИрдВред

рдореБрдЭреЗ JSDoc рдмрд╣реБрдд рдкрд╕рдВрдж рд╣реИред рдпрд╣реА рд╡рд╣ рд╣реИ рдЬреЛ рд╣рдо Chai.js рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЕрдм рддрдХ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЪреАрдЬреЛрдВ рдХреЛ рдирд╛рдорд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдЕрд▓рдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдХреЛрдб рдХреЛ рд╣рдореЗрд╢рд╛ рдбреЙрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдареАрдХ рдмрдЧрд▓ рдореЗрдВ рд╣реИрдВред

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

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ JSDocs рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрддреНрдпрдВрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рдпрд╛рд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рдЕрдЧрд░ @ 76784 рдПрдХ рд╢рд╛рдЦрд╛ рд╢реБрд░реВ рдХрд░реЗрдЧрд╛ рдФрд░ рдХреБрдЫ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рдкреЗрд╢ рдХрд░реЗрдЧрд╛, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдЖрдХрд░реНрд╖рд┐рдд рдХреБрдЫ рд▓реЛрдЧ рдЬрд▓реНрджреА рд╕реЗ рдЗрд╕реЗ

@lucasfcosta

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

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

рдореИрдВ JSDoc рдХрд╛ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ JSDoc рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХреЗ рд▓рд┐рдП рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реЛрдЧрд╛ред

рдЗрд╕ рдкрд░ рдХреБрдЫ рд╕рдмреВрддреЛрдВ рдХреЗ рдпреЛрдЧрджрд╛рди рдХреЗ рд▓рд┐рдП, @ fatso83 , рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕ рд╕рдордп рдереЛрдбрд╝рд╛ рд╕рд╛ рд╕рдордп рд╣реИ (рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдХреМрди рдирд╣реАрдВ рд╣реИ?), рд▓реЗрдХрд┐рди рдореИрдВ рдмрд╛рдж рдореЗрдВ рд╡рд░реНрд╖ рдореЗрдВ рдмреЗрд╣рддрд░ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ . рд╕рд┐рдиреЙрди рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реАрдЦрдиреЗ рдХрд╛ рдпрд╣ рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рд╣реЛрдЧрд╛ред

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

рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкрд┐рди рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдмрд╛рд╕реА рдмреЙрдЯ рджреНрд╡рд╛рд░рд╛ рдмрдВрдж рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдЕрдЧрд░ рд╣рдо рдЗрд╕ рд╕рдбрд╝рдХ рд╕реЗ рдиреАрдЪреЗ рдЬрд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ https://github.com/gajus/eslint-plugin-jsdoc рдЬреИрд╕реЗ рдХреБрдЫ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ... рдирд┐рдпрдореЛрдВ рдХреЛ рд╢рд╛рдпрдж eslint-config-sinon рдореЗрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕рдореЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдЧреЛрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ - рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рдХрд╛рд░реНрдп рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рд╣реИред рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣ рд╕рд╣реА рдзрд╛рдЧрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореМрдЬреВрджрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬ рдкрд░ рдХреБрдЫ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП ...

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЬрд╛рд╕реВрд╕реЛрдВ рдХреА рддрд░рд╣ рдХреБрдЫ рджреЗрдЦрддрд╛ рд╣реВрдВ: https://sinonjs.org/releases/v7.4.1/spies/

рдореИрдВ рдореЛрдЪрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЬрд┐рд╕рдХрд╛ рдкрд╣рд▓реЗ рдЦрдВрдб рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рдПрдХ рдЕрд▓рдЧ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИред

"test should call subscribers on publish": function () {
    var callback = sinon.spy();
    PubSub.subscribe("message", callback);

    PubSub.publishSync("message");

    assertTrue(callback.called);
}

рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рдЬреЛ рдХреБрдЫ рднреА рд╣реИ (рдЬреИрд╕реНрдореАрди?) рдХреЗ рдмрдЬрд╛рдп рдореЛрдЪрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдХреЛрдИ рдмрдбрд╝реА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ ред рд╡реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдорд╛рди рд╣реИрдВред рд▓реЗрдХрд┐рди рдЬреЛ рдмрд╛рдд рдЙрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╕рдордЭрдиреЗ рдореЗрдВ рдХрдард┐рди рдмрдирд╛рддреА рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдЙрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд╣реАрдВ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдРрд╕рд╛ рдХреБрдЫ рд╣реИ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдРрд╕рд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдкрд░реАрдХреНрд╖рдг рдХреА рдЬрд╛ рд░рд╣реА рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреА рдиреНрдпреВрдирддрдо рдХрд╛рд░реНрдпрд╢реАрд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рджрд┐рдЦрд╛рдПрдВред myLib рд╕рд╛рде рдпрд╣рд╛рдБ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ: https://sinonjs.org/releases/v7.4.1/fake-xhr-and-server/

рдореИрдВ рд╕рдордЭ рдЧрдпрд╛ - myLib рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рд▓рд┐рдЦреВрдВрдЧрд╛ред рд▓реЗрдХрд┐рди рдЖрдк рдмрд╣реБрдд рд╕реЗ рдиреМрд╕рд┐рдЦрд┐рдпрд╛ рд╕реЗ рдЗрд╕ рд╕рд╛рдорд╛рди рдХреЛ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рдХрд┐рд╕реА рднреА рдЪреАрдЬ рдХреЗ рдЦрд┐рд▓рд╛рдл рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВред

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

рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдЕрдиреНрдп рдмрд┐рдВрджреБрдУрдВ рдХрд╛ рд╕рдВрдмрдВрдз рд╣реИ, рдпреЗ рдХрд╛рдлреА рдорд╛рдиреНрдп рд╣реИрдВ, рдФрд░ рдЬрд┐рди рдкрд░ рд╣рдордиреЗ рдЪрд░реНрдЪрд╛ рдХреАред рджрд░рдЕрд╕рд▓, рд╣рдордиреЗ рдЪрд▓рдиреЗ рдпреЛрдЧреНрдп, рдкрд░реАрдХреНрд╖рдг, рдПрдореНрдмреЗрдбреЗрдб рдЙрджрд╛рд╣рд░рдг, рд╡реИрдзрддрд╛ рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗрдиреЗ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреАред рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрди рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд░ рджреЗрдЧрд╛ред рд▓реЗрдХрд┐рди рд╣рд╛рдБ, рдХрд┐рд╕реА рдХреЛ рдмреИрдардиреЗ рдФрд░ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ...

рдЕрд╕рд▓ рдореЗрдВ рд╡рд╣ рдкрд░реАрдХреНрд╖рдг рдореЛрдЪрд╛ рдХреЗ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ

рдХреНрдпрд╛?? рдЕрдм рдореБрдЭреЗ рдореЛрдЪрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╢реЗрдЦреА рдмрдШрд╛рд░рдирд╛ рд╣реЛрдЧрд╛ред :-)

рдореИрдВрдиреЗ рдЗрд╕ рдкреНрд░рдпрд╛рд╕ рдХреЛ https://github.com/sinonjs/samsam/pull/82 рдореЗрдВ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ

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

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

sudhirbits picture sudhirbits  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

brettz9 picture brettz9  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

NathanHazout picture NathanHazout  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ljian3377 picture ljian3377  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

fearphage picture fearphage  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ