enso/test/Tests
Hubert Plociniczak d463a43633
Resolve fully qualified names (#4056)
Added a separate pass, `FullyQualifiedNames`, that partially resolves fully qualified names. The pass only resolves the library part of the name and replaces it with a reference to the `Main` module.

There are 2 scenarios that could be potentially:
1) the code uses a fully qualified name to a component that has been
parsed/compiled
2) the code uses a fully qualified name to a component that has **not** be
imported

For the former case, it is sufficient to just check `PackageRepository` for the presence of the library name.
In the latter we have to ensure that the library has been already parsed and all its imports are resolved. That would require the reference to `Compiler` in the `FullyQualifiedNames` pass, which could then trigger a full compilation for missing library. Since it has some undesired consequences (tracking of dependencies becomes rather complex) we decided to exclude that scenario until it is really needed.

# Important Notes
With this change, one can use a fully qualified name directly.
e.g.
```
import Standard.Base
main =
Standard.Base.IO.println "Hello world!"
```
2023-01-18 20:19:36 +00:00
..
data Load the File_Format types via a ServiceLoader (#3813) 2022-10-24 09:55:18 +00:00
src Resolve fully qualified names (#4056) 2023-01-18 20:19:36 +00:00
package.yaml Import syntax including namespace (#1806) 2021-06-24 12:42:24 +02:00
README.md Simple HTTPBin to replace Go equivalent (#3887) 2022-11-18 11:27:27 +00:00

This is a set of tests for the Base library for Enso.

The run test suite for the HTTP component requires an active httbin server on the localhost. If it is present, the port it listens to should be provided by setting the ENSO_HTTP_TEST_HTTPBIN_URL environment variable to a value like http://localhost:8080. The URL may contain a trailing slash.

tools/simple-httpbin provides a simple implementation of httpbin server. See its README for instructions on how to run it.