mirror of
https://github.com/morgan9e/macos-stats
synced 2026-04-14 16:24:30 +09:00
feat: added tests for RAM process parser
This commit is contained in:
22
Tests/Info.plist
Normal file
22
Tests/Info.plist
Normal file
@@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
</dict>
|
||||
</plist>
|
||||
61
Tests/RAM.swift
Normal file
61
Tests/RAM.swift
Normal file
@@ -0,0 +1,61 @@
|
||||
//
|
||||
// RAM.swift
|
||||
// Tests
|
||||
//
|
||||
// Created by Serhiy Mytrovtsiy on 16/04/2022.
|
||||
// Using Swift 5.0.
|
||||
// Running on macOS 10.15.
|
||||
//
|
||||
// Copyright © 2022 Serhiy Mytrovtsiy. All rights reserved.
|
||||
//
|
||||
|
||||
import XCTest
|
||||
import RAM
|
||||
|
||||
class RAM: XCTestCase {
|
||||
func testProcessReader_parseProcess() throws {
|
||||
var process = ProcessReader.parseProcess("3127 lldb-rpc-server 611M")
|
||||
XCTAssertEqual(process.pid, 3127)
|
||||
XCTAssertEqual(process.command, "lldb-rpc-server")
|
||||
XCTAssertEqual(process.usage, 611 * Double(1024 * 1024))
|
||||
|
||||
process = ProcessReader.parseProcess("257 WindowServer 210M")
|
||||
XCTAssertEqual(process.pid, 257)
|
||||
XCTAssertEqual(process.command, "WindowServer")
|
||||
XCTAssertEqual(process.usage, 210 * Double(1024 * 1024))
|
||||
|
||||
process = ProcessReader.parseProcess("7752 phpstorm 1819M")
|
||||
XCTAssertEqual(process.pid, 7752)
|
||||
XCTAssertEqual(process.command, "phpstorm")
|
||||
XCTAssertEqual(process.usage, 1819 * Double(1024 * 1024))
|
||||
|
||||
process = ProcessReader.parseProcess("359 NotificationCent 62M")
|
||||
XCTAssertEqual(process.pid, 359)
|
||||
XCTAssertEqual(process.command, "NotificationCe")
|
||||
XCTAssertEqual(process.usage, 62 * Double(1024 * 1024))
|
||||
|
||||
process = ProcessReader.parseProcess("623 SafariCloudHisto 1608K")
|
||||
XCTAssertEqual(process.pid, 623)
|
||||
XCTAssertEqual(process.command, "SafariCloudHisto")
|
||||
XCTAssertEqual(process.usage, (1608/1024) * Double(1024 * 1024))
|
||||
|
||||
process = ProcessReader.parseProcess("174 WindowServer 1442M+ ")
|
||||
XCTAssertEqual(process.pid, 174)
|
||||
XCTAssertEqual(process.command, "WindowServer")
|
||||
XCTAssertEqual(process.usage, 1442 * Double(1024 * 1024))
|
||||
|
||||
process = ProcessReader.parseProcess("329 Finder 488M+ ")
|
||||
XCTAssertEqual(process.pid, 329)
|
||||
XCTAssertEqual(process.command, "Finder")
|
||||
XCTAssertEqual(process.usage, 488 * Double(1024 * 1024))
|
||||
}
|
||||
|
||||
func testReplacePID() throws {
|
||||
let raw = "0 kernel_task 270M "
|
||||
let process = ProcessReader.parseProcess(raw)
|
||||
|
||||
XCTAssertEqual(process.pid, 0)
|
||||
XCTAssertEqual(process.command, "kernel_task")
|
||||
XCTAssertEqual(process.usage, 270 * Double(1024 * 1024))
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user