問題タブ [elixir-mix]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unit-testing - Elixir で Mix Test を実行中に stderr を抑制する
アプリケーションでいくつかの外部プロセスを使用しています。テスト中、これらのいくつかの stderr 出力は、テスト メッセージと結果とインラインで出力されます。私がすることができます:
しかし、そうすると、私の素敵な色がすべて失われます。また、すべてではありませんが、いくつかの Elixir エラーがまだ表示されます (これは私にとっては問題ありません)。
ミックス出力に影響を与えることなく、外部プログラムのエラーを抑制するより良い方法はありますか? それは良い考えですか?
それとも、実際のコマンド ライン ユーティリティと実際に対話しないようにテストする必要がありますか? その時点で、私が何をテストしているのかが正直にわからなくなったので、私は尋ねます.
アップデート:
以下は、概念をよりよく説明するための単純化された関数とテストです。
関数:
テスト:
このテストは完全にパスします。ただし、テスト メッセージとインラインで出力しますiptables: No chain/target/match by that name.
。メッセージの正確な位置も予測できず、これらのメッセージがまとまると、テスト情報が非常に読みにくくなります。次に、stderr をリダイレクトすると、何らかの理由でカラーコーディングが失われ、テスト結果を追跡するのが難しくなります。
elixir - MIX_ENV が最初に「test」に設定されていなかった場合にのみ、テストとしてマークされた mix 依存関係をロードする
mix test
Elixir アプリケーション内でプログラムでタスクを実行したいと考えています。これは で実行できますがMix.Tasks.Test.run/1
、最初に環境変数を設定せずに実行しようとするとMIX_ENV
、タスクの実行が拒否されます。
でenvを設定できSystem.put_env/2
ますが、テストのみとしてマークされた依存関係で定義されたモジュールへの参照が見つかると、アプリケーションはクラッシュします。
この状況でこれらの依存関係を読み込むにはどうすればよいですか?
elixir - Should I use Mix.Utils in my elixir code?
I need to get a file by URL and store it on the local disk.
I see that Mix.Utils has:
Which seems to do exactly what I want, but is Mix.Utils only something you'd use for writing mix tasks and not for general problem solving?
testing - 動作が Application.get_env/3 に依存している場合、モジュールをテストするにはどうすればよいですか?
ディレクトリの内容に応じていくつかの関数を挿入するモジュールを使用してライブラリを作成しておりuse
、さまざまなディレクトリで動作をテストしたいと考えています。現在、アプリケーション構成を使用してディレクトリへのパスを取得していますApplication.get_env/3
。
ディレクトリを変更している場合Application.put_env/4
、これは有効なグローバル値であるため、テストを順番に実行する必要があることを意味しますよね?
への呼び出しをスタブアウトできますApplication.get_env/3
か? または、別の方法で値を渡す必要がありますか? use
(マクロ経由など)
elixir - 本番用と開発用の異なるベンダー ファイル
Phoenix 0.14.0 を使用しており、reactjs を使用してユーザー インターフェイスを作成する予定です。
私がこれを行っている方法は、単に react.min.js をweb/static/vendor
フォルダーに入れることです。問題は、デバッグ コードが含まれているため、開発時に非縮小版の react を代わりに使用することです。
react.min.js
縮小された app.js の最終的なサイズを使用すると、約 150K になり、最終的なサイズを使用react.js
すると 550K になりますが、これは無視できるほどの差ではないと思います。
実稼働用とフェニックスでの開発用に別の静的ファイルを使用する方法はありますか?
elixir - 特定のパッケージに依存するすべての hex パッケージを検索する方法はありますか?
comeonin に依存するすべての hex パッケージを検索したいのですが、可能でしょうか?