お知らせ
現在サイトのリニューアル作業中のため、全体的にページの表示が乱れています。
Env | Ver | Misc |
---|---|---|
golang | 1.16.4-alpine3.13 | DockerImage |
VSCode | 1.56.0 | |
golang.go | 0.24.2 | VSCode 拡張 |
Dockerfile
シェルが貧弱なので、ついでに好きなシェルも入れておくのが無難
FROM golang:1.16.4-alpine3.13
RUN apk add git gcc libc-dev
RUN go get golang.org/x/tools/gopls \
&& go get -u github.com/go-delve/delve/cmd/dlv
.vscode/settings.json
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch file",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "${workspaceFolder}/"
},
]
}
デバッグしようとして起きるエラーとか
上のサンプルコードを使っている限り起きないはず
gccを入れれば解決する
libc-devを入れれば解決する
docker-compose up -d
した時にコンテナを上げっぱなしにする方法
コンテナ内で開発したいときとかに使える
docker-compose.yaml
で上げっぱにしたいサービスにtty: true
を追加するだけ。これ以外だと落ちないプロセスを生やすくらいしかない
services:
foo:
tty: true
Windows 10
Env | Ver |
---|---|
Pandoc | 2.11.4 |
Java | 1.8.0_291 |
PlantUML | 1.2021.3 |
パス書式はMSYS2で流す前提
diagram-generator.lua
を落としてくるpandoc Foo.md --self-contained -s -c /c/pandoc/github.css --lua-filter=/c/pandoc/diagram-generator.lua --metadata=plantumlPath:"C:\pandoc\plantuml.jar" --metadata=javaPath:"C:\Program Files\Java\jre1.8.0_291\bin\java.exe" -o Foo.html
--self-contained
-s
-c
--lua-filter
--metadata=
基本出来ないのでwindow.location.href
を操作するためのラッパーを作って、それをjest.spyOn()
して解決する
理由はjsdomが対応していないため
global.navigator
をモックにする方法
jest
のモック機能はプロパティのモックが出来ないので、実オブジェクトを強制的に書き換えて実施するObject.defineProperty()
を利用して実装
value
, プロパティが返す値configurable
, 再定義可能かどうか、設定しないと再実行でコケるafterAll()
でnavigator.userAgent
を初期値に戻すのが望ましいObject.defineProperty(global.navigator, 'userAgent', {
value:
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36',
configurable: true,
});