Пример #1
0
void testTokens(const String& string, const CSSParserToken& token1, const CSSParserToken& token2 = CSSParserToken(EOFToken), const CSSParserToken& token3 = CSSParserToken(EOFToken))
{
    Vector<CSSParserToken> expectedTokens;
    expectedTokens.append(token1);
    if (token2.type() != EOFToken) {
        expectedTokens.append(token2);
        if (token3.type() != EOFToken)
            expectedTokens.append(token3);
    }

    Vector<CSSParserToken> actualTokens;
    CSSTokenizer::tokenize(string, actualTokens);

    ASSERT_EQ(expectedTokens.size(), actualTokens.size());
    for (size_t i = 0; i < expectedTokens.size(); ++i)
        compareTokens(expectedTokens[i], actualTokens[i]);
}
void testTokens(const String& string, const CSSParserToken& token1, const CSSParserToken& token2 = CSSParserToken(EOFToken), const CSSParserToken& token3 = CSSParserToken(EOFToken))
{
    Vector<CSSParserToken> expectedTokens;
    expectedTokens.append(token1);
    if (token2.type() != EOFToken) {
        expectedTokens.append(token2);
        if (token3.type() != EOFToken)
            expectedTokens.append(token3);
    }

    CSSParserTokenRange expected(expectedTokens);

    CSSTokenizer::Scope actualScope(string);
    CSSParserTokenRange actual = actualScope.tokenRange();

    // Just check that serialization doesn't hit any asserts
    actual.serialize();

    while (!expected.atEnd() || !actual.atEnd())
        compareTokens(expected.consume(), actual.consume());
}
Пример #3
0
static Boolean compareVV(binaryExpr *be,int k,  VTDNav *vn, int j,opType op){
	int i = compareTokens(vn,k, vn, j);
	switch(i){

			case 1:
				if (op == OP_NE || op==OP_GE  || op == OP_GT ){
					return TRUE;
				}
				break;
			case 0:
				if (op==OP_EQ || op == OP_LE || op == OP_GE ){
					return TRUE;
				}
				break;
			case -1:
				if (op== OP_NE || op == OP_LT || op == OP_LE){
					return TRUE;
				}
	}
	return FALSE;
}