A stock, at its most basic, is worth exactly what someone else will pay to buy it right now (or in the near future), just like anything else of value. However, what someone's willing to pay for it is typically based on what the person can get from it.
There are a couple of ways to value a stock. The first way is on expected earnings per share, most of would normally (but not always) be paid in dividends. This is a metric that can be calculated based on the most recently reported earnings, and can be estimated based on news about the company or the industry its in (or those of suppliers, likely buyers, etc) to predict future earnings. Let's say the stock price is exactly $100 right now, and you buy one share. In one quarter, the company is expected to pay out $2 per share in dividends. That is a 2% ROI realized in 3 months. If you took that $2 and blew it on... coffee, maybe, or you stuffed it in your mattress, you'd realize a total gain of $8 in one year, or in ROI terms an annual rate of 8%. However, if you reinvested the money, you'd be making money on that money, and would have a little more. You can calculate the exact percentage using the "future value" formula. Conversely, if you wanted to know what you should pay, given this level of earnings per share, to realize a given rate of return, you can use the "present value" formula. If you wanted a 9% return on your money, you'd pay less for the stock than its current value, all other things being equal. Vice-versa if you were happy with a lesser rate of return. The current rate of return based on stock price and current earnings is what the market as a whole is willing to tolerate. This is how bonds are valued, based on a desired rate of return by the market, and it also works for stocks, with the caveat that the dividends, and what you'll get back at the "end", are no longer constant as they are with a bond.
Now, in your case, the company doesn't pay dividends. Ever. It simply retains all the earnings it's ever made, reinvesting them into doing new things or more things. By the above method, the rate of return from dividends alone is zero, and so the future value of your investment is whatever you paid for it. People don't like it when the best case for their money is that it just sits there.
However, there's another way to think of the stock's value, which is it's more core definition; a share of the company itself. If the company is profitable, and keeps all this profit, then a share of the company equals, in part, a share of that retained earnings. This is very simplistic, but if the company's assets are worth 1 billion dollars, and it has one hundred million shares of stock, each share of stock is worth $10, because that's the value of that fraction of the company as divided up among all outstanding shares. If the company then reports earnings of $100 million, the value of the company is now 1.1 billion, and its stock should go up to $11 per share, because that's the new value of one ten-millionth of the company's value. Your ROI on this stock is $1, in whatever time period the reporting happens (typically quarterly, giving this stock a roughly 4% APY).
This is a totally valid way to value stocks and to shop for them; it's very similar to how commodities, for instance gold, are bought and sold. Gold never pays you dividends. Doesn't give you voting rights either. Its value at any given time is solely what someone else will pay to have it. That's just fine with a lot of people right now; gold's currently trading at around $1,700 an ounce, and it's been the biggest moneymaker in our economy since the bottom fell out of the housing market (if you'd bought gold in 2008, you would have more than doubled your money in 4 years; I challenge you to find anything else that's done nearly as well over the same time).
In reality, a combination of both of these valuation methods are used to value stocks. If a stock pays dividends, then each person gets money now, but because there's less retained earnings and thus less change in the total asset value of the company, the actual share price doesn't move (much). If a stock doesn't pay dividends, then people only get money when they cash out the actual stock, but if the company is profitable (Apple, BH, etc) then one share should grow in value as the value of that small fraction of the company continues to grow. Both of these are sources of ROI, and both are seen in a company that will both retain some earnings and pay out dividends on the rest.