diff options
| author | Jeff Halter <868228+jhalter@users.noreply.github.com> | 2024-07-17 15:41:20 -0700 |
|---|---|---|
| committer | Jeff Halter <868228+jhalter@users.noreply.github.com> | 2024-07-17 15:42:37 -0700 |
| commit | fd740bc499ebc6d3a381479316f74cdc736d02de (patch) | |
| tree | e77563ce0997e51debaec75c9f7a053759ca3a0a /hotline/file_header_test.go | |
| parent | 80aed6b19ff0b0927670e459ce5cc7a16ef047ec (diff) | |
Extensive refactor, quality of life enhancements
* Added ability to reload config, agreement, news, and user accounts without restarting the server by sending SIGHUP to the running process
* Added ability to use modern unix or windows line breaks in Agreement.txt and MessageBoard.txt instead of classic MacOS `\r` breaks.
* Extensive refactor towards swappable backends for the active server state
* Extensive refactored towards making the hotline package generic and re-usable for alternate server implemenations
* Fix bug where users whose accounts have been deleted would not be disconnected
Diffstat (limited to 'hotline/file_header_test.go')
| -rw-r--r-- | hotline/file_header_test.go | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/hotline/file_header_test.go b/hotline/file_header_test.go deleted file mode 100644 index 308d6b9..0000000 --- a/hotline/file_header_test.go +++ /dev/null @@ -1,94 +0,0 @@ -package hotline - -import ( - "io" - "reflect" - "testing" -) - -func TestNewFileHeader(t *testing.T) { - type args struct { - fileName string - isDir bool - } - tests := []struct { - name string - args args - want FileHeader - }{ - { - name: "when path is file", - args: args{ - fileName: "foo", - isDir: false, - }, - want: FileHeader{ - Size: [2]byte{0x00, 0x0a}, - Type: [2]byte{0x00, 0x00}, - FilePath: EncodeFilePath("foo"), - }, - }, - { - name: "when path is dir", - args: args{ - fileName: "foo", - isDir: true, - }, - want: FileHeader{ - Size: [2]byte{0x00, 0x0a}, - Type: [2]byte{0x00, 0x01}, - FilePath: EncodeFilePath("foo"), - }, - }, - } - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - if got := NewFileHeader(tt.args.fileName, tt.args.isDir); !reflect.DeepEqual(got, tt.want) { - t.Errorf("NewFileHeader() = %v, want %v", got, tt.want) - } - }) - } -} - -func TestFileHeader_Payload(t *testing.T) { - type fields struct { - Size [2]byte - Type [2]byte - FilePath []byte - } - tests := []struct { - name string - fields fields - want []byte - }{ - { - name: "has expected payload bytes", - fields: fields{ - Size: [2]byte{0x00, 0x0a}, - Type: [2]byte{0x00, 0x00}, - FilePath: EncodeFilePath("foo"), - }, - want: []byte{ - 0x00, 0x0a, // total size - 0x00, 0x00, // type - 0x00, 0x01, // path item count - 0x00, 0x00, // path separator - 0x03, // pathName len - 0x66, 0x6f, 0x6f, // "foo" - }, - }, - } - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - fh := &FileHeader{ - Size: tt.fields.Size, - Type: tt.fields.Type, - FilePath: tt.fields.FilePath, - } - got, _ := io.ReadAll(fh) - if !reflect.DeepEqual(got, tt.want) { - t.Errorf("Read() = %v, want %v", got, tt.want) - } - }) - } -} |