From db9405332f25568df66a335077edeeb23fcdc727 Mon Sep 17 00:00:00 2001 From: Softonik Date: Thu, 27 Jun 2024 04:46:14 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=BE:=20=D0=BA=D0=BE=D0=B3=D0=B4=D0=B0=20=D1=81=D0=B4?= =?UTF-8?q?=D0=B5=D0=BB=D0=B0=D1=82=D1=8C=20(=D0=BF=D0=BE=D0=BA=D0=B0=20?= =?UTF-8?q?=D1=82=D0=BE=D0=BB=D1=8C=D0=BA=D0=BE=20=D0=B4=D0=BB=D1=8F=20?= =?UTF-8?q?=D0=9E=D0=9F=D0=A1)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/schet/celi.go | 1 + pkg/schet/features/app.feature | 4 +++- pkg/schet/init_test.go | 1 + pkg/schet/schet.go | 7 +++++++ pkg/schet/schet_test.go | 10 ++++++++++ 5 files changed, 22 insertions(+), 1 deletion(-) diff --git a/pkg/schet/celi.go b/pkg/schet/celi.go index 60bb9ce..b0fe018 100644 --- a/pkg/schet/celi.go +++ b/pkg/schet/celi.go @@ -10,6 +10,7 @@ const ( ЦельУСН = "УСН" КБК_ОПС = "18210202000011000160" + КогдаСделать_ОПС = "до конца квартала" СрокУплаты_ОПС_префикс = "9.01." ) diff --git a/pkg/schet/features/app.feature b/pkg/schet/features/app.feature index 347bd7f..88a350d 100644 --- a/pkg/schet/features/app.feature +++ b/pkg/schet/features/app.feature @@ -140,9 +140,10 @@ То Цель "УСН" за 3 квартал достигнута: "-" То Цель "УСН" за 4 квартал достигнута: "-" - Сценарий: Параметры ОПС: КБК и срок уплаты + Сценарий: Параметры ОПС: КБК, когда сделать и срок уплаты Дано Год: 2024 То КБК "ОПС": "18210202000011000160" + То Когда сделать "ОПС": "до конца квартала" То Срок уплаты "ОПС": "9.01.2025" Сценарий: Параметры неизвестного: КБК и срок уплаты @@ -150,4 +151,5 @@ Дано Квартал: 1 Дано Должна быть ошибка То КБК "неизвестного": "" + То Когда сделать "неизвестного": "" То Срок уплаты "неизвестного": "" diff --git a/pkg/schet/init_test.go b/pkg/schet/init_test.go index 08f3696..3110f7b 100644 --- a/pkg/schet/init_test.go +++ b/pkg/schet/init_test.go @@ -33,6 +33,7 @@ func InitializeScenario(ctx *godog.ScenarioContext) { ctx.Step(`^Действие: "([^"]*)" за (\d+) квартал$`, действиеЗаКвартал) ctx.Step(`^Цель "([^"]*)" за (\d+) квартал достигнута: "([^"]*)"$`, цельЗаКварталДостигнута) ctx.Step(`^КБК "([^"]*)": "([^"]*)"$`, кБК) + ctx.Step(`^Когда сделать "([^"]*)": "([^"]*)"$`, когдаСделать) ctx.Step(`^Срок уплаты "([^"]*)": "([^"]*)"$`, срокУплаты) // ----------------------- diff --git a/pkg/schet/schet.go b/pkg/schet/schet.go index e3bf99a..c7f3b21 100644 --- a/pkg/schet/schet.go +++ b/pkg/schet/schet.go @@ -123,6 +123,13 @@ func (g *Год) КБК(цель string) (string, error) { return "", ErrНеизвестнаяЦель } +func (g *Год) КогдаСделать(цель string) (string, error) { + switch цель { + case ЦельОПС: + return КогдаСделать_ОПС, nil + } + return "", ErrНеизвестнаяЦель +} func (g *Год) СрокУплаты(цель string) (string, error) { switch цель { case ЦельОПС: diff --git a/pkg/schet/schet_test.go b/pkg/schet/schet_test.go index 0d1b90a..2bb1d85 100644 --- a/pkg/schet/schet_test.go +++ b/pkg/schet/schet_test.go @@ -133,6 +133,16 @@ func кБК(цель, кбк string) { Ω(k).To(Be(кбк), "кбк: "+цель) } +func когдаСделать(цель, время string) { + d, err := t.g.КогдаСделать(цель) + if t.должнаБытьОшибка { + Err(err) + } else { + Ok(err) + } + + Ω(d).To(Be(время), "когдаСделать: "+цель) +} func срокУплаты(цель, дата string) { d, err := t.g.СрокУплаты(цель) if t.должнаБытьОшибка {