技術
GASを使用していて、雑にエラーハンドリングしたい時に自作例外をthrowして、ハンドリングしたいと思いました。 今回の記事は、JavaScript・GAS・TypeScriptで自作例外を作成します。 環境 GAS 2022/01/27 TypeScript 4.4.2 CodeSandboxで検証 コード 自作例…
同一のパラメータでメソッド呼び出しを行っている。しかし、呼び出した回数によって返却値を変更したい。 そのようなユースケースを満たすために素振りしました。 環境 Ruby 3.0.2p107 Rails 6.0.3.7 RSpec ユースケース 時刻は常に、Time.nowで取得している…
Rubyのメソッドよくわからないものが多いので、素振りします。 今回の記事では、テストの時間を固定するためのヘルパークラスであるActiveSupport::Testing::TimeHelpersを理解するために素振りしました。 ※ Rubyのバージョンによっては、時刻固定後に戻す必…
タイトルのとおり、MySQLのSQLで変数が使えないか検証したときのメモです。 基本的に変数を使おうとすると、PL/SQLの記事に誘導されてしまうことが多かったです。しかし、素のSQLで変数を使用した検索するための記事があるとうれしいため、この記事を残しま…
小ネタ。 Fork元のソースコードとの差分を吸収して、Fork元に追いつく方法を探していましたが、CLIでの方法しかヒットしませんでした。GitHubの画面上で操作するだけでFork元に追いつく方法は知っていましたが、どこを操作すればいいかわからなかったので、…
GitHub Codespacesで使用していた環境が壊れたのか、次のエラーが発生しました。 error: cannot lock ref 'refs/remotes/origin/master': unable to resolve reference 'refs/remotes/origin/master': reference broken From https://github.com/hirotoKirim…
セレクタで検索してヒットしたDOMすべてに対して操作をするという方法はわかりませんでした。 今回の記事では、複数件のDOMにヒットするセレクタを使用したうえで、ヒットしたDOMに対してイベントを操作できるようにします。 環境 PlayWright 1.17 ゴール 複…
Dockerを使用するとローカルに暗号化したUNIXパスワードのハッシュで必要なPython等を導入する必要がありません。 今回の記事では、Pythonのスクリプトで暗号化したUNIXパスワードのハッシュを簡単に作る方法を記します。 なお、このハッシュを作る方法は正…
以前、法律に従った暦上の計算方法を記事にし、Javaでも同様の記事を作成しました。 当記事ではRubyで法律に従った暦による期間の計算を求める方法を記します。 環境 Ruby 3.0.2p107 Rails 6.0.3.7 RSpec 対応 テストデータとロジックに関してはJavaと同じで…
小ネタ。プロセスを殺し切れずに残ってしまうことがよくあるので、コマンドを残します。 このコマンドは、ゾンビ化した開発サーバのプロセスがポートを握ったままになり、新しく開発サーバを起動できないときに使用します。 今回の記事では、ゾンビ化した開…
Springで開発していると、別のコンポーネントだが、同一のクラス名を作りたくなることがあります。この同名クラスをDIしない場合は、特に問題は発生しません。しかし、同一クラス名をDIしてしまうと、BeanDifinitionStoreExceptionが発生してしまいます。 こ…
Rubyのメソッドよくわからないものが多いので、素振りします。 今回の記事では、tapメソッドとthenメソッドを理解するために素振りしました。なお、私はJavaをメインとしたエンジニアのため、Javaに置き換えた記載もあります。ご了承ください。 環境 Ruby 3.…
2021年になってGitHub Actions等のCIを使ったSonarCloud連携がしやすくなったので、手順を纏めます。 今回の記事では、JaCoCoでカバレッジを取得して、コードをSonarCloudへ連携できることをゴールとします。 環境 Java 11 JaCoCo SonarQube 3.3 Gradle 7.0.…
Google スプレッドシートで管理していた障害管理表を元に、フィルタ機能で自分が担当した障害をフィルタしていました。そのまま原因分析をしようとしたところ、自分の担当した件数以上にデータを取得してしまいました。 画面のフィルタを活かす、またはフィ…
パラメータの値を元に、PythonのEnumで定義した値を取得するメソッドを作ろうとしました。しかし、PythonのEnumの知識が弱かったため、事前に定義していたEnumをすべて取得できない事象が発生しました。 この記事では、PythonのEnumの仕様を確認して、Enumで…
※ 泥臭いやり方でしか実践できていません。 JavaのLINEオープンチャットにて、「配列内部の特定条件のみ変換したい」という質問がありました。 今後、同様の質問が来たときにスマートな回答ができるようにいくつか検証したメモを残します。なお冒頭にも書い…
SpringBootで実際に起動してあるDBを使ったユニットテストをしようとすると、デフォルトだと動かないようです。 正確にはEmbeddedDataSourceBeanFactoryPostProcessor(ログだと長すぎるのでbeddedDataSourceBeanFactoryPostProcessorとして表示される)やEm…
Pytestでコマンドのオプションからパラメータを渡すことができないか調べたときのメモ。似た記事はたくさんありますので、詳しいことは参考情報を見てください。 環境 Python 3.8.10 pytest 6.2.4 ゴール Pytestのコマンドオプションからパラメータを渡し、…
Javaだと面倒だったリフレクションがRubyだと簡単にできてしまったので、メモします。 もっと詳しく書いている記事はありますので、私の記事はメモレベルです。 環境 GitHub Codespaces Ruby 3.0 RSpec 対応 準備 適当なクラスを用意します。今回の記事では…
副業先でdocker-compose up -dをすると、なぜか次のエラーが発生しました。 standard_init_linux.go:228: exec user process caused: no such file or directory ERROR: 1 原因としては、DockerfileのENTRYPOINTであったシェルの改行コードがCRLFになってい…
小ネタ。 環境 Java 16 SpringBoot 2.4.5 概要 設定ファイルの値を取得したい場合は、TestContextからApplicationContext、Environmentを経由してgetProperty(String key)で取得できます。 testContext .getApplicationContext() .getEnvironment() .getProp…
この記事では、JavaのSpringBootを使って、APIからファイルをダウンロードする機能の実装メモを残します。ResponseBodyがないため、@Controllerでも、@RestControllerのどちらで定義しても構いません。 クラウドを使用している場合はAWSであれば、S3で保存し…
公式ヘルプに設定方法は載っているので、この記事で知れることは「Playwrightで動画を撮影できる」というのがこの記事の最大の目玉です。 環境 Playwright 1.12.1 対応 new_contextのパラメータにビデオ用のディレクトリを設定するだけです。new_contextして…
この記事はAssertクラスを紹介するだけの小ネタです。 Springには、Assertクラスという簡単にValidationしてくれるようなクラスがあります。複雑なことはできませんが、サクっとメソッドのパラメータを検証したい時は便利です。なお、複雑なことをしたければ…
掲題のとおり、Google Cloud PlatformのAssociate Cloud Engineerを受験し、合格したので合格記を記します。 前提 GCPの業務経験なし App EngineとCloud Firestoreを使用したSlackAppは作成経験あり AZ-900は所持 AWS CLFは所持 合格日 2021年10月01日(土)…
弊社ではモックサーバにWiremockを使用しています。 この記事ではWiremockを知ってもらうきっかけを提供することを目的としています。詳しいことは他の方の記事を参考にした方が良いでしょう。 ゴール WiremockのモックサーバでJUnitでテストする Wiremockの…
以前、Javaで不安定なテスト(flakyなテスト)をリトライさせるライブラリを素振りしました。今回の記事はPython版です。 Pytestの公式ページにてFlakyなテストに対する解決策となるライブラリを複数提示されており、その中でもGitHubのStar数が一番多かった…
※ もっといいやり方があれば教えてください。 この記事では、Ansibleでエラーメッセージをカスタマイズするやり方を記します。 正確な表現としては異なるので、あくまで「したい」です。 環境 Ansible 2.11.5 ゴール 処理失敗時に、目的のエラーメッセージを…
普段Javaで使っている感覚と同じように、Pythonでもプロパティファイルを扱いたかったため、調べた記事です。 環境 Python 3.8.10 ゴール 設定ファイル(.ini)をコード内で読み込めるようにする 読み込んだ設定ファイルを他クラスからも簡単に扱えるように…
小ネタ。 Jestを使って、異なるテストデータで同じ内容のテストを行うParameterizedTestをやろうとしたときのメモ。なお、JestではParameterizedTestという名称では表現されていません。 なお、使い方自体は参考情報に乗せている公式を見てください。 環境 J…