Skip to content

Commit

Permalink
Merge pull request #46 from ba-st/45-improve-testing-standards
Browse files Browse the repository at this point in the history
Minor protocol corrections.
  • Loading branch information
gcotelli authored Jun 30, 2021
2 parents f6544f7 + 963245a commit c9119ee
Show file tree
Hide file tree
Showing 24 changed files with 1,070 additions and 551 deletions.
24 changes: 0 additions & 24 deletions .github/workflows/build.yml

This file was deleted.

23 changes: 23 additions & 0 deletions .github/workflows/loading-groups.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Group loading check

on: [push,pull_request,workflow_dispatch]

jobs:
group-loading:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
smalltalk: [ Pharo64-9.0, Pharo64-8.0 ]
load-spec: [ deployment, deployment-seaside-extensions, tests, tools, development, development-seaside-extensions ]
name: ${{ matrix.smalltalk }} + ${{ matrix.load-spec }}
steps:
- uses: actions/checkout@v2
- uses: hpi-swa/setup-smalltalkCI@v1
with:
smalltalk-image: ${{ matrix.smalltalk }}
- name: Load group in image
run: smalltalkci -s ${{ matrix.smalltalk }} .smalltalkci/.loading.${{ matrix.load-spec }}.ston
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
timeout-minutes: 15
14 changes: 14 additions & 0 deletions .github/workflows/markdown-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: Markdown Lint
on: [pull_request,workflow_dispatch]
jobs:
remark-lint:
name: runner / markdownlint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: markdownlint
uses: reviewdog/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
fail_on_error: true
reporter: github-pr-review
26 changes: 26 additions & 0 deletions .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Unit Tests

on: [push,pull_request,workflow_dispatch]

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
smalltalk: [ Pharo64-9.0, Pharo64-8.0, Pharo64-7.0, Pharo32-7.0 ]
name: ${{ matrix.smalltalk }}
steps:
- uses: actions/checkout@v2
- uses: hpi-swa/setup-smalltalkCI@v1
with:
smalltalk-image: ${{ matrix.smalltalk }}
- name: Load Image and Run Tests
run: smalltalkci -s ${{ matrix.smalltalk }} .smalltalkci/.unit-tests.ston
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
timeout-minutes: 15
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
with:
name: ${{matrix.os}}-${{matrix.smalltalk}}
token: ${{ secrets.CODECOV_TOKEN }}
13 changes: 13 additions & 0 deletions .smalltalkci/.loading.deployment-seaside-extensions.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#baseline : 'RenoirSt',
#directory : '../source',
#load : [ 'Deployment-Seaside-Extensions' ],
#platforms : [ #pharo ]
}
],
#testing : {
#failOnZeroTests : false
}
}
13 changes: 13 additions & 0 deletions .smalltalkci/.loading.deployment.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#baseline : 'RenoirSt',
#directory : '../source',
#load : [ 'Deployment' ],
#platforms : [ #pharo ]
}
],
#testing : {
#failOnZeroTests : false
}
}
16 changes: 16 additions & 0 deletions .smalltalkci/.loading.development-seaside-extensions.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#baseline : 'RenoirSt',
#directory : '../source',
#load : [ 'Development-Seaside-Extensions' ],
#platforms : [ #pharo ]
}
],
#testing : {
#coverage : {
#packages : [ 'RenoirSt*' ],
#format: #lcov
}
}
}
16 changes: 16 additions & 0 deletions .smalltalkci/.loading.development.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#baseline : 'RenoirSt',
#directory : '../source',
#load : [ 'Development' ],
#platforms : [ #pharo ]
}
],
#testing : {
#coverage : {
#packages : [ 'RenoirSt*' ],
#format: #lcov
}
}
}
16 changes: 16 additions & 0 deletions .smalltalkci/.loading.tests.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#baseline : 'RenoirSt',
#directory : '../source',
#load : [ 'Tests' ],
#platforms : [ #pharo ]
}
],
#testing : {
#coverage : {
#packages : [ 'RenoirSt*' ],
#format: #lcov
}
}
}
13 changes: 13 additions & 0 deletions .smalltalkci/.loading.tools.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#baseline : 'RenoirSt',
#directory : '../source',
#load : [ 'Tools' ],
#platforms : [ #pharo ]
}
],
#testing : {
#failOnZeroTests : false
}
}
5 changes: 3 additions & 2 deletions .smalltalk.ston → .smalltalkci/.unit-tests.ston
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,15 @@ SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#baseline : 'RenoirSt',
#directory : 'source',
#directory : '../source',
#load : [ 'CI' ],
#platforms : [ #pharo ]
}
],
#testing : {
#coverage : {
#packages : [ 'RenoirSt*' ]
#packages : [ 'RenoirSt*' ],
#format: #lcov
}
}
}
32 changes: 22 additions & 10 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,33 @@
Contributing
============
# Contributing

There's several ways to contribute to the project: reporting bugs, sending feedback, proposing ideas for new features, fixing or adding documentation, promoting the project, or even contributing code.
There's several ways to contribute to the project: reporting bugs, sending
feedback, proposing ideas for new features, fixing or adding documentation,
promoting the project, or even contributing code.

## Reporting issues

You can report issues [here](https://github.com/ba-st/RenoirSt/issues/new)

## Contributing Code

- This project is MIT licensed, so any code contribution MUST be under the same license.
- This project uses [Semantic Versioning](http://semver.org/), so keep it in mind when you make backwards-incompatible changes. If some backwards incompatible change is made the major version MUST be increased.
- The source code is hosted in this repository using the Tonel format in the `source` folder.
- The master branch contains the latest changes and should always be in a releasable state.
- This project uses [Semantic Versioning](http://semver.org/), so keep it in mind
when you make backwards-incompatible changes. If some backwards incompatible
change is made the major version MUST be increased.
- The source code is hosted in this repository using the Tonel format in the
`source` folder.
- The master branch contains the latest changes and should always be in a
releasable state.
- Feel free to send pull requests or fork the project.
- Code contributions without test cases have a lower probability of being merged into the main branch.
- Code contributions without test cases have a lower probability of being merged
into the main branch.

### Using Iceberg

1. Download a [Pharo Image and VM](https://get.pharo.org/64)
2. Clone the project or your fork using Iceberg
3. Open the Working Copy and using the contextual menu select `Metacello -> Install baseline...`
3. Open the Working Copy and using the contextual menu select
`Metacello -> Install baseline...`
4. Input `Development-Seaside-Extensions`
5. This will load the base code and the test cases
6. Create a new branch to host your code changes
Expand All @@ -29,8 +38,11 @@ You can report issues [here](https://github.com/ba-st/RenoirSt/issues/new)

## Contributing documentation

The project documentation is maintained in this repository in the `docs` folder and licensed under CC BY-SA 4.0. To contribute some documentation or improve the existing, feel free to create a branch or fork this repository, make your changes and send a pull request.
The project documentation is maintained in this repository in the `docs` folder
and licensed under CC BY-SA 4.0. To contribute some documentation or improve the
existing, feel free to create a branch or fork this repository, make your
changes and send a pull request.

### Useful References:
### Useful References

- [W3c Css Home](http://www.w3.org/Style/CSS/)
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2013-2020 Gabriel Cotelli, RenoirSt and Buenos Aires Smalltalk Contributors
Copyright (c) 2013-2021 Gabriel Cotelli, RenoirSt and Buenos Aires Smalltalk Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
53 changes: 30 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,38 @@
<p align="center"><img src="assets/logos/128x128.png">
<h1 align="center">RenoirSt</h1>
<p align="center">
A DSL enabling programmatic cascading style sheet generation for Pharo Smalltalk
<br>
<a href="docs/"><strong>Explore the docs »</strong></a>
<br>
<br>
<a href="https://github.com/ba-st/RenoirSt/issues/new?labels=Type%3A+Defect">Report a defect</a>
|
<a href="https://github.com/ba-st/RenoirSt/issues/new?labels=Type%3A+Feature">Request feature</a>
</p>
</p>

![GitHub release](https://img.shields.io/github/release/ba-st/RenoirSt.svg)
[![Build Status](https://github.com/ba-st/RenoirSt/workflows/Build/badge.svg?branch=release-candidate)](https://github.com/ba-st/RenoirSt/actions?query=workflow%3ABuild)
# RenoirSt

![Logo](assets/logos/128x128.png)

A DSL enabling programmatic cascading style sheet generation for Pharo Smalltalk

[![Unit Tests](https://github.com/ba-st/RenoirSt/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/ba-st/RenoirSt/actions/workflows/unit-tests.yml)
[![Coverage Status](https://codecov.io/github/ba-st/RenoirSt/coverage.svg?branch=release-candidate)](https://codecov.io/gh/ba-st/RenoirSt/branch/release-candidate)
[![Group loading check](https://github.com/ba-st/RenoirSt/actions/workflows/loading-groups.yml/badge.svg)](https://github.com/ba-st/RenoirSt/actions/workflows/loading-groups.yml)
[![Markdown Lint](https://github.com/ba-st/RenoirSt/actions/workflows/markdown-lint.yml/badge.svg)](https://github.com/ba-st/RenoirSt/actions/workflows/markdown-lint.yml)

[![GitHub release](https://img.shields.io/github/release/ba-st/RenoirSt.svg)](https://github.com/ba-st/RenoirSt/releases/latest)
[![Pharo 6.1](https://img.shields.io/badge/Pharo-6.1-informational)](https://pharo.org)
[![Pharo 7.0](https://img.shields.io/badge/Pharo-7.0-informational)](https://pharo.org)
[![Pharo 8.0](https://img.shields.io/badge/Pharo-8.0-informational)](https://pharo.org)

Quick links

- [**Explore the docs**](docs/)
- [Report a defect](https://github.com/ba-st/RenoirSt/issues/new?labels=Type%3A+Defect)
- [Request a feature](https://github.com/ba-st/RenoirSt/issues/new?labels=Type%3A+Feature)

## Goals

- Improve CSS integration with existing Web Frameworks
- Write & refactor in Smalltalk, deploy to CSS

### Benefits:
### Benefits

- Keep in sync your code changes with the changes in the CSS
- Use your favorite browsing and refactoring tools inside the same Pharo image to handle CSS
- Use your favorite browsing and refactoring tools inside the same Pharo image
to handle CSS

## License

- The code is licensed under [MIT](LICENSE).
- The documentation is licensed under [CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/).

Expand All @@ -43,22 +48,24 @@ Now you can try the Hello World:

```smalltalk
CascadingStyleSheetBuilder new
declareRuleSetFor: [:selector | selector body before]
with: [:style | style content: '"Hello World"'];
build
declareRuleSetFor: [:selector | selector body before]
with: [:style | style content: '"Hello World"'];
build
```

you should see something like this:

```css
body::before
{
content: "Hello World";
content: "Hello World";
}
```

## Installation

To load the project in a Pharo image, or declare it as a dependency of your own project follow this [instructions](docs/Installation.md).
To load the project in a Pharo image, or declare it as a dependency of your own
project follow this [instructions](docs/Installation.md).

## Contributing

Expand Down
Loading

0 comments on commit c9119ee

Please sign in to comment.