※この翻訳ドキュメントはスクリプトによって出力・同期されています。内容が怪しそうな場合はGitHubにissueを追加したり英語の原文の確認をお願いします。

assert_arrays_equal と assert_arrays_not_equal インターフェイス

このページではassert_arrays_equalassert_arrays_not_equal関数の各インターフェイスについて説明します。

各インターフェイスの概要

assert_arrays_equal関数のインターフェイスは2つの配列の値が一致していることをチェックします。逆にassert_arrays_not_equal関数は2つの配列の値が一致していないことをチェックします。

関連資料

基本的な使い方

assert_arrays_equalassert_arrays_not_equalのインターフェイスは共にleftrightという2つの引数を必要とします。msg引数は省略可です。

引数にはPythonビルトインのlistの値もしくはapyscのArrayの値を指定することができます。

以下のコードで例ではassert_arrays_equal関数を使って値が一致していることを確認しています:

import apysc as ap

stage: ap.Stage = ap.Stage(
    stage_width=0,
    stage_height=0,
    background_color=ap.Color("#333"),
    stage_elem_id="stage",
)

arr_1: ap.Array = ap.Array([1, 2, 3])
ap.assert_arrays_equal(left=[1, 2, 3], right=arr_1, msg="Values are not equal!")

ap.save_overall_html(dest_dir_path="assert_arrays_equal_basic_usage_1/")
[assert_arrays_equal]
Left value: [1, 2, 3] right value: arr_2

以下のコード例ではassert_arrays_equal関数を使って値が一致しておらずチェックが失敗していることを確認しています。

import apysc as ap

stage: ap.Stage = ap.Stage(
    stage_width=0,
    stage_height=0,
    background_color=ap.Color("#333"),
    stage_elem_id="stage",
)

arr_1: ap.Array = ap.Array([1, 2, 3])
ap.assert_arrays_equal(left=[1, 2], right=arr_1, msg="Values are not equal!")

ap.save_overall_html(dest_dir_path="assert_arrays_equal_basic_usage_2/")
[assert_arrays_equal]
Left value: [1, 2] right value: arr_2
...
Assertion failed: Values are not equal!

以下のコード例ではassert_arrays_not_equal関数を使って値が一致していないためチェックを通っていることを確認しています:

import apysc as ap

stage: ap.Stage = ap.Stage(
    stage_width=0,
    stage_height=0,
    background_color=ap.Color("#333"),
    stage_elem_id="stage",
)

arr_1: ap.Array = ap.Array([1, 2, 3])
ap.assert_arrays_not_equal(left=[1, 2], right=arr_1, msg="Values are equal!")

ap.save_overall_html(dest_dir_path="assert_arrays_not_equal_basic_usage_1/")

assert_equal と assert_not_equal の各インターフェイスにおける特記事項

もしもassert_equalもしくはassert_not_equalのインターフェイスにArrayの値が指定された場合、自動的にそれらのインターフェイスの代わりにassert_arrays_equalassert_arrays_not_equalのインターフェイスが使用されます。

import apysc as ap

stage: ap.Stage = ap.Stage(
    stage_width=0,
    stage_height=0,
    background_color=ap.Color("#333"),
    stage_elem_id="stage",
)

arr_1: ap.Array = ap.Array([1, 2, 3, 4, 5])
ap.assert_equal(left=[1, 2, 3, 4, 5], right=arr_1, msg="Values are equal!")

ap.save_overall_html(dest_dir_path="assert_arrays_equal_notes_for_the_assert_equal/")
[assert_arrays_equal]
Left value: [1, 2, 3, 4, 5] right value: arr_2

assert_arrays_equal API

特記事項: このAPIドキュメントはドキュメントビルド用のスクリプトによって自動で生成・同期されています。そのためもしかしたらこの節の内容は前節までの内容と重複している場合があります。

[インターフェイスの構造] assert_arrays_equal(left: Any, right: Any, *, msg: str = '', outer_frames_index_adjustment: int = 0) -> None


[インターフェイス概要]

配列の値の等値条件のためのJavaScript上のアサーションのインターフェイスです。


[引数]

  • left: *

    • 比較用の左辺の値。

  • right: *

    • 比較用の右辺の値。

  • msg: str, optional

    • チェックに失敗した際に表示するメッセージ。

  • outer_frames_index_adjustment: int, optional

    • trace関数の関数外の参照するフレームのインデックスの調整値です。この引数は呼び出し元の情報の位置を調整するのに使用されます。また、この引数は内部のロジックでのみ使用されるため通常は設定する必要はありません。


[特記事項]

このインターフェイスはArrayクラスの値の比較時にはassert_equalインターフェイスの代わりに使用されます(JavaScript上ではPythonのリストのように直接配列の比較が行えないため代わりにこのインターフェイスが使用されます)。


[コードサンプル]

>>> import apysc as ap
>>> _ = ap.Stage()
>>> arr_1: ap.Array = ap.Array([1, 2, 3])
>>> arr_2: ap.Array = ap.Array([1, 2, 3])
>>> ap.assert_arrays_equal(arr_1, arr_2)

assert_arrays_not_equal API

特記事項: このAPIドキュメントはドキュメントビルド用のスクリプトによって自動で生成・同期されています。そのためもしかしたらこの節の内容は前節までの内容と重複している場合があります。

[インターフェイスの構造] assert_arrays_not_equal(left: Any, right: Any, *, msg: str = '', outer_frames_index_adjustment: int = 0) -> None


[インターフェイス概要]

配列の値の非等値条件のためのJavaScript上のアサーションのインターフェイスです。


[引数]

  • left: *

    • 比較用の左辺の値。

  • right: *

    • 比較用の右辺の値。

  • msg: str, optional

    • チェックに失敗した際に表示するメッセージ。

  • outer_frames_index_adjustment: int, optional

    • trace関数の関数外の参照するフレームのインデックスの調整値です。この引数は呼び出し元の情報の位置を調整するのに使用されます。また、この引数は内部のロジックでのみ使用されるため通常は設定する必要はありません。


[特記事項]

このインターフェイスはArrayクラスの値の比較時にはassert_not_equalインターフェイスの代わりに使用されます(JavaScript上ではPythonのリストのように直接配列の比較が行えないため代わりにこのインターフェイスが使用されます)。


[コードサンプル]

>>> import apysc as ap
>>> _ = ap.Stage()
>>> arr_1: ap.Array = ap.Array([1, 2, 3])
>>> arr_2: ap.Array = ap.Array([4, 5, 6])
>>> ap.assert_arrays_not_equal(arr_1, arr_2)