diff --git a/Sources/GameWidget/Foundations/Group.swift b/Sources/GameWidget/Foundations/Group.swift index 1d93ce1..a0364d0 100644 --- a/Sources/GameWidget/Foundations/Group.swift +++ b/Sources/GameWidget/Foundations/Group.swift @@ -159,6 +159,12 @@ public struct Node: NodeWidget, WidgetList { public func node() -> SKNode { let result = SKNode() + + result.position = self.position + result.zRotation = self.zRotation + result.xScale = self.xScale + result.yScale = self.yScale + for i in self.content.widgetNodes() { result.addChild(i) } diff --git a/Tests/GameWidgetTests/GameWidgetTests.swift b/Tests/GameWidgetTests/GameWidgetTests.swift index dd778c0..f0faa95 100644 --- a/Tests/GameWidgetTests/GameWidgetTests.swift +++ b/Tests/GameWidgetTests/GameWidgetTests.swift @@ -1,8 +1,20 @@ import XCTest @testable import GameWidget -final class GameWidgetTests: XCTestCase { - func testExample() throws { - +final class NodeTests: XCTestCase { + func testModifiers() throws { + let node = Node { + Button(.init("test")) + } + .position(CGPoint(x: 1, y: 1)) + .scale(2) + .zRotation(2) + .node() + + XCTAssertEqual(node.position, CGPoint(x: 1, y: 1)) + XCTAssertEqual(node.xScale, 2) + XCTAssertEqual(node.yScale, 2) + XCTAssertEqual(node.zRotation, 2) + XCTAssertEqual(node.children.count, 1) } }