Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

cli: Make example tests smarter

オープン
#328 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
35/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
go
領域
cli, testing

調査の方向性

まず、make examples で使用されるサンプル定義と、.static および .out ファイルを調べます。現在サンプルの出力がどのように比較されているかを確認し、そのうえで、最新の height、block hash、epoch などの動的フィールドを除外しても、残りの出力は引き続きチェックされ、一致するサンプルでは .out ファイルが再生成されないことを検証します。

索引モデルが issue の本文から書いたものです。

説明

ci tests

We have way too much .static examples meaning the output is not actually tested inside CI. I suggest we get rid of using .static for content that changes often and try to make a "smarter" diff.

For example, recent regression caused that ParaTime names got lost:

$ oasis network status
=== NETWORK STATUS ===
Network:      localhost_testnet
Node's ID:    5MsgQwijUlpH9+0Hbyors5jwmx7tTmKMA4c9leV3prI=
Core version: 24.3

==== Consensus ====
Status:               syncing
Version:              7.0.0
Chain context:        0b91b8e4e44b2003a7c5e23ddadb5e14ef5345c0ebcb3ddcae07fa2f244cab76
Latest height:        24115729 (2024-11-28 08:29:38 +0100 CET)
Latest block hash:    b7a9ad2fe687b9b2887512b03707347b0ec743020a175bc45c09979e3cc90d82
Latest epoch:         40176
Is validator:         false
Registration:         false

==== ParaTimes ====
  Status:               waiting for consensus sync
  Latest round:         7933058 (2024-11-28 08:29:38 +0100 CET)
  Last finalized round: 18446744073709551615
  Storage status:       initializing
  Number of peers:      23
  Status:               waiting for consensus sync
  Latest round:         8930789 (2024-11-28 08:29:38 +0100 CET)
  Last finalized round: 18446744073709551615
  Storage status:       initializing
  Number of peers:      22
  Status:               waiting for consensus sync
  Latest round:         9219372 (2024-11-28 08:29:38 +0100 CET)
  Last finalized round: 18446744073709551615
  Storage status:       initializing
  Number of peers:      23

We should ignore the latest height, block hash and epoch in this case, but still test everything else.

Perhaps a kind of a regex "mask" per example that should define how the output should look like. So when you run "make examples" and the regex is matched, then don't generate the new .out files.

主要言語
Go
スター
80
フォーク
23
平均マージ
9時間 43分
マージ済み PR(30日)
3

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

oasisprotocol/cli のほかの issue

oasisprotocol/cli の issue をすべて見る

似ている issue

Go の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。