Android Open Source - android-cassowary-layout Infix To Post Fix Test






From Project

Back to project page android-cassowary-layout.

License

The source code is released under:

Apache License

If you think the Android project android-cassowary-layout listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (C) 2014 Agens AS//from   w w  w. j  ava2s  .  com
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */


package no.agens.cassowarylayout.util;

import junit.framework.TestCase;

import java.util.Arrays;
import java.util.List;

import no.agens.cassowarylayout.ConstraintParser;
import no.agens.cassowarylayout.ConstraintParser;


/**
 * Created by alex on 26/09/2014.
 */
public class InfixToPostFixTest extends TestCase {


    public void testInfixToPostFix() {

        String[] infix = {"3", "+", "4", "*", "2", "/", "(", "1", "-", "5", ")", "^", "2", "^", "3"};

        List<String> postFix = ConstraintParser.infixToPostfix(Arrays.asList(infix));

        int index = 0;

        assertEquals(postFix.get(index++), "3");
        assertEquals(postFix.get(index++), "4");
        assertEquals(postFix.get(index++), "2");
        assertEquals(postFix.get(index++), "*");
        assertEquals(postFix.get(index++), "1");
        assertEquals(postFix.get(index++), "5");
        assertEquals(postFix.get(index++), "-");
        assertEquals(postFix.get(index++), "2");
        assertEquals(postFix.get(index++), "3");
        assertEquals(postFix.get(index++), "^");
        assertEquals(postFix.get(index++), "^");
        assertEquals(postFix.get(index++), "/");
        assertEquals(postFix.get(index++), "+");
    }

    public void testInfixToPostFix1PlusTwoTimes3() {

        String[] infix = {"1", "+", "2", "*", "3" };

        List<String> postFix = ConstraintParser.infixToPostfix(Arrays.asList(infix));

        int index = 0;

        assertEquals(postFix.get(index++), "1");
        assertEquals(postFix.get(index++), "2");
        assertEquals(postFix.get(index++), "3");
        assertEquals(postFix.get(index++), "*");
        assertEquals(postFix.get(index++), "+");

    }

    public void testInfixToPostFix1PlusTwoTimes3Braces() {

        String[] infix = {"(", "100", "+", "2", ")","*", "3" };

        List<String> postFix = ConstraintParser.infixToPostfix(Arrays.asList(infix));

        int index = 0;

        assertEquals(postFix.get(index++), "100");
        assertEquals(postFix.get(index++), "2");
        assertEquals(postFix.get(index++), "+");
        assertEquals(postFix.get(index++), "3");
        assertEquals(postFix.get(index++), "*");


    }

    public void testRosettaCodeTestCase() {
        String[] infix = {"3", "+", "4", "*", "2","/", "(", "1", "-", "5", ")", "^", "2", "^", "3" };

        List<String> postFix = ConstraintParser.infixToPostfix(Arrays.asList(infix));

        int index = 0;

        assertEquals(postFix.get(index++), "3");
        assertEquals(postFix.get(index++), "4");
        assertEquals(postFix.get(index++), "2");
        assertEquals(postFix.get(index++), "*");
        assertEquals(postFix.get(index++), "1");
        assertEquals(postFix.get(index++), "5");
        assertEquals(postFix.get(index++), "-");
        assertEquals(postFix.get(index++), "2");
        assertEquals(postFix.get(index++), "3");
        assertEquals(postFix.get(index++), "^");
        assertEquals(postFix.get(index++), "^");
        assertEquals(postFix.get(index++), "/");
        assertEquals(postFix.get(index++), "+");

    }

}




Java Source Code List

no.agens.cassowarylayout.ApplicationTest.java
no.agens.cassowarylayout.CassowaryLayout.java
no.agens.cassowarylayout.CassowaryModel.java
no.agens.cassowarylayout.ChildNode.java
no.agens.cassowarylayout.ConstraintParser.java
no.agens.cassowarylayout.ContainerNode.java
no.agens.cassowarylayout.DefaultViewIdResolver.java
no.agens.cassowarylayout.Node.java
no.agens.cassowarylayout.ViewIdResolver.java
no.agens.cassowarylayout.util.CassowaryUtil.java
no.agens.cassowarylayout.util.DimensionParserTest.java
no.agens.cassowarylayout.util.DimensionParser.java
no.agens.cassowarylayout.util.ExpressionTokenizerTest.java
no.agens.cassowarylayout.util.InfixToPostFixTest.java
no.agens.cassowarylayout.util.MeasureSpecUtils.java
no.agens.cassowarylayout.util.TimerUtil.java
no.agens.cassowarylayoutdemo.ApplicationTest.java
no.agens.cassowarylayoutdemo.CassowaryLayoutInLinearLayoutActivity.java
no.agens.cassowarylayoutdemo.CassowaryLayoutMatchParentActivity.java
no.agens.cassowarylayoutdemo.CassowaryLayoutWrapContentActivity.java
no.agens.cassowarylayoutdemo.CassowaryLayoutsInCassowaryLayoutActivity.java
no.agens.cassowarylayoutdemo.CassowaryLayoutsInListViewActivity.java
no.agens.cassowarylayoutdemo.CenterInParentActivity.java
no.agens.cassowarylayoutdemo.CenterViewRelativeToSiblingActivity.java
no.agens.cassowarylayoutdemo.ChessBoardActivity.java
no.agens.cassowarylayoutdemo.DynamicWidthActivity.java
no.agens.cassowarylayoutdemo.ExampleMenuActivity.java
no.agens.cassowarylayoutdemo.FixedAspectRatioDemoActivity.java
no.agens.cassowarylayoutdemo.IntrinsicHeightTextInWrapContentContainerActivity.java
no.agens.cassowarylayoutdemo.LayoutParamsSwitcherActivity.java
no.agens.cassowarylayoutdemo.LinearLayoutInCassowaryLayoutActivity.java
no.agens.cassowarylayoutdemo.ParallaxScrollingActivity.java
no.agens.cassowarylayoutdemo.PreSetupTestActivity.java
no.agens.cassowarylayoutdemo.ProgrammaticDemoActivity.java
no.agens.cassowarylayoutdemo.XmlLayoutDemoActivity.java
no.agens.cassowarylayoutdemo.util.EditRatioDialog.java