表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
step4  作者: Parmesan
10/10

step8

package simplex.murataku.tddbc;


import org.junit.jupiter.api.Test;


import java.time.LocalDate;


import static org.junit.jupiter.api.Assertions.assertEquals;


class BusinessDateAdjusterTest {


@Test

void testNoAdjust() {

BusinessDateAdjuster adjuster = new BusinessDateAdjuster();

LocalDate date = LocalDate.of(2024, 12, 5); // 木曜日

assertEquals(date, adjuster.adjustDate(date, AdjustmentMethod.NO_ADJUST));

}


@Test

void testPreceding_noHolidays() {

BusinessDateAdjuster adjuster = new BusinessDateAdjuster();

LocalDate date = LocalDate.of(2024, 12, 2); // 月曜日

assertEquals(LocalDate.of(2024, 11, 29), // 金曜日

adjuster.adjustDate(date, AdjustmentMethod.PRECEDING));

}


@Test

void testFollowing_noHolidays() {

BusinessDateAdjuster adjuster = new BusinessDateAdjuster();

LocalDate date = LocalDate.of(2024, 12, 7); // 土曜日

assertEquals(LocalDate.of(2024, 12, 9), // 月曜日

adjuster.adjustDate(date, AdjustmentMethod.FOLLOWING));

}


@Test

void testPreceding_withHolidays() {

BusinessDateAdjuster adjuster = new BusinessDateAdjuster(

LocalDate.of(2024, 11, 29)); // 金曜日が祝日

LocalDate date = LocalDate.of(2024, 12, 2); // 月曜日

assertEquals(LocalDate.of(2024, 11, 28), // 木曜日

adjuster.adjustDate(date, AdjustmentMethod.PRECEDING));

}


@Test

void testFollowing_withHolidays() {

BusinessDateAdjuster adjuster = new BusinessDateAdjuster(

LocalDate.of(2024, 12, 9)); // 月曜日が祝日

LocalDate date = LocalDate.of(2024, 12, 7); // 土曜日

assertEquals(LocalDate.of(2024, 12, 10), // 火曜日

adjuster.adjustDate(date, AdjustmentMethod.FOLLOWING));

}


@Test

void testEdgeCase_weekendAndHoliday() {

BusinessDateAdjuster adjuster = new BusinessDateAdjuster(

LocalDate.of(2024, 12, 23)); // 月曜日が祝日

LocalDate date = LocalDate.of(2024, 12, 22); // 日曜日

assertEquals(LocalDate.of(2024, 12, 24), // 火曜日

adjuster.adjustDate(date, AdjustmentMethod.FOLLOWING));

}

}


評価をするにはログインしてください。
この作品をシェア
Twitter LINEで送る
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ