ความคืบหน้างาน ไฟล์ต้นฉบับ

tracker/templates/tests.html

{{define "content"}}
<header class="page-head">
  <h1>ผลตรวจ Test</h1>
  <p class="lede">ผลทดสอบแต่ละรอบ จัดเป็นหัวข้อตามเรื่องที่ตรวจ แต่ละข้อบอกเป็นประโยคว่าตรวจอะไร เลือกดูเฉพาะเรื่องของ BA หรือ Technical ได้</p>
</header>

{{if .Tests}}
<nav class="view-tabs" aria-label="เลือกกลุ่มผู้อ่าน">
  <a href="/tests"{{if eq .TestView ""}} aria-current="page"{{end}}>ทั้งหมด <span class="badge-plain">{{index .TestCounts ""}}</span></a>
  <a href="/tests?view=ba"{{if eq .TestView "ba"}} aria-current="page"{{end}}>สำหรับ BA <span class="badge-plain">{{index .TestCounts "ba"}}</span></a>
  <a href="/tests?view=tech"{{if eq .TestView "tech"}} aria-current="page"{{end}}>สำหรับ Technical <span class="badge-plain">{{index .TestCounts "tech"}}</span></a>
</nav>

{{range $i, $r := .TestRuns}}
<article class="run{{if .Failing}} is-failing{{end}}" id="{{.ID}}">
  <header class="run-head">
    <div class="run-title">
      {{if .Failing}}<span class="chip chip-fail">ไม่ผ่าน</span>{{else}}<span class="chip chip-pass">ผ่าน</span>{{end}}
      <h2>{{.Suite}}</h2>
    </div>
    <p class="run-meta">{{thaiDate .Date}}{{if .Shown}}, ผ่าน {{.Pass}} จาก {{add (add .Pass .Fail) .Skip}} ข้อ{{if .Fail}}, ไม่ผ่าน {{.Fail}} ข้อ{{end}}{{end}}</p>
  </header>
  {{if .Summary}}<p class="run-summary">{{.Summary}}</p>{{end}}

  {{if .Shown}}
  <details class="run-groups"{{if eq $i 0}} open{{end}}>
    <summary>{{len .Shown}} หัวข้อที่ตรวจ</summary>
    {{range .Shown}}
    <section class="tgroup">
      <div class="tgroup-head">
        <h3>{{.Name}}</h3>
        {{if .Audience}}<span class="aud aud-{{.Audience}}">{{audience .Audience}}</span>{{end}}
      </div>
      {{if .Purpose}}<p class="tgroup-purpose">{{.Purpose}}</p>{{end}}
      <ul class="checks">
        {{range .Cases}}
        <li class="check check-{{.Status}}">
          <span class="check-icon" aria-hidden="true"></span>
          <span class="check-text">{{.Name}}{{if .Detail}}<span class="check-detail">{{.Detail}}</span>{{end}}</span>
          <span class="sr">{{if eq .Status "pass"}}ผ่าน{{else if eq .Status "fail"}}ไม่ผ่าน{{else}}ข้าม{{end}}</span>
        </li>
        {{end}}
      </ul>
    </section>
    {{end}}
  </details>
  {{end}}

  {{if or .Command .Notes .Failures .Passed .Failed .Duration}}
  <details class="run-tech">
    <summary>สำหรับ Technical: คำสั่งและผลดิบ</summary>
    <dl class="tech-facts">
      {{if .Command}}<div><dt>คำสั่ง</dt><dd><code>{{.Command}}</code></dd></div>{{end}}
      <div><dt>ผลจากเครื่องมือทดสอบ</dt><dd>ผ่าน {{.Passed}}, ไม่ผ่าน {{.Failed}}, ข้าม {{.Skipped}}{{if .Duration}} ใช้เวลา {{.Duration}}{{end}}</dd></div>
      {{if .Notes}}<div><dt>หมายเหตุ</dt><dd>{{.Notes}}</dd></div>{{end}}
    </dl>
    {{if .Failures}}<ul class="fail-list">{{range .Failures}}<li>{{.}}</li>{{end}}</ul>{{end}}
  </details>
  {{end}}
</article>
{{else}}
<p class="empty">ไม่มีหัวข้อทดสอบสำหรับกลุ่มนี้ <a href="/tests">ดูทั้งหมด</a></p>
{{end}}
{{else}}
<p class="empty">ยังไม่มีผลทดสอบ เมื่อรันทดสอบแล้วให้เพิ่มผลใน <code>tracker/data/tests.json</code></p>
{{end}}
{{end}}