Widget-Rahmen: Widgets sind Beschreibungen, keine Kaesten in der Seite
widgetAnmelden({ id, titel, wo, sichtbar, laden, leer, inhalt, takt }) —
der Rahmen macht daraus ein Fenster in der Spalte (Terminal) oder ein
Schild (Desktop), kennt lädt/fertig/nichts da/Fehler und haelt den
Nachladetakt. Benutzer, Wetter und Systemzustand sind umgestellt; aus
index.html sind vier feste Kaesten verschwunden und aus dem Raster die
Einzelplaetze.
Zwei Dinge, die erst dabei sichtbar wurden:
- Der Server meldete 'kein Ort eingestellt' und 'Dienst nicht
erreichbar' beide als 204. Ein Ausfall sah damit aus wie ein
abgeschaltetes Widget. Ausfall ist jetzt 502, mit Test.
- Die Reihenfolge haengt nicht mehr an der Modulauswertung: Seit
glyphs.js seine Raster mit await auf oberster Ebene laedt, laufen
Module ohne Symbole vorher durch — der Systemzustand stand deshalb
ueber dem Benutzer. widgetsOrdnen() macht die Reihenfolge zur Angabe,
und genau dort haengt spaeter die im Server gespeicherte ein.
This commit is contained in:
1 parent
981a2331df
commit
b7cc06b7c1
12 files changed
+461
-180
No files matched your search
@@ -46,6 +46,27 @@ func TestMitOrtKommtDasWetter(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// Ist ein Ort eingestellt und der Dienst fällt aus, ist das etwas anderes als
|
||||
// „nichts eingestellt": Es gibt etwas zu zeigen, es kommt nur gerade nicht. Die
|
||||
// Oberfläche unterscheidet das — 204 verschwindet still, 502 sagt „nicht
|
||||
// erreichbar". Beides als 204 zu melden hiess: Ein Ausfall sah aus wie ein
|
||||
// abgeschaltetes Widget.
|
||||
func TestAusfallIstNichtDasselbeWieNichts(t *testing.T) {
|
||||
s := newTestServer(t, "")
|
||||
s.wetter = weather.KaputtFuerTest(t)
|
||||
if err := s.store.SetSettings(store.LocalSub, map[string]string{
|
||||
"weatherCity": "Köln", "weatherLat": "50.938", "weatherLon": "6.96",
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
rec := httptest.NewRecorder()
|
||||
s.routes().ServeHTTP(rec, httptest.NewRequest("GET", "/api/weather", nil))
|
||||
if rec.Code != http.StatusBadGateway {
|
||||
t.Fatalf("bei Ausfall erwartet 502, bekam %d", rec.Code)
|
||||
}
|
||||
}
|
||||
|
||||
// Der Streifen in der Leiste heisst .apps und blendet seine rechten 18 Pixel
|
||||
// mit einer Maske aus. Bekommt ein zweites Element dieselbe Klasse, erbt es die
|
||||
// Maske — die Schublade sah rechts aus, als loese sie sich auf, und in der
|
||||
|
||||
Reference in new issue
Block a user