pumuki 6.3.306 → 6.3.307
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -2795,6 +2795,24 @@ let text = "XCTAssertEqual(value, expected)"
|
|
|
2795
2795
|
assert.deepEqual(collectSwiftXCTestAssertionLines(ignored), []);
|
|
2796
2796
|
});
|
|
2797
2797
|
|
|
2798
|
+
test('hasSwiftXCTestAssertionUsage permite UI tests XCTest brownfield explicitos', () => {
|
|
2799
|
+
const uiTest = `
|
|
2800
|
+
import XCTest
|
|
2801
|
+
|
|
2802
|
+
final class BuyerCommerceUISmokeTests: XCTestCase {
|
|
2803
|
+
func testCheckoutFlow() {
|
|
2804
|
+
let app = XCUIApplication()
|
|
2805
|
+
app.launch()
|
|
2806
|
+
XCTAssertTrue(app.buttons["Continue"].exists)
|
|
2807
|
+
XCTAssertEqual(app.staticTexts["Title"].label, "RuralGo")
|
|
2808
|
+
}
|
|
2809
|
+
}
|
|
2810
|
+
`;
|
|
2811
|
+
|
|
2812
|
+
assert.equal(hasSwiftXCTestAssertionUsage(uiTest), false);
|
|
2813
|
+
assert.deepEqual(collectSwiftXCTestAssertionLines(uiTest), []);
|
|
2814
|
+
});
|
|
2815
|
+
|
|
2798
2816
|
test('hasSwiftXCTUnwrapUsage detecta XCTUnwrap real y evita strings', () => {
|
|
2799
2817
|
const source = `
|
|
2800
2818
|
let value = try XCTUnwrap(optionalValue)
|
|
@@ -2832,6 +2850,24 @@ let sample = "waitForExpectations(timeout: 1)"
|
|
|
2832
2850
|
assert.deepEqual(collectSwiftWaitForExpectationsLines(modernWait), []);
|
|
2833
2851
|
});
|
|
2834
2852
|
|
|
2853
|
+
test('hasSwiftWaitForExpectationsUsage permite waits en UI tests XCTest brownfield explicitos', () => {
|
|
2854
|
+
const uiWait = `
|
|
2855
|
+
import XCTest
|
|
2856
|
+
|
|
2857
|
+
final class BuyerCommerceUISmokeTests: XCTestCase {
|
|
2858
|
+
func testCheckoutFlow() {
|
|
2859
|
+
let app = XCUIApplication()
|
|
2860
|
+
app.launch()
|
|
2861
|
+
XCTAssertTrue(app.buttons["Continue"].waitForExistence(timeout: 5))
|
|
2862
|
+
wait(for: [expectation(description: "Loaded")], timeout: 1)
|
|
2863
|
+
}
|
|
2864
|
+
}
|
|
2865
|
+
`;
|
|
2866
|
+
|
|
2867
|
+
assert.equal(hasSwiftWaitForExpectationsUsage(uiWait), false);
|
|
2868
|
+
assert.deepEqual(collectSwiftWaitForExpectationsLines(uiWait), []);
|
|
2869
|
+
});
|
|
2870
|
+
|
|
2835
2871
|
test('hasSwiftLegacyExpectationDescriptionUsage detecta expectation(description:) sin flujo moderno', () => {
|
|
2836
2872
|
const legacyExpectation = `
|
|
2837
2873
|
let expectation = expectation(description: "Done")
|
|
@@ -2258,6 +2258,10 @@ export const collectSwiftQuickNimbleLines = (source: string): readonly number[]
|
|
|
2258
2258
|
};
|
|
2259
2259
|
|
|
2260
2260
|
export const hasSwiftXCTestAssertionUsage = (source: string): boolean => {
|
|
2261
|
+
if (hasSwiftLegacyXCTestUiOrPerformanceUsage(source)) {
|
|
2262
|
+
return false;
|
|
2263
|
+
}
|
|
2264
|
+
|
|
2261
2265
|
if (hasSwiftBrownfieldXCTestQualityPattern(source)) {
|
|
2262
2266
|
return false;
|
|
2263
2267
|
}
|
|
@@ -2304,6 +2308,10 @@ const hasSwiftConfirmationUsage = (source: string): boolean => {
|
|
|
2304
2308
|
};
|
|
2305
2309
|
|
|
2306
2310
|
export const collectSwiftWaitForExpectationsLines = (source: string): readonly number[] => {
|
|
2311
|
+
if (hasSwiftLegacyXCTestUiOrPerformanceUsage(source)) {
|
|
2312
|
+
return [];
|
|
2313
|
+
}
|
|
2314
|
+
|
|
2307
2315
|
return sortedUniqueLines([
|
|
2308
2316
|
...collectSwiftRegexLines(source, /\b(?:self\s*\.\s*)?wait\s*\(\s*for\s*:/),
|
|
2309
2317
|
...collectSwiftRegexLines(source, /\bwaitForExpectations\s*\(/),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pumuki",
|
|
3
|
-
"version": "6.3.
|
|
3
|
+
"version": "6.3.307",
|
|
4
4
|
"description": "Enterprise-grade AST Intelligence System with multi-platform support (iOS, Android, Backend, Frontend) and Feature-First + DDD + Clean Architecture enforcement. Includes dynamic violations API for intelligent querying.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|