1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#+build windows
package test_core_sys_windows
import "base:intrinsics"
import win32 "core:sys/windows"
import "core:testing"
@(test)
lcid_to_local :: proc(t: ^testing.T) {
lcid: win32.LCID = win32.MAKELANGID(0x09, win32.SUBLANG_DEFAULT)
wname: [512]win32.WCHAR
cc := win32.LCIDToLocaleName(lcid, &wname[0], len(wname) - 1, 0)
testing.expectf(t, cc == 6, "%#x (should be: %#x)", u32(cc), 6)
if cc == 0 {return}
str, err := win32.wstring_to_utf8(win32.wstring(&wname[0]), int(cc))
testing.expectf(t, err == .None, "%v (should be: %x)", err, 0)
exp :: "en-US"
testing.expectf(t, str == exp, "%v (should be: %v)", str, exp)
cc2 := win32.LocaleNameToLCID(exp, 0)
testing.expectf(t, cc2 == 0x0409, "%#x (should be: %#x)", u32(cc2), 0x0409)
//fmt.printfln("%0X", lcid)
}
|